黑马程序员系列第四篇 集合(1)

November 15, 2015

ASP.Net+Android+IOS开发  、Net培训、期待与您交流!   (前言:本篇文章主要依据毕向东老师的课程视频整理而成,如要详细学习,请观看毕老师视频  百度网盘链接地址:http://pan.baidu.com/s/1o6mwDzO   目录:1、集合概述      2、Collection、Iterator接口     3、List接口与其ArrayList、LinkedList、Vector子类   4、Set接口及其HashSet、TreeSet子类   1、集合概述    下图为JDK中集合的框架设计图,我们主要使用的集合为黑色方框中的四种集合。 数组和集合的不同:集合中对象数量不定,而数组中对象数量必须是确定的。 ArrayList  底层数据存储结构是数组结构   特点:查询速度快,增删稍慢,线程不同步 LinkedList 底层数据结构是链表结构        特点:查询稍慢,增删快 Vector      底层是数组数据结构             特点:都很慢,线程同步,出现最早,已经被ArrayList替代了现在很少用 Set          集合

数据库Blob数据类型转String

November 15, 2015

blob数据是存储大对象数据类型, 一般存放二进制的,所以才用字节存取。 首先判断blob数据是否为空,然后采用输入流读出数据,具体代码如下:   1 String content = null; 2 try { 3 4 if(image != null){ 5 InputStream is = image.getBinaryStream(); 6 byte[] b = new byte[is.available()]; 7 is.read(b, 0, b.length); 8 content = new String(b); 9 } 10 System.out.println(content); 11 } catch ( IOException e) { 12 e.printStackTrace(); 13 }  

java按值传递理解

November 15, 2015

Java没有引用传递只有按值传递,没有引用传递只有按值传递,值传递。 通过下面代码解释: 1 public class Test { 2 public static void main(String[] args ){ 3 int var = 1 ; 4 f(var) ; 5 System.out.println(var) ; 6 } 7 public static void f(int newVar ){ 8 newVar = 2 ; 9 } 10 } 执行结果:  1 分析: 当执行 int var = 1 时,jvm在栈中开辟一块空间存放值---1,同时var变量指向值1所对应的内存空间,也就是var变量也有自己的内存空间,不过它的空间里存放的是值1所对应的内存地址。   当执行到第七行,要将var的值传递进方法f中时,jvm执行的操作是创建一个新的变量newVar,并将var里存放的值(也就是值1的内

java项目打成jar包时引用了第三方jar,此时我们该如何解决呢

November 15, 2015

Web项目做多了,反而对单纯的java项目陌生了,今天我们在开发项目的过程中,碰到一个这样的需求:需要将java项目放到linux系统上跑起来,当然这个javaSE项目是带main方法的。我们知道在IDE里写完JavaSE项目后,运行非常简单,只要本地java环境装好了,右击main方法---->run as-->java application就行,那么放到linux上呢?目前我们想到的有两种方法:一种是打成jar包放到服务器上,用命令java -jar ****.jar执行jar包即可。另外一种也是挺常见的将java项目放到服务器上,然后写一个shell脚本执行。关于方法二,还正在尝试之中。今天我要说的是方法一操作时需要注意的。 打jar包很简单,直接在myeclipse或者eclipse里导出jar包就行。具体做法是: 右击项目------->export---->选择JAR file: ------>next----->:指定导出的jar包具体存放位置即jar包名称: ------>next--->默认: ------>选择要执行的main方法: ----->finesh,这样

Java Web开发介绍

November 15, 2015

转自:http://www.cnblogs.com/pythontesting/p/4963021.html Java Web开发介绍 简介 Java很好地支持web开发,在桌面上Eclipse RCP谈不上成功,JAVA是主要用在服务器端,和Python一样是极其重要的Web后台开发语言。 Java Web应用通常不直接在服务器上运行,而是在Web容器内。容器提供的运行时环境,提供JVM (Java Virtual Machine)运行本地Java应用。容器本身也运行在JVM。 通常Java的分为两个容器:Web容器和Java EE容器。典型的Web容器是Tomcat或Jetty。Web容器支持Java Servlet和JavaServer Page的执行。 Java EE容器支持更多的功能,例如,服务器负载的分布。 大部分现代的Java Web框架是基于servlet的。流行的Java Web框架有GWT,JavaServer Faces,Struts和Spring框架。这些Web框架通常需要至少需要Web容器。 Java Web应用程序是动态的资源(如Servlet,JavaSe

数据库Blob数据类型转String

November 15, 2015

blob数据是存储大对象数据类型, 一般存放二进制的,所以才用字节存取。 首先判断blob数据是否为空,然后采用输入流读出数据,具体代码如下:   1 String content = null; 2 try { 3 4 if(image != null){ 5 InputStream is = image.getBinaryStream(); 6 byte[] b = new byte[is.available()]; 7 is.read(b, 0, b.length); 8 content = new String(b); 9 } 10 System.out.println(content); 11 } catch ( IOException e) { 12 e.printStackTrace(); 13 }  

java项目打成jar包时引用了第三方jar,此时我们该如何解决呢

November 15, 2015

Web项目做多了,反而对单纯的java项目陌生了,今天我们在开发项目的过程中,碰到一个这样的需求:需要将java项目放到linux系统上跑起来,当然这个javaSE项目是带main方法的。我们知道在IDE里写完JavaSE项目后,运行非常简单,只要本地java环境装好了,右击main方法---->run as-->java application就行,那么放到linux上呢?目前我们想到的有两种方法:一种是打成jar包放到服务器上,用命令java -jar ****.jar执行jar包即可。另外一种也是挺常见的将java项目放到服务器上,然后写一个shell脚本执行。关于方法二,还正在尝试之中。今天我要说的是方法一操作时需要注意的。 打jar包很简单,直接在myeclipse或者eclipse里导出jar包就行。具体做法是: 右击项目------->export---->选择JAR file: ------>next----->:指定导出的jar包具体存放位置即jar包名称: ------>next--->默认: ------>选择要执行的main方法: ----->finesh,这样

Java Web开发介绍

November 15, 2015

转自:http://www.cnblogs.com/pythontesting/p/4963021.html Java Web开发介绍 简介 Java很好地支持web开发,在桌面上Eclipse RCP谈不上成功,JAVA是主要用在服务器端,和Python一样是极其重要的Web后台开发语言。 Java Web应用通常不直接在服务器上运行,而是在Web容器内。容器提供的运行时环境,提供JVM (Java Virtual Machine)运行本地Java应用。容器本身也运行在JVM。 通常Java的分为两个容器:Web容器和Java EE容器。典型的Web容器是Tomcat或Jetty。Web容器支持Java Servlet和JavaServer Page的执行。 Java EE容器支持更多的功能,例如,服务器负载的分布。 大部分现代的Java Web框架是基于servlet的。流行的Java Web框架有GWT,JavaServer Faces,Struts和Spring框架。这些Web框架通常需要至少需要Web容器。 Java Web应用程序是动态的资源(如Servlet,JavaSe

Tomcat源代码阅读----源代码部署(1)

November 15, 2015

Tomcat源代码部署分为几个步骤 源代码下载 使用ant和build.xml进行编译 修改BuildPath,添加Jar包环境不报错为止 (1) 源代码下载的SVN路径为:http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_35 这边是使用的是Myeclipse下载的svn插件进行下载的。 http://svn.apache.org/repos/asf/tomcat/目录下还可以找到其他的版本的Tomcat。 (2) 下载之后需要进行对Tomcat工程使用ant进行编译,ant为Myeclipse的插件,build.properties.default修改成build.properties ,ant会按照build.properties内容进行下载依赖的包,然后根据build.xml进行打包编译。未与-source 1.6 一起设置引导类路径,在ant编译的时候可能会出现如下图的问题,这边需要工程的编译环境设置成1.6的JDK即可。 (3)修改BuildPath 增加SOURCE文件 增加Jar包 1.增加So

Java应用一般架构原理

November 15, 2015

当我们架设一个系统的时候通常需要考虑到如何与其他系统交互,所以我们首先需要知道各种系统之间是如何交互的,使用何种技术实现。 1. 不同系统不同语言之间的交互 现在我们常见的不同系统不同语言之间的交互使用WebService,Http请求。WebService,即“Web 服务”,简写为 WS。从字面上理解,它其实就是“基于 Web 的服务”。而服务却是双方的,有服务需求方,就有服务提供方。服务提供方对外发布服务,服务需求方调用服务提供方所发布的服务。如果说得再专业一点,WS 其实就是建立在 HTTP 协议上实现异构系统通讯的工具。没错!WS 说白了还是基于 HTTP 协议的,也就是说,数据是通过 HTTP 进行传输的。最早我们是用CXF开发SOAP服务实现WS,后面我们是用REST服务实现WS(这个目前使用比较多,也最我用得最多的这一种)。基于CXF也可以开发REST服务,不过我们一般直接使用springMVC或者其他MVC框架实现REST服务。 但是在很多人的印象中Web service的话一般指十来年前IBM主导的基于XML的各种交互技术,现在除了一些公司在用之外用得人也很少了。广