java
文章平均质量分 74
Hsienhua
这个作者很懒,什么都没留下…
展开
-
Java 笔记:NIO新IO
java 新 IO从JDK1.4 开始,Java提供了一些列改进IO新特性,放在Java.nio及其子包下。并改进了原包中的很多类以NIO为基础进行了改写,满足了NIO的功能。NIO采用内存映射文件的方式来处理输入/输出,将文件或者文件的一段区域映射到内存中,就可以像访问内存一样访问文件,所以速度要比旧IO快很多。Channel 和 BufferChannel(通道原创 2013-10-18 21:58:21 · 911 阅读 · 0 评论 -
Java IO笔记(2)典型应用
Java IO的一些典型应用,内容来源于《Java编程思想》1.缓冲输入文件public class BufferedInputFile { public static String read(String filename) throws IOException { /** * 为了提高速度,使用BufferedReader,添加缓存功能 */ Buff原创 2013-09-03 13:36:50 · 683 阅读 · 0 评论 -
Java IO笔记:标准IO
1.标准输入和输出标准IO是指程序的输入和标准输出,用户和程序之间、程序和程序之间的交流都可以通过标准IO实现。Java中使用System.in(输入),System.out(输出)和System.err(错误输出)来提供程序的输入和输出。2.读取输入数据public class Echo { public static void main(String[] args) t原创 2013-09-07 16:09:35 · 656 阅读 · 0 评论 -
用iText把图片转成PDF
1.iTextiText是一个非常著名的能够快速产生PDF文件的Java类库。支持文本,表格,图形的操作,可以方便的跟 Servlet 进行结合。软件首页:http://www.itextpdf.com2.实现图片转成PDF在项目中要求把几个图片转成pdf,一页一个。代码如下:/** * * @param destPath 生成pdf文件的路劲 * @pa原创 2013-08-31 11:02:44 · 1993 阅读 · 0 评论 -
Java IO记录(1)概述
1.Java的IO流Java的IO流(Stream)是实现输入/输出的基础,Java中把不同的输入/输出源(命令行、文件、网络等)抽象表述为 “流”,通过流的方式允许Java程序使用相同的方式来访问不同的输入/输出源。2.流的分类(1)按照“流向”,可以分输入流和输出流输入流:只能从流中读取数据,以InputStream和Reader作为基类输出流:只能向流中写数据,以Ou原创 2013-08-30 16:23:40 · 602 阅读 · 0 评论 -
JavaEE的13种核心技术
内容转自:http://www.cnblogs.com/ydpvictor/archive/2012/09/03/2669472.htmljava的大方向就是JavaEE,JavaEE不仅仅是socket编程,具体包括13中核心技术。 JAVAEE的核心API与组件 JAVAEE平台由一整套服务(Services)、应用程序接口(APIs)和协议构成,它对开发基于Web转载 2013-08-16 11:03:31 · 654 阅读 · 0 评论 -
Java程序员在写SQL程序时候常犯的10个错误
Java程序员编程时需要混合面向对象思维和一般命令式编程的方法,能否完美的将两者结合起来完全得依靠编程人员的水准:技能(任何人都能容易学会命令式编程)模式(有些人用“模式-模式”,举个例子,模式可以应用到任何地方,而且都可以归为某一类模式)心境(首先,要写个好的面向对象程序是比命令式程序难的多,你得花费一些功夫)但当Java程序员写SQL语句时,一切都不一样了。SQ转载 2013-08-27 10:33:28 · 790 阅读 · 1 评论 -
重构笔记-代码坏味
1.重复代码在同一个类中的不同函数、子类之间或者毫不相干的类之间出现相同的程序结构,都应该设法将他们合二为一。同一个类中的两个函数含有相同的表达式,提炼重复代码到一个函数中,再让这些地方调用这个函数。子类之间出现重复代码,把重复代码提炼到父类中。两个毫不相关的类出现重复,把重复代码提炼到其中一个类中或者一个新的类作为一个方法,让所有的类调用它。2.过长函数函数越长越不容易被原创 2013-08-11 11:20:40 · 1125 阅读 · 0 评论 -
AWT编程笔记:事件处理
1. Java 事件模型为了使图形界面能够接收用户的操作,必须给给各个组件加上事件处理机制。事件处理过程中,主要涉及3类对象:Event Source(事件源):事件发生的组件,如:按钮,窗口等Event(事件):封装了GUI组件上发生的事件,包含了事件发生的相关信息。Event Listener(事件监听器):负责监听事件源上发生的事件,并做相应处理,一般自己实现相应接口,并原创 2013-08-20 10:43:13 · 920 阅读 · 0 评论 -
Java IO笔记(3)RandomAccessFile
1.RandomAccessFileRandomAccessFile适用由大小已知的记录组成的文件,所以我们可以使用seek()将记录从一处转移到另一处;RandomAccessFile不是InputStream或者OutputStream继承层次的一部分,是自我独立的类;RandomAccessFile的大部分功能,但不是全部,由nio存储映射文件取代。2.使用示例i原创 2013-09-03 14:18:45 · 668 阅读 · 0 评论 -
Java 笔记:压缩功能(zip和gzip)
概述Java I/O类库中的类支持读写压缩格式的数据流。它们属于InputStream和OutputStream继承层次结构的一部分。这些类包括:CheckedInputStream :GetCheckSum为任何InputStream产生效验和。CheckedOutputStream : GetCheckSum为任何OutputStream产生效验和。DeflaterOutp原创 2013-10-21 20:46:52 · 1082 阅读 · 0 评论 -
Java中HashMap详解
转自:http://alex09.iteye.com/blog/539545HashMap 和 HashSet 是 Java Collection Framework 的两个重要成员,其中 HashMap 是 Map 接口的常用实现类,HashSet 是 Set 接口的常用实现类。虽然 HashMap 和 HashSet 实现的接口规范不同,但它们底层的 Hash 存储机制完全一样,甚至转载 2013-10-23 20:40:18 · 750 阅读 · 0 评论 -
Java7 NIO 之文件系统访问
Java7中 的I/O库得到了进一步增强,成为NIO.2 。 NIO.2 中包含的主要内容包括文件系统访问和异步I/O通道.Java 7 加强了文件操作相关的功能,使用java.nio.file包的类实现。1.文件路径的抽象:Path 类(1)创建Path:Path path1 = Paths.get("E:\\book\\"); //创建path原创 2014-01-10 17:06:40 · 1327 阅读 · 0 评论 -
Java 7如何操纵文件属性
文章来源:http://blog.csdn.net/chszsJava 7如何操纵文件属性作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs准备写点基础性的文章,Java 7已经出来很长一段时间了,但是很多Java程序员仍然停留在早期的Java 5或Java 6的基础上,对Java 7的新特性从未加以使用。本文介转载 2014-01-10 16:48:00 · 763 阅读 · 0 评论 -
Java NIO 之 buffer
Buffer(缓冲区)是一个包装了基本数据元素数组的对象,提供了比数组更加丰富API操作数据。1.属性Buffer有四个基本属性:1、capacity 容量,buffer能够容纳的最大元素数目,在Buffer创建时设定并不能更改2、limit buffer中有效位置数目3、position 下一个读或者写的位置4、mark 用于记忆的标志位,配合原创 2014-01-10 11:58:41 · 816 阅读 · 0 评论 -
java设计模式笔记之单例模式
1.单例模式单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。3个要点:一是某个类只能有一个实例;而是必须自行创建这个实例;三是必须向整个系统提供这个实例。一般资源管理器、工厂类等都被设计成单例。2.结构图结构图很简单,一个Singleton,自己创建和持有自己的一个实例,并保持它唯一。3.饿汉式单例public class原创 2013-08-08 15:58:48 · 639 阅读 · 0 评论 -
Java笔记:枚举
Java中:关键字enum可以将一组具名的值得有限集合创建为一种新的类型,而这些具名的值可以作为常规的程序组件使用。这是一种非常有用的功能。基本enum特性//定义一组枚举值enum Shrubbery {GROUND,CRAWLING,HANDING}public class EnumClass { public static void main(St原创 2013-11-14 13:30:44 · 838 阅读 · 0 评论 -
Java注解
在开发Java程序,尤其是Java EE应用的时候,总是免不了与各种配置文件打交道。以Java EE中典型的S(pring)S(truts)H(ibernate)架构来说,Spring、Struts和Hibernate这三个框架都有自己的XML格式的配置文件。这些配置文件需要与Java源代码保存同步,否则的话就可能出现错误。而且这些错误有可能到了运行时刻才被发现。把同一份信息保存在两个地方,总是个转载 2013-11-20 21:09:53 · 842 阅读 · 0 评论 -
Java AWT编程笔记-基本元素
1.AWT 和SwingAWT是SUN在jdk中提供的基本的GUI类库,被称为Abstract Window Toolkit。AWT是窗口框架,它从不同平台的窗口系统中抽取共同组件,当程序运行时,将这些组件的创建和动作委托给所在的运行平台。也就是说,JVM调用操作系统本地的图形界面来创建和平台一致的对等体。AWT的不足:(1)界面丑陋,功能有限(2)不能使用特定操作系统上复杂的图形原创 2013-08-19 17:05:22 · 1127 阅读 · 0 评论 -
java设计模式笔记之抽象工厂
1.抽象工厂模式产品族:指不同产品等级机构中,功能相关联的产品组成家族。例如:微型计算机有2个系列:PC和MAC系列。2个产品系列中都有Ram和CPU产品。那么PC-Ram和MAC-Ram就组成了Ram产品族。PC-CPU和MAC-CPU就组成了CPU产品族。工厂方法模式适用于一个层级结构复杂的产品系列的创建,但是当一个系统需要创建多个产品系列,如上面的例子中有2个产品系列。如果使用工厂方原创 2013-08-06 18:01:06 · 725 阅读 · 0 评论 -
Spring Data JPA 使用
1,Spring 使用JPA(1),实体类@Entity@Table(name = "ss_user")public class User extends IdEntity { private String loginName; private String plainPassword; private String password; 。。。 //原创 2013-06-21 14:39:19 · 1052 阅读 · 0 评论 -
Java正则表达式实例详解
创建正则表达式你可以从比较简单的东西入手学习正则表达式。要想全面地掌握怎样构建正则表达式,可以去看JDK 文档的java.util.regex 的Pattern 类的文档。字符B字符B\xhh16进制值0xhh 所表示的字符\uhhhh16进制值0xhhhh 所表示的Unicode字符转载 2013-07-06 11:26:14 · 774 阅读 · 0 评论 -
JAVA日志之SLF4J
Simple Logging Facade for Java (SLF4J)即简单日志门面,不是具体的日志解决方案。 Simple Logging Facade for Java (SLF4J)主要具备以下优点:SLF4J 受类加载器的影响较小,不易产生内存溢出的问题,性能得到了改善,更主要是顺应了潮流的发展--可方便部署到 OSGI 环境中。正是基于这些优点,过去大的如原创 2013-06-19 17:08:59 · 890 阅读 · 0 评论 -
Java servlet中操作cookie
1,创建cookieCookie cookie = new Cookie(name,"");cookie.setMaxAge(maxage);cookie.setPath("/");return cookie;new 参数:name 和值(“”);maxage:失效时间;path:路劲,如果不设置,则默认是当前请求路劲。(对于Servlet来说为request.g原创 2013-06-18 17:07:23 · 1519 阅读 · 0 评论 -
kaptcha 验证码在spring mvc 中的使用
kaptcha的配置是通过web.xml完成的,所有的参数都有默认值。 所需要的jar包:kaptcha-2.0.jar一、Kaptcha输出验证码的Demo:二、配置参数(web.xml)Xml代码 servlet> servlet-name>Kaptchaservlet-name> servlet转载 2013-06-04 14:39:11 · 1344 阅读 · 0 评论 -
Java笔记之:String(一)
1, String 是不可变的String q="howdy";print(q); //howdyString qq=s.toUpperCase();print(qq);//HOWDYprint(q);//howdy2,String 重载符+和+=一、因为String是不可变的,所以String的+和+=操作效率很低,所以java自动为操作引入了Stri原创 2013-06-04 14:21:50 · 708 阅读 · 0 评论 -
Java编程中“为了性能”尽量要做到的一些地方
下面是参考网络资源总结的一些在Java编程中尽可能要做到的一些地方。1. 尽量在合适的场合使用单例使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三个方面:第一,控制资源的使用,通过线程同步来控制资源的并发访问;第二,控制实例的产生,以达到节约资源的目的;第三,控制数据转载 2012-05-28 13:17:53 · 378 阅读 · 0 评论 -
Java 编写一个完美的equals()方法的建议
本文内容来自《Java核心技术》Java Object 类中的方法用于检测两个对象是否等于另外一个对象。判断方法是判断两个对象是否具有相同的引用。但是这种方法在实际中并不实用,往往需要重写此方法。编写一个完美equals方法的建议:显示参数命名为otherObject,稍后需要将它转换成另一个对象变量other检测this与otherObject是否引用同一个对象:原创 2012-04-16 15:03:58 · 571 阅读 · 0 评论 -
Log4j 配置最全说明
看了几个文档,还是这个最全面,最后附上自己的日记,早遇到这个文章就不需要整理笔记了 1. log4j 的配置文件 Log4j 支持两种配置文件格式,一种是 XML 格式的文件,一种是 Java 特性文件 lg4j.properties (键 = 值)。 1.1. log4j configuration scripts in properties format lg4j.转载 2013-06-22 09:57:09 · 693 阅读 · 0 评论 -
Java常用优秀工具类库
Java第三方library ecosystem是一个很广阔的范畴。 单元测试 1.DBUnit(http://www.dbunit.org/) DBunit是一个基于junit扩展的数据库测试框架。它提供了大量的类对与数据库相关的操作进行了抽象和封装。 2.MOckito(http://mockito.org/) Mockito是一个针对Java的mocki转载 2013-06-28 12:40:58 · 1413 阅读 · 0 评论 -
Spring 使用Junit 进行单元测试
1.Spring 提供了单元测试的强大支持,主要特性包括:支持主流的测试框架 Junit 和 TestNG支持在测试类中使用依赖注入 Denpendency Injection支持测试类的自动化事务管理支持使用各种注释标签,提高开发效率和代码简洁性Spring 3.1 更是支持在测试类中使用非 XML 配置方法和基于 Profile 的 bean 配置模式下面提供一原创 2013-07-15 15:59:45 · 2852 阅读 · 0 评论 -
java设计模式笔记之工厂方法
1.简单工厂的改进简单工厂在有新产品加入时,需要修改工厂类,而且产品类层次越复杂,就会有一个庞大而复杂的创建类。工厂方法模式较简单工厂最大的不同是,核心的工厂类不在是一个具体类,负责具体产品的创建,而是一个抽象类,将具体创建工作下移到子工厂类。使得系统允许在不修改具体工厂类的前提下,添加一个新的产品。只需要添加一个新的工厂实现类。2.模式的结构抽象工厂(Creator):所原创 2013-08-06 15:42:53 · 639 阅读 · 0 评论 -
spring mvc 集成shiro 做权限的简单使用
1.概述现在的项目使用的权限控制系统是spring security 3.因为项目的框架使用spring,就顺便使用了。最近研究了一下spring side4,推荐使用shiro。照着示例做了一遍。在原有的spring web工程中。步骤如下。2.引进包,maven设置 org.apache.shiro shiro-all 1.2.1原创 2013-08-05 16:59:33 · 7567 阅读 · 0 评论 -
spring mvc 结合Hibernate Validator进行服务器验证
1.概述在web页面,验证请求参数一般使用jquery Validation 。如果有人恶意绕过页面验证,进行请求,或者js验证规则不好实现,可使用spring mvc和Hibernate Validator进行验证。2. 源码和配置实例1,一个实体类User@Entity@Table(name = "ss_user")public class User extends原创 2013-07-25 11:03:36 · 3599 阅读 · 0 评论 -
java模式笔记之6大设计原则
1.概述6大设计原则:1)开-闭原则(open-close OCP)2)里氏代换原则(LSP)3)依赖倒转原则(DIP)4)接口隔离原则(ISP)5)组合聚合复用原则(CARP)6)迪米特原则(LOD)遵循这些设计原则可以有效的提高系统的可复用性,同时提高可维护性.2.开闭原则(OCP)含义:一个软件实体应该对扩展开发,对修改关闭。这个原则是说设原创 2013-07-30 11:29:27 · 810 阅读 · 0 评论 -
精通java的25个标准
从百度文档转载,以作备忘,希望能达到这些目标,不过好像实在太多了,仅作参考吧1.你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该了解UML,尤其是class,object,interaction以 及statediagrams。2.你需要学习JAVA语言的基础知识以及它的核心类库(collections,serializati转载 2013-07-23 10:05:38 · 611 阅读 · 0 评论 -
总结 20 个开发细节
1:提交到SVN的代码必须有提交备注,以便于以后查看。2:如考虑页面缓存,可以在路径后增加随机数:url + "&TimeS=" + Math.random();。3:类的头注释:类说明、作者、版本、特别说明。4:方法必须有注释:方法说明、参数列表含义。5:没有特殊要求,列表页面一律10条数据进行显示,需要弹出框的以15条进行显示。6:列表页面必须有增加、删转载 2013-07-22 11:12:26 · 501 阅读 · 0 评论 -
Comparator和Comparable在排序中的应用
Comparator和Comparable在排序中的应用当需要排序的集合或数组不是单纯的数字型时,通常可以使用Comparator或Comparable,以简单的方式实现对象排序或自定义排序。一、Comparator强行对某个对象collection进行整体排序的比较函数,可以将Comparator传递给Collections.sort或Arrays.sort。接口方法:转载 2013-07-03 18:39:51 · 499 阅读 · 0 评论 -
Spring Mybatis 整合
1.所需要的包:1,spring发行包2,mybatis 包和Mybatis-Spring 的jar包,maven可以使用: org.mybatis mybatis-spring 1.2.0 compile org.mybatis mybatis 3.2.1 comp原创 2013-07-17 16:12:51 · 1404 阅读 · 0 评论 -
Java多线程编程总结
Java多线程编程总结文章转自:http://lavasoft.blog.51cto.com/62575/27069一、认识多任务、多进程、单线程、多线程要认识多线程就要从操作系统的原理说起。 以前古老的DOS操作系统(V 6.22转载 2012-03-21 09:31:04 · 433 阅读 · 0 评论