Java
文章平均质量分 65
韦轩
软件工程
展开
-
Java tcp socket 通信
1.通信模型如下原创 2014-10-27 19:33:39 · 726 阅读 · 0 评论 -
单例设计模式
单例设计模式的常见场景单例设计模式的五种实现懒汉模式package com.pattern.gof;/** * 测试懒汉模式 * * 类加载器在加载的时候,就new 一个实例,非延时加载 * * @author Nicholas * */public class SingletonDemo2 { /** * 1、构造器私有 2、提供静态属性,不初始化 3、提供原创 2015-07-12 20:21:55 · 496 阅读 · 0 评论 -
工厂设计模式
简单工厂设计模式不利于扩展 package com.pattern.gof.SimpleFactory;public interface Car { void run();}基本实现package com.pattern.gof.SimpleFactory;public class CarFactory { public static Car createCar(String ca原创 2015-07-13 00:37:05 · 1267 阅读 · 0 评论 -
浅谈MVC
浅谈MVC什么是MVC?MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。参考维基百科 MVC模式的目的是实现一种动态的程序设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。除此之外,此模式通过对复杂度的简化,使程序结构更加直观。 其中,原创 2015-07-27 13:32:33 · 871 阅读 · 0 评论 -
Java中String的基础知识
Java中String的基础知识==与equal的区别基本数据类型,指的是java中的八种基本数据结构(byte,short,char,int,long,float,double,boolean),一般的比较是使用的 ==,比较的是他们的值。复合数据类型(类)==比较的是两个对象的引用,可以理解为在内存中的地址,除非是同一个new出来的对象,他们的 ==为true,否则,都为false。equa原创 2015-08-08 22:39:31 · 2016 阅读 · 0 评论 -
Maven使用私服setting.xml中的配置
Maven使用私服setting.xml中的配置setting.xml中的配置使用maven,每次都是从中央仓库下载依赖包,网络很渣,只有使用Nexus搭建个私服。下面是setting.xml中的配置文件 <?xml version="1.0" encoding="UTF-8"?><settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"原创 2015-08-07 15:44:49 · 9658 阅读 · 0 评论 -
简单的图片验证
在编写爬虫爬去一个航空公司官网的时候,发现航班信息都是图片,比如航班号,舱位信息,价格,时间等。相对而言,图片相对比较简单,没有干扰线条,文字也是端端正正的。所以,可以处理.package com.weixuan;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileInputStream;impo原创 2015-08-26 16:17:43 · 1134 阅读 · 0 评论 -
IDEA & Maven & Spring & MyBatis 编写数据服务
Maven的webapp工程目录IDEA 中的项目截图忽视那个temptest文件夹使用 Maven创建webapp1.创建项目,选择Maven,模板选择 webapp2.填写相关的信息 说明:maven是以 groupId artifactId packaging version来唯一标识一个项目的。 - groupId:用来标识团体,公司,小组,组织,项目,或者其它团体,一般以逆向域名开头。原创 2015-08-12 14:26:32 · 923 阅读 · 0 评论 -
在linux上部署Java项目
在linux上部署Java项目查看tomcat的运行状态ps -auxwf | grep java或者查看 端口的占用,具体端口看自己的配置netstat -lnpt | grep 8080启动和关闭 打开 ./startup.sh 关闭 ./shutdown.sh查看MySql的运行状态/etc/init.d/mysqld status#已添加到系统服务,以下命令可以查看service my原创 2015-08-12 10:13:14 · 3902 阅读 · 0 评论 -
Java注解
注解定义用一个词就可以描述注解,那就是元数据,即一种描述数据的数据。所以,可以说注解就是源代码的元数据。Annotation是一种应用于类、方法、参数、变量、构造器及包声明中的特殊修饰符。它是一种由JSR-175标准选择用来描述元数据的一种工具注解有什么用?使用Annotation之前(甚至在使用之后),XML被广泛的应用于描述元数据。XML配置其实就是为了分离代码和配置而引入的,而很多时候,希望使原创 2015-09-02 22:28:31 · 478 阅读 · 0 评论 -
Maven 基本命令
常见命令mvn -v 查看mvn的版本mvn -compile 在项目的根目录中执行 ,编译项目mvn -package 打包mvn -test 运行测试用例mvn -clean 清理编译产生的target文件夹mvn -install 安装jar包到本地仓库自动创建工程目录方式一 按照提示进行选择 mvn archetype:generate方式二 mvn archetype:generate -原创 2015-09-09 23:39:56 · 618 阅读 · 0 评论 -
JDK1.8 中的hashmap和concurrentHashMap
hashmap在JDK1.6中,HashMap采用Node数组+链表实现,即使用链表处理冲突,同一hash值的链表都存储在一个链表里。但是当位于一个桶中的元素较多,即hash值相等的元素较多时,通过key值依次查找的效率较低。而JDK1.8中,HashMap采用Node数组+链表+红黑树实现,当链表长度超过阈值(8)时,将链表转换为红黑树,这样大大减少了查找时间。hashMap的实现put方法的实现原创 2015-09-10 15:45:42 · 3219 阅读 · 3 评论 -
volatile
volatile的特点保证此变量对所有的线程的可见性。这里的可见性是指当一个线程修改了这个变量的值,新值对于其他线程是立即可以得知的。普通变量不可以,因为普通变量的值在线程间传递均需要通过主内存来完成,也就是说每次都要去主存中读写操作禁止指令重排优化volatile 并不能保证线程安全测试代码public class VolatileTest { public static vola原创 2015-09-10 22:46:15 · 625 阅读 · 0 评论 -
Java中的内部类
内部类的分类内部类的特点可以使用private、protected修饰。也可以使用abstract、final等修饰.内部类可以直接或利用引用访问外部类的属性和方法,包括私有属性和方法(但静态内部类不能访问外部类的非静态成员变量和方法)。内部类所访问的外部属性的值由构造时的外部类对象决定.外部类要访问内部类的成员,则只能通过引用的方式进行,可问内部类所有成员内部类可以继承同级的内部类,也可继原创 2015-08-21 15:50:08 · 763 阅读 · 0 评论 -
HTTPS
httpsHTTPS其实是有两部分组成:HTTP + SSL / TLS,也就是在HTTP上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据.SSL(Secure Sockets Layer) 网景公司设计的SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。TLS(Tran原创 2015-09-07 23:29:01 · 609 阅读 · 0 评论 -
hadoop环境搭建
安装jdk# 查看java的安装包yum -y list java* #安装openjdk 8yum -y install java-1.8.0-openjdk*环境配置安装完成后,javac java 可正常使用#备份mv /etc/profile /etc/profile.bak#编辑vim /etc/profile## openjdk的安装位置在/usr/lib/jvm#追加e原创 2015-09-19 12:05:40 · 908 阅读 · 1 评论 -
Java IO基础知识(上)
Java IO概述IO是整个人机交互的核心问题,因为IO是计算机获取和交换数据的主要渠道。整个IO的流程就是 源数据--->程序--->目的地IO的分类基于字符操作的IO接口:Reader,Writer基于字节操作的IO接口:InputStream,OutputStream基于磁盘操作的IO接口:File基于网络操作的IO接口:Socket(不在java.io包下面,但原创 2015-07-02 16:09:44 · 707 阅读 · 0 评论 -
HashMap,HashTable,ConcurrentHashMap,ConcurrentSkipListMap
一、Map接口1、Map接口是一个单独的接口,和List接口没什么关系,至少在类的继承关系上是这样。2、内部哈希哈希映射结构由一个存储元素的内部数组组成。由于内部采用数组存储,因此必然存在一个用于确定任意键访问数组的索引机制。实际上,该机制需要提供一个小于数组大小的整数索引值。该机制称作哈希函数。在 Java 基于哈希的 Map 中,哈希函数将对象转换为一个适合内部数组的整数。原创 2015-06-09 12:46:33 · 1882 阅读 · 0 评论 -
Java JDBC
原创 2015-04-23 23:44:16 · 474 阅读 · 0 评论 -
Servlet小结
原创 2015-04-23 23:47:27 · 665 阅读 · 0 评论 -
Java线程
原创 2015-04-23 23:41:43 · 371 阅读 · 0 评论 -
JSP小结
原创 2015-04-23 23:47:44 · 568 阅读 · 0 评论 -
Java集合类
原创 2015-04-23 23:39:22 · 355 阅读 · 0 评论 -
Java垃圾回收器
原创 2015-04-23 23:43:10 · 582 阅读 · 0 评论 -
Java异常处理
原创 2015-04-23 23:45:44 · 527 阅读 · 0 评论 -
java jdbc 与mysql连接的基本步骤
Java与mysql链接的基本步骤:第一步:原创 2014-07-25 22:55:47 · 4115 阅读 · 0 评论 -
java mysql jdbc 最终版
1.创建一个工具类2.通过gong原创 2014-07-27 19:45:49 · 878 阅读 · 0 评论 -
Java中的== 和 equal
package com.weixuan.test;public class Test { public static void main(String[] args) { //float a = 3.4; String s1 = "HelloWorld"; String s11 = "HelloWorld"; String s2 = new String("He原创 2015-05-12 20:33:12 · 504 阅读 · 0 评论 -
通过配置文件实现通用的jdbc链接
一般在项目当中,我们要多次与数据库jin'xing'jia原创 2014-08-03 18:44:36 · 2824 阅读 · 0 评论 -
数据库的增删改查操作
与之前的工具类放在同一个包下。原创 2014-07-28 23:27:51 · 2341 阅读 · 0 评论 -
Java基础题积累 -01
一、Java的异常的基类是java.lang.Throwable二、守护线程1、java中只有用户线程和守护线程2、守护线程的典型是GC,垃圾回收器3、守护线程是用来服务用户线程的三、 volatile关键字volatile关键字用在多线程同步中,可保证读取的可见性,JVM只是保证从主内存加载到线程工作内存的值是最新的读取值,而非cache中原创 2015-05-22 19:48:59 · 477 阅读 · 0 评论 -
Arraylist,LinkedList,vector的区别
一、ArrayList1、ArrayList 内部实现基于Object数组,默认的初始大小是102、ArrayList是继承AbstractList,实现List接口,AbstractList是一个抽象类,AbstractList继承了AbstractCollection,实现了List接口3、AbstractCollection实现了collectio原创 2015-06-07 22:47:56 · 722 阅读 · 0 评论 -
native关键字和transient关键字
一、native关键字查看java的源码,可以看到很多 使用native关键字声明的函数,比如hashcode()函数1、native关键字用法native是与C++联合开发的时候用的!使用native关键字说明这个方法是原生函数,也就是这个方法是用C/C++语言实现的,并且被编译成了DLL,由java去调用。 这些函数的实现体在DLL中,JDK的源代码中并不包原创 2015-06-08 22:49:06 · 765 阅读 · 0 评论 -
TreeSet,HashSet和LinkedHashSet
一、Set接口Set不允许包含相同的元素,如果试图把两个相同元素加入同一个集合中,add方法返回false。 Set判断两个对象相同不是使用==运算符,而是根据equals方法。也就是说,只要两个对象用equals方法比较返回true,Set就不 会接受这两个对象。Set接口直接继承Colections接口二、TreeSet -----提供一个使用树结构存储Se原创 2015-06-08 23:28:46 · 699 阅读 · 2 评论 -
代理设计模式
代理模式分类静态代理动态代理静态代理静态定义代理类类图:抽象角色 定义代理角色和真实角色的公共对外方法真实角色 实现抽象角色,实现真正的核心逻辑代理角色 实现抽象角色,通过真实角色的业务逻辑方法来实现抽象方法,可以添加自己的功能代码/** * * @author Nicholas 其中,sing()是核心逻辑 bookTicket() 是非核心方法 */public i原创 2015-09-15 16:41:10 · 543 阅读 · 0 评论