Java基础知识
文章平均质量分 77
郭威gowill
开源是一种信仰...
展开
-
Web Service和Servlet的区别
在最开始学习Web Service时候,总觉得Web Service和Servlet没有什么区别,觉得Servlet可以对Http请求进行相应并返回数据,而Web Service只不过是基于SOAP协议和XML对数据进行封装了,也是采用Http协议来传输数据,后来通过慢慢阅读相关材料,加上实际操作,才发现Web Service和Servlet有很大区别,根本不是在一个层次上的东西,于是对于它们的区原创 2016-03-01 15:48:01 · 18235 阅读 · 1 评论 -
Java HashMap的实现原理详解
HashMap是Java Map类型的集合类中最常使用的,本文基于Java1.8,对于HashMap的实现原理做一下详细讲解。(Java1.8源码:http://docs.oracle.com/javase/8/docs/api/)一、HashMap实现原理总结HashMap的实现原理总结如下:①数据存储是基于数组和链表实现的,默认是原创 2016-03-04 15:17:19 · 1510 阅读 · 0 评论 -
Java LinkedHashMap的实现原理详解
1. LinkedHashSet概述: LinkedHashSet是具有可预知迭代顺序的Set接口的哈希表和链接列表实现。此实现与HashSet的不同之处在于,后者维护着一个运行于所有条目的双重链接列表。此链接列表定义了迭代顺序,该迭代顺序可为插入顺序或是访问顺序。 注意,此实现不是同步的。如果多个线程同时访问链接的哈希Set,而其中至少一个线程修改了该Set,则它必转载 2016-03-04 18:51:42 · 1390 阅读 · 0 评论 -
Java HashSet的实现原理详解
HashSet是Java Map类型的集合类中最常使用的,本文基于Java1.8,对于HashSet的实现原理做一下详细讲解。(Java1.8源码:http://docs.oracle.com/javase/8/docs/api/)一、HashSet实现原理总结HashSet的实现原理总结如下:①是基于HashMap实现的,默认构造函原创 2016-03-04 18:49:57 · 41551 阅读 · 6 评论 -
Spring配置错误java.lang.NoClassDefFoundError: org/springframework/jdbc/datasource/TransactionAwareDataS
在对Spring数据源dataSource配置之后,运行程序出现如下错误:java.lang.NoClassDefFoundError: org/springframework/jdbc/datasource/TransactionAwareDataSourceProxy原因是项目没有导入spring-jdbc的jar包。如果使用maven,可以直接在pom.x原创 2016-03-05 18:45:29 · 38325 阅读 · 11 评论 -
Java连接Mysql数据库警告:Establishing SSL connection without server's identity verification is not recommend
Java使用mysql-jdbc连接MySQL出现如下警告:Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connectio原创 2016-03-05 19:56:20 · 99645 阅读 · 9 评论 -
Spring集成Mybatis配置映射文件方法详解
Spring ORM模块集成Mybatis使用到了mybatis-spring,在配置mybatis映射文件的时候,一般不直接在Mybatis的配置文件里进行配置,而会在Spring的配置文件里使用MapperScannerConfigurer来配置。MapperScannerConfigurer会自动扫描basePackage指定的包,找到映射接口类和映射XML文件,并进行注入。原创 2016-03-05 20:35:53 · 4449 阅读 · 1 评论 -
Spring连接mysql数据库错误:Cannot load JDBC driver class '${driver}'
在用Spring使用连接mysql数据库时出现如下错误:Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception isjava.sql.SQLException: Cannot load JDBC driver class原创 2016-03-05 20:46:29 · 7814 阅读 · 3 评论 -
Java基础知识——Sting、StringBuild、StringBuffer的区别
String类是不可变类,任何对String的改变都会引发新的String对象的生成;StringBuffer是可变类,任何对它所指代的字符串的改变都不会产生新的对象,线程安全的。StringBuilder是可变类,线性不安全的,不支持并发操作,不适合多线程中使用,但其在单线程中的性能比StringBuffer高。String 字符串常量 S原创 2016-03-17 10:07:53 · 2374 阅读 · 0 评论 -
Java Object有哪些公用方法?
protected Object clone()创建并返回此对象的一个副本。boolean equals(Object obj)指示某个其他对象是否与此对象“相等”。protected void finalize()当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。Class getClass()返回一个对象的运行时类。原创 2016-03-17 20:17:22 · 1525 阅读 · 0 评论 -
Java Socket编程详解
Java Socket编程是Java网络编程很重要的内容,现参考了许多资料,总结如下:1. Java网络编程原理+Socket编程 http://www.cnblogs.com/linzheng/archive/2011/01/23/1942328.html2. 一个 Java 的 Socket 服务器和客户端通信的例子 http://blog.csdn.net/defonds/a原创 2016-03-13 13:44:44 · 773 阅读 · 0 评论 -
Java BIO、NIO、AIO的区别
一、基础概念同步:是指的是用户进程触发IO操作并等待或者轮询的去查看IO操作是否就绪。异步:是指用户进程触发IO操作以后便开始做自己的事情,而当IO操作已经完成的时候会得到IO完成的通知(异步的特点就是通知)。(使用异步IO时,Java将IO读写委托给OS处理,需要将数据缓冲区地址和大小传给OS) 阻塞:是指当试图对该文件描述符进行读写时,如果当时没有东西可读,或者原创 2016-03-24 11:50:52 · 1399 阅读 · 0 评论 -
Java ArrayList、LinkedList和Vector的使用及性能分析
第1部分 List概括List 是一个接口,它继承于Collection的接口。它代表着有序的队列。AbstractList 是一个抽象类,它继承于AbstractCollection。AbstractList实现List接口中除size()、get(int location)之外的函数。AbstractSequentialList 是一个抽象类,它继承于AbstractList。转载 2016-03-04 11:01:52 · 3797 阅读 · 0 评论 -
Java LinkedList双向链表源码分析
LinkedList就传说中的双向链表了。是List 接口的链接列表实现。实现所有可选的列表操作,并且允许所有元素(包括 null)。除了实现 List 接口外,LinkedList 类还为在列表的开头及结尾 get、remove 和 insert 元素提供了统一的命名方法。这些操作允许将链接列表用作堆栈、队列或双端队列。查看LinkedList的构造函数:/** * C原创 2016-03-04 10:55:29 · 8241 阅读 · 1 评论 -
Java LinkedList的实现原理详解
LinkedList是Java List类型的集合类的一种实现,此外,LinkedList还实现了Deque接口。本文基于Java1.8,对于LinkedList的实现原理做一下详细讲解。(Java1.8源码:http://docs.oracle.com/javase/8/docs/api/)一、LinkedList实现原理总结LinkedList的实现原理原创 2016-03-04 10:51:43 · 6021 阅读 · 0 评论 -
Java 开发Web Service的几种方式
webservice的应用已经越来越广泛了,下面介绍几种在Java体系中开发webservice的方式,相当于做个记录。1.Axis2Axis是apache下一个开源的webservice开发组件,出现的算是比较早了,也比较成熟。这里主要介绍Axis+eclipse开发webservice,当然不用eclipse也可以开发和发布webservice,只是用eclipse会比较方便。转载 2016-03-02 11:31:44 · 2120 阅读 · 0 评论 -
Java开发Web Service的简介
随着异构系统互联需求的不断增加,Web Service的重要性也日益彰显出来。凭借Web Service,我们可以实现基于不同程序语言开发的项目之间的互联互通,Web Service也是面向服务的架构(SOA)的基石。其最主要的优点是: 跨语言、跨平台的不同系统之间的通信。 目前Web Service的开发主要有两种模式:一是传统的基于SOAP协议的Web Service开发;二是基于Re原创 2016-03-02 11:50:22 · 867 阅读 · 0 评论 -
Java开发Web Service的几种解决方案
转自:http://blog.csdn.net/zolalad/article/details/25158995Java开发中经常使用到的几种WebService技术实现方案 随着异构系统互联需求的不断增加,WebService的重要性也日益彰显出来。凭借webservice,我们可以实现基于不同程序语言的项目的互联互通。更可以将开发好的程序接口以服务的形式发转载 2016-03-02 11:54:06 · 4224 阅读 · 0 评论 -
使用wsimport命令创建Web Service客户端
一、wsimport简介在jdk的bin文件夹中,有一个wsimport.exe工具。这个工具可以依据Web Service的描述文件wsdl生成相应的类文件,然后用这些类文件,被Web Service的客户端导入之后,就可以像调用本地的类一样调用WebService提供的方法。该工具可以用于非Java语言编写的Web Service的,如:用C#编写的Web Service,通过原创 2016-03-02 13:46:17 · 5660 阅读 · 0 评论 -
Java使用JWS API开发Web Service
JAX-WS,即Java API for XML Web Service,是Java开发基于SOAP协议的Web Service的标准。使用JWS API就可以直接开发简单的Web Service应用。一、创建Web Service打开Eclipse,新建一个Java Project,如下图所示:原创 2016-03-02 12:13:47 · 7018 阅读 · 0 评论 -
Java使用Apache CXF开发Web Service
以前工作中也用CXF,但都是用别人现成搭好的环境,这次自己重头搭建一遍环境。过程中也有遇到的问题,也做了简单的整理。对于CXF是干什么用的,我不想多说,大家都知道这是我们在java编程中webService技术的一种实现工具。我们说说为什么用CXF来实现webService:1. Java的webService实现本身就是一个很耗性能的实现方案(xml与java对象之间在转载 2016-03-02 14:45:23 · 3619 阅读 · 0 评论 -
Linux下Java环境变量配置
在Java开发中,在安装完jdk之后,首先需要做的工作就是进行Java环境变量配置。在Windows下的配置我们都比较熟悉,图形化界面配置起来也相对容易(详见:Windows7下环境变量配置),接下来我们就来了解在Linux下命令行模式如何进行Java环境变量配置。 首先,我们需要弄清楚需要配置的环境变量有哪些,如下所示:1. JAVA_HOME环境变量。它指向jdk原创 2016-01-07 10:15:44 · 2226 阅读 · 0 评论 -
Java和C++区别
Java和C++的区别·运行机制Java:编写:是指在Java开发环境(Eclipse、Sublime等)中进行程序代码的输入,最终形成后缀名为.java的Java源文件。编译:是指使用Java编译器(javac)对源文件进行错误排查、编译生成后缀名为.class的字节码文件。这种字节码是平台无关的,不能直接执行,只能够用Java解释器来解释执行。运行:是指使用Java解释原创 2015-12-06 15:20:12 · 752 阅读 · 0 评论 -
Java基础知识——Java数组详解
数组是一种数据结构,用来存储同一类型值的集合,可以存储基本数据类型和类。数组的大小是固定的,通过一个整型下标(从0开始)可以访问数组中的每个值。此外,Java会对数组进行边界检查,如果发现有越界现象,会抛出RuntimeException异常。数组的优点:是一个线性存储的序列,可以快速访问数组中的每个元素。数组的缺点:如果需要存储的数据元素个数不定,则需要使用J原创 2016-03-03 17:37:22 · 587 阅读 · 0 评论 -
Java基础知识——Java集合详解
数组是Java很常见的一种数据结构,能够快速地进行存取。但是当遇到下面几种情况:①我们需要存储的数据集数目是不定的②我们希望数据集能够自动排序③我们需要以键值对的方式存储数据…数组就不能满足我们的需求了。这时候,我们就需要使用到集合类了。如下图所示,该图就是Java集合类的关系图谱。其中原创 2016-03-03 17:49:54 · 709 阅读 · 0 评论 -
Java ArrayList的实现原理详解
ArrayList是Java List类型的集合类中最长使用的,本文基于Java1.8,对于ArrayList的实现原理做一下详细讲解。一、ArrayList实现原理总结ArrayList的实现原理总结如下:①数据存储是基于数组实现的,默认初始容量为10;②添加数据时,首先需要检查元素个数是否超过数组容量,如果超过了则需要对数组进行扩容;插入数据时,需要将插入点原创 2016-03-04 10:04:07 · 5722 阅读 · 0 评论 -
Servlet详解
一、Servlet的生命周期创建Servlet有两个时机:一是客户端第一次请求每个Servlet时,系统创建该Servlet实例;另外是Web应用启动时立即创建Servlet实例,即load-on-startup Servlet。每个Servlet的生命周期如下:①创建Servlet实例;②Web容器调用Servlet的ini原创 2016-03-24 11:56:04 · 977 阅读 · 0 评论