java
盛装吾步
这个作者很懒,什么都没留下…
展开
-
Java多线程——FutureTask+ExecutorService
1.Java并发编程:Callable、Future和FutureTask创建线程的2种方式,一种是直接继承Thread,另外一种就是实现Runnable接口。这2种方式都有一个缺陷就是:在执行完任务之后无法获取执行结果。如果需要获取执行结果,就必须通过共享变量或者使用线程通信的方式来达到效果,这样使用起来就比较麻烦。而自从Java 1.5开始,就提供了Callable和Futur...原创 2019-10-30 18:41:32 · 1078 阅读 · 0 评论 -
java try后面括号的作用
Java7新特性,支持使用try后面跟随()括号管理释放资源例如通常使用try代码块try { fis = new FileInputStream(source); fos = new FileOutputStream(target); byte[] buf = new byte[8192]; int i;原创 2017-11-29 17:50:30 · 7985 阅读 · 0 评论 -
Java IO流操作汇总: inputStream 和 outputStream
Java IO通过Stream(流)来实现。关于流,可以理解为是一种“数据的管道”。管道中流动的东西可以是基于字节,也可以是基于字符的等。1、在java中stream代表一种数据流(源),javaio的底层数据元,---(想像成两头都有水龙头的输水管)2、任何有能力产生数据流(源)的javaio对象就可以看作是一个InputStream对象既然它能产生出数据,我们就可以将数据取出,ja原创 2017-12-08 16:42:49 · 1669 阅读 · 0 评论 -
An error occurred while collecting items to be installed session context was:(profile=epp.package.je
这个解决方法也适用于:1.安装插件报错,找不到某jar包;2.安装插件报错An error occurred while collecting items to be installed session context was:(profile=epp.package.je..。出现错误的原因p2有它的一个垃圾回收机制,之前删除的JAR包转载 2017-11-16 15:19:12 · 1031 阅读 · 2 评论 -
RPC 原理
RPC(Remote Procedure Call Protocol)的主要功能目标是让构建分布式计算(应用)更容易,在提供强大的远程调用能力时不损失本地调用的语义简洁性。1 如何调用他人的远程服务?由于各服务部署在不同机器,服务间的调用免不了网络通信过程,服务消费方每调用一个服务都要写一坨网络通信相关的代码,不仅复杂而且极易出错。如果有一种方式能让我们像调用本原创 2017-11-14 18:25:30 · 714 阅读 · 0 评论 -
Java内部类总结
内部类是指在一个外部类的内部再定义一个类。类名不需要和文件夹相同。*内部类可以是静态static的,也可用public,default,protected和private修饰。(而外部顶级类即类名和文件名相同的只能使用public和default)。首先讨论一下内部类的必要性 1.完善多重继承C++作为比较早期的面向对象编程语言,摸着石头过河,不幸的当了炮灰原创 2017-12-18 14:04:59 · 801 阅读 · 0 评论 -
基于TCP协议的Socket通信实例(JAVA)
1、首先先来看下基于TCP协议Socket服务端和客户端的通信模型: Socket通信步骤:(简单分为4步)1.建立服务端ServerSocket和客户端Socket2.打开连接到Socket的输出输入流3.按照协议进行读写操作4.关闭相对应的资源 2、相关联的API: 1.首先先来看下ServerSocket转载 2017-12-19 10:32:46 · 20040 阅读 · 1 评论 -
maven入门实战
什么是maven? Maven是一个用于项目构建的工具,通过它便捷的管理项目的生命周期。即项目的jar包依赖,开发,测试,发布打包。 下面我自己总结一下它的几个特点,看了这些特点,也许对maven有更多的了解。 1 jar包依赖 这个也许会maven最突出的特点了使用maven不需要上网单独下载jar包,只需要在配置文件pom.xml中配置jar包的依赖关系原创 2016-08-25 10:21:29 · 853 阅读 · 0 评论 -
substring
Java中字符串中子串的查找共有四种方法,如下:1、int indexOf(String str) :返回第一次出现的指定子字符串在此字符串中的索引。 2、int indexOf(String str, int startIndex):从指定的索引处开始,返回第一次出现的指定子字符串在此字符串中的索引。 3、int lastIndexOf(String str) :返回在此字符串中最右原创 2016-11-10 15:18:29 · 719 阅读 · 0 评论 -
Python快速入门
假设你希望学习Python这门语言,却苦于找不到一个简短而全面的入门教程。那么本教程将花费十分钟的时间带你走入Python的大门。本文的内容介于教程(Toturial)和速查手册(CheatSheet)之间,因此只会包含一些基本概念。很显然,如果你希望真正学好一门语言,你还是需要亲自动手实践的。在此,我会假定你已经有了一定的编程基础,因此我会跳过大部分非Python语言的相关内容。本文将高亮显示重转载 2016-08-18 09:33:31 · 824 阅读 · 0 评论 -
Java实现“推荐注册,获得奖励”算法
应用场景:推荐新用户注册A会员推荐B注册,即赠送A会员100积分,B会员推荐C会员注册,赠送A会员50积分、B会员各100积分,依次类推,只要A发展的会员继续发展下面的会员,A都可以获增相应的积分。 package com.enn.test;import java.util.ArrayList;import java.util.HashMap;import java.util.List;...原创 2018-03-05 18:29:57 · 3265 阅读 · 0 评论 -
python实现Phoenix批量导入数据
官网文档:Phoenix provides two methods for bulk loading data into Phoenix tables:· Single-threaded client loading tool for CSV formatted data via the psql command· MapReduce-based bulk load tool for C...原创 2018-11-14 17:18:13 · 2509 阅读 · 0 评论 -
Python Excel 导出 + 发送邮件
一、依赖模块1.excel导出依赖xlwt或者xlsxwriterxlwt只能支持65535行,较大数据量可以选用xlsxwriter;python 字符默认是ascii编码,导出时转化为udf-8格式2.发送邮件依赖smtplib发送附件时,必须用starttls(),保证安全性 二、代码# -*- coding: UTF-8 -*-import sysi...原创 2018-12-03 20:44:31 · 2838 阅读 · 0 评论 -
python爬取淘宝商品信息
本文实现了用python爬取淘宝信息的功能,主要涉及访问网页、正则匹配、json格式化等技术。# -*- coding: utf-8 -*import requests# import bs4import reimport jsondef open(keywords, page): headers = { "User-Agent": "Mozilla/...原创 2018-12-22 14:21:46 · 1488 阅读 · 0 评论 -
python 获取环境变量
用Python Shell设置或获取环境变量的方法:一、设置系统环境变量1、os.environ['环境变量名称']='环境变量值' #其中key和value均为string类型2、os.putenv('环境变量名称', '环境变量值')二、获取系统环境变量1、os.environ['环境变量名称']2、os.getenv('环境变量名称')环境变量vi /etc/pr...原创 2019-01-15 16:07:22 · 17557 阅读 · 0 评论 -
Eclipse连接Hadoop2.7.3 HA 集群配置及测试
1. 安装Hadoop2.7.3 6节点集群并HAnn:bi-hdp0nn:bi-hdp32. 编译hadoop-eclipse-plugin-2.7.3基于hadoop2x-eclipse-pluginhttps://github.com/winghc/hadoop2x-eclipse-plugin3.配置插件打原创 2017-11-10 09:45:09 · 1013 阅读 · 0 评论 -
Java内存管理
运行时数据区域 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则是依赖用户线程的启动和结束而建立和销毁。根据《Java虚拟机规范(第2版)》的规定,Java虚拟机所管理的内存将会包括以下几个运行时数据区域,如下图所示:原创 2017-10-09 15:27:25 · 850 阅读 · 0 评论 -
Set,List,Map,Vector,ArrayList的区别
Set,List,Map,Vector,ArrayList的区别JAVA的容器---List,Map,Set Collection ├List │├LinkedList │├ArrayList │└Vector │ └Stack └Set Map ├Hashtable ├HashMap └WeakHashMapCollection接口转载 2016-08-30 15:06:33 · 733 阅读 · 0 评论 -
Please initialize the log4j system properly报错解决办法
log4j:WARN Please initialize the log4j system properly.log4j:WARN No appenders could be found for logger (org.apache.commons.beanutils.ConvertUtils).解决办法:在D:\BigData\aJunit\target\classes路径,原创 2016-08-30 16:12:24 · 39520 阅读 · 1 评论 -
Java enum的用法详解
用法一:常量在JDK1.5 之前,我们定义常量都是: public static fianl.... 。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。public enum Color { RED, GREEN, BLANK, YELLOW } 用法二:switchJDK1.6之前的switch语转载 2016-08-31 09:44:14 · 710 阅读 · 0 评论 -
深入理解Java的接口和抽象类
深入理解Java的接口和抽象类 对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。今天我们就一起来学习一下Java中的接口和抽象类。下面是本文的目录大纲: 一.抽象类 二.接口 三.抽象类和接口原创 2016-08-23 18:50:51 · 686 阅读 · 0 评论 -
log4j.properties
I can’t find many log4j.properties examples, here are a few log4j.properties examples that are used in my project, just for sharing.1. Output to ConsoleAll logging will be redirected to yo原创 2016-10-12 10:14:43 · 699 阅读 · 0 评论 -
static应用总结(java版)
static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。 被static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。只要这个类被加载,Java虚拟机就能根据类名在运行时数据区的方法区内定找到他们。因此,static对象可以在它的任何对象创建之前访问,原创 2016-12-02 20:16:32 · 701 阅读 · 0 评论 -
Java序列化
Java序列化与反序列化是什么?为什么需要序列化与反序列化?如何实现Java序列化与反序列化?本文围绕这些问题进行了探讨。 1.Java序列化与反序列化 Java序列化是指把Java对象转换为字节序列的过程;而Java反序列化是指把字节序列恢复为Java对象的过程。 2.为什么需要序列化与反序列化 我们知道,当两个进程进行远程通信时,可以相互发送各种类型的数据,包括原创 2016-12-21 14:21:47 · 651 阅读 · 0 评论 -
collection接口
Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)。一些Collection允许相同的元素而另一些不行。一些能排序而另一些不行。Java SDK不提供直接继承自Collection的类,Java SDK提供的类都是继承自Collection的“子接口”如List和Set。Collection原创 2016-12-21 16:23:11 · 2088 阅读 · 0 评论 -
java读文件写文件
java中io流一直是一个令人头疼的东西,主要是各种流,各种缓冲器太多,不好记忆,所以感觉学起来很费劲,选择起来也比较烦恼。本文主要针对java的io流读取数据使用io流读取文件和向文件中写数据,并根据个人经验讲解应该怎么选择和使用。 需要的知识点:1.字节流和字符流选择字节流:字节流读取的时候,读到一个字节就返回一个字节; 主要用于读取图片,MP3,AV原创 2016-12-29 17:08:28 · 939 阅读 · 0 评论 -
多线程同步
线程的同步是保证多线程安全访问竞争资源的一种手段。线程的同步是Java多线程编程的难点,往往开发者搞不清楚什么是竞争资源、什么时候需要考虑同步,怎么同步等等问题,当然,这些问题没有很明确的答案,但有些原则问题需要考虑,是否有竞争资源被同时改动的问题? 对于同步,在具体的Java代码中需要完成一下两个操作:把竞争访问的资源标识为private;同步哪些修改变量原创 2017-02-13 19:50:38 · 646 阅读 · 0 评论 -
判断多线程是否全部执行完毕
在使用多线程的时候有时候我们会使用 java.util.concurrent.Executors的线程池,当多个线程异步执行的时候,我们往往不好判断是否线程池中所有的子线程都已经执行完毕,但有时候这种判断却很有用,例如我有个方法的功能是往一个文件异步地写入内容,我需要在所有的子线程写入完毕后在文件末尾写“---END---”及关闭文件流等,这个时候我就需要某个标志位可以告诉我是否线程池中所有的子线原创 2017-02-13 20:30:59 · 5465 阅读 · 0 评论 -
UML类图详解
传统应用程序设计中所说的依赖一般指“类之间的关系”,那先让我们复习一下类之间的关系: 泛化:表示类与类之间的继承关系、接口与接口之间的继承关系; 实现:表示类对接口的实现; 依赖:当类与类之间有使用关系时就属于依赖关系,不同于关联关系,依赖不具有“拥有关系”,而是一种“相识关系”,只在某个特定地方(比如某个方法体内)才有关系。 关联:原创 2017-01-24 09:51:43 · 676 阅读 · 0 评论 -
Map总结
学完了Map的全部内容,我们再回头开开Map的框架图。 第1部分 Map概括Map 是“键值对”映射的抽象接口。AbstractMap 实现了Map中的绝大部分函数接口。它减少了“Map的实现类”的重复编码。SortedMap 有序的“键值对”映射接口。NavigableMap 是继承于SortedMap的,支持导航函数的接口。HashMap,原创 2017-03-07 10:11:02 · 711 阅读 · 0 评论 -
排序算法
排序大的分类可以分为两种:内排序和外排序。在排序过程中,全部记录存放在内存,则称为内排序,如果排序过程中需要使用外存,则称为外排序。下面讲的排序都是属于内排序。 内排序有可以分为以下几类: (1)、插入排序:直接插入排序、二分法插入排序、希尔排序。 (2)、选择排序:简单选择排序、堆排序。 (3)、交换排序:冒泡排序、快速排序。 (4)、归并排序 (5)、基数排原创 2017-09-27 18:34:34 · 681 阅读 · 0 评论 -
java中HashMap详解
HashMap 和 HashSet 是 Java Collection Framework 的两个重要成员,其中 HashMap 是 Map 接口的常用实现类,HashSet 是 Set 接口的常用实现类。虽然 HashMap 和 HashSet 实现的接口规范不同,但它们底层的 Hash 存储机制完全一样,甚至 HashSet 本身就采用 HashMap 来实现的。 通过 HashMap转载 2016-08-18 09:20:08 · 735 阅读 · 0 评论