
Java
文章平均质量分 62
zzc1684
这个作者很懒,什么都没留下…
展开
-
java7 WatchService监听文件
package com.ssh.config; import java.io.IOException; import java.nio.file.FileSystems; import java.nio.file.Path; import java.nio.file.Paths; import ...原创 2017-08-19 10:24:49 · 2600 阅读 · 0 评论 -
JUnit的jar包和hamcrest的jar包关系
junit和hamcrest是两个不同的框架,不同的东西。只不过是junit使用了hamcrest框架而已。 在junit上下载的junit的包解压开见下图: 刚下载的JUnit的jar包解压开的文件。 junit-4.10.jar :包含junit-dep-4.10.jar全部内容和必要的harmcres的包, junit-4.10-src...原创 2015-08-26 14:42:21 · 301 阅读 · 0 评论 -
Java异常
异常处理机制是Java许多特性的重要基础。Java采用面向对象的方式来处理异常。本文介绍与异常相关的内容。1. 什么是异常?异常是异常事件 (exceptional event)的简写,是程序运行过程中出现的打断(disrupt)正常运行的事件,比如被除数为0导致的程序异常。当程序的方法出现异常时,方法就会创 建一个描述该异常的对象,将这个异常对象传递给运行时系统(runtim...原创 2016-07-07 01:02:52 · 210 阅读 · 0 评论 -
Java线程
1. 并发:进程与线程 关于并发,一个最直观的例子就是你可以同时 听歌还能上网,能用Word。即使在同一个程序中,也可能要同时完成多个任务,比如音乐播放器,你一边听着一首歌,另一边还同时下载其他歌曲,你还想改变 一下外观,这些任务之所以能完成,就是基于并发的概念。Java语言从语言级别到API都提供了对并发的支持。 即使计算机只有一个单核的处理器,也经常存 在多个...原创 2016-07-07 00:56:03 · 139 阅读 · 0 评论 -
Java线程池例子
/** * */ package iotest.serversocket; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; i...原创 2016-07-07 00:04:57 · 152 阅读 · 0 评论 -
Java虚拟机工作原理详解
一、类加载器首先来看一下java程序的执行过程。 从这个框图很容易大体上了解java程序工作原理。首先,你写好java代码,保存到硬盘当中。然后你在命令行中输入javac YourClassName.java 此时,你的java代码就被编译成字节码(.class).如果你是在Eclipse IDE或者其他开发工具中...原创 2016-07-06 15:45:46 · 180 阅读 · 0 评论 -
关于使用JS前台加密、JAVA后台解密的RSA实现,RSA加密和签名
实现:用RSA非对称加密方式实现。后台生成rsa密钥对,然后在登陆页面设置rsa公钥,提交时用公钥加密密码,生成的密文传到后台,用私钥解密,获取密码明文。这样客户端只需要知道rsa加密方式和公钥,前台不知道私钥是无法解密的,此解决方案还是相对比较安全的。附件是参照网友资料的java+JS的实现,放在这里供大家下载。访问方式/RSA/login.jsp。需要到http://www....原创 2016-05-27 12:07:16 · 744 阅读 · 0 评论 -
POI 读取word (word 2003 和 word 2007)
最近在给客户做系统的时候,用户提出需求,要能够导入 word 文件,现在 microsoft word 有好几个版本 97、2003、2007的,这三个版本存储数据的格式上都有相当大的差别,而现在 97 基本上已经退出市场,几乎没有人用这个版本了, 所以在我们的系统中只考虑 2003 版本和 2007 版本的,因为我们只要求能够读取 word 中的文字内容即可,其中的文字样式、图...原创 2016-05-16 10:55:27 · 274 阅读 · 0 评论 -
Request中getContextPath、getServletPath、getRequestURI、request.getRealPath的区别
Request中getContextPath、getServletPath、getRequestURI、request.getRealPath的区别假定你的web application 名称为news,你在浏览器中输入请求路径:http://localhost:8080/news/main/list.jsp则执行下面向行代码后打印出如下结果:1、 System.out.println(r...原创 2014-10-11 09:15:25 · 116 阅读 · 0 评论 -
Java虚拟机之JVM整理学习笔记(四)
前几篇我 们学习了,JVM里面的运行结构,GC算法,以及各种垃圾收集器的优劣点,那么本篇我们来看下如何使用一些虚拟机性能监控工具,来监控和快速处理故障,当 JVM出现一些故障时,我们通常从如下的几个方面进行着手分析,包括运行日志,异常堆栈,GC日志,线程快照(threaddump/javacore文 件),堆转储快照(heapdump/hprof文件),熟练掌握这些工具,可以帮我们更好更快弄清或...原创 2015-07-26 20:33:13 · 162 阅读 · 0 评论 -
Java虚拟机之JVM整理学习笔记(三)
一,判断对象存活算法 JVM如何判断对象可以回收了? 主要的算法有: 1,引用计数算法,当多一个地方引用此类时,引用计数加一,否则就减一,算法很简单,实现也比较简单 缺点:很难解决对象之间相互引用的问题 2,可达性分析算法,通过一系列GC Roots路径,从节点开始搜索,来判断整个引用链是否还有关系。 在java语言中,可作为GC Roots的对象包括下面几种: 虚拟机栈(栈帧...原创 2015-07-26 20:32:35 · 196 阅读 · 0 评论 -
Java虚拟机之JVM整理学习笔记(二)
上篇文章,散仙整理了关于JVM的运行时的数据区以及各个区域,本篇我们就来看下各个区域发生异常代码的实战代码,以便于大家更容易在实际应用找到感觉。 1,JAVA堆溢出代码,需要设置JVM参数 Java代码 package com.test.jvm; import java.util.ArrayList; import java.util.List;...原创 2015-07-26 20:31:42 · 112 阅读 · 0 评论 -
Java虚拟机之JVM整理学习笔记(一)
JVM是 java的核心和基础,在java编译器和os平台之间的虚拟处理器,JVM屏蔽了JAVA和底层操作系统之间的复杂交互流程,从而大大简化了系统的复杂 性。JVM 通过抽象操作系统和 CPU 结构,提供了一种与平台无关的代码执行方法,即与特殊的实现方 法、主机硬件、主机操作系统无关,所以我们才称使用JAVA编写的程序或服务是跨平台的,这一点相对于微软的C#来说,不过前几日.NET阵营已经也开...原创 2015-07-26 20:28:29 · 157 阅读 · 0 评论 -
java报错Attempted read from closed stream
java在运行程序报错内容如下:java.io.IOException: Attempted read from closed stream. at org.apache.http.impl.io.ChunkedInputStream.read(ChunkedInputStream.java:162) at org.apache.http.conn.EofSensorInp...原创 2015-07-09 09:00:36 · 472 阅读 · 0 评论 -
认识java的Class类
Class 类是在Java语言中定义一个特定类的实现。一个类的定义包含成员变量,成员方法,还有这个类实现的接口,以及这个类的父类。Class类的对象用于表示 当前运行的 Java 应用程序中的类和接口。 比如:每个数组均属于一个 Class 类对象,所有具有相同元素类型和维数的数组共享一个Class 对象。基本的 Java 类型(boolean, byte, char, short...原创 2014-09-13 00:28:14 · 703 阅读 · 0 评论 -
XStream方法列表
http://xstream.codehaus.org/javadoc/com/thoughtworks/xstream/XStream.html#ignoreUnknownElements%28%29 com.thoughtworks.xstreamClass XStreamjava.lang.Objectcom.thoughtworks.xstr...原创 2015-05-14 10:34:04 · 701 阅读 · 0 评论 -
Java 两个百度经纬度坐标点,计算两点距离
package com.ejianf.utils;/** * 类名称:PointToDistance * 类描述:两个百度经纬度坐标点,计算两点距离 * 创建人:钟志铖 * 创建时间:2014-9-7 上午10:14:01 * 修改人: * 修改时间: * 修改备注: * 版本信息:1.0 * 联系:QQ:43364...原创 2015-09-07 10:40:17 · 1189 阅读 · 0 评论 -
JVM调优总结 -Xms -Xmx -Xmn -Xss
堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统 下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置:java -Xmx3550m -Xm...原创 2016-08-15 00:40:21 · 219 阅读 · 0 评论 -
Java ConcurrentModificationException 异常分析与解决方案
一、单线程 1. 异常情况举例只要抛出出现异常,可以肯定的是代码一定有错误的地方。先来看看都有哪些情况会出现ConcurrentModificationException异常,下面以ArrayList remove 操作进行举例: 使用的数据集合:List<string> myList = new ArrayList<string>(); my...原创 2016-02-06 11:34:37 · 193 阅读 · 0 评论 -
Java图片压缩
import java.awt.Image; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; im...原创 2016-01-27 11:19:52 · 196 阅读 · 1 评论 -
java程序将汉字转成拼音
1.使用pinyin4j将汉字转成拼音,附件为pinyin4j的jar包import net.sourceforge.pinyin4j.PinyinHelper;import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;import net.sourceforge.pinyin4j.format.HanyuPinyin...原创 2016-01-25 11:22:15 · 298 阅读 · 0 评论 -
java List 排序 Collections.sort() 对 List 排序
//一个POJO例子class User { String name; String age; public User(String name,String age){ this.name=name; this.age=age; } public String getAge() { return age; } public void s...原创 2014-12-11 14:01:14 · 86 阅读 · 0 评论 -
xStream完美转换XML、JSON
xStream框架xStream可以轻易的将Java对象和xml文档相互转换,而且可以修改某个特定的属性和节点名称,而且也支持json的转换;前面有介绍过json-lib这个框架,在线博文:http://www.cnblogs.com/hoojo/archive/2011/04/21/2023805.html以及Jackson这个框架,在线博文:http://www.cnblogs...原创 2014-11-15 09:25:55 · 337 阅读 · 0 评论 -
BigInteger权限判断示例
这里我介绍一种很常用,也比较Professor的权限控制思路。 把具体的权限设置为一个正整数值,如果一个用户有多个权限的话,比如1,2权限,那么我们设置值的时候就是 num.setBit(1),num.setBit(2),然后把返回的num值保存在session中,要验证是否有权限的话,只要从session中 取得保存的num,然后执行下num.test(权限值),如果返回true就是有权...原创 2015-12-23 17:03:40 · 98 阅读 · 0 评论 -
java synchronized静态同步方法与非静态同步方法,同步语句块
进行多线程编程,同步控制是非常重要的,而同步控制就涉及到了锁。 对代码进行同步控制我们可以选择同步方法,也可以选择同步块,这两种方式各有优缺点,至于具体选择什么方式,就见仁见智了,同步块不仅可以更加精确的控制对象锁,也就是控制锁的作用域,何谓锁的作用域?锁的作用域就是从锁被获取到其被释放的时间。而且可以选择要获取哪个对象的对象锁。但是如果在使用同步块机制时...原创 2016-11-28 16:36:26 · 275 阅读 · 0 评论 -
Java泛型的使用以及注入DAO --由SpringSide想到的
DAO层的BaseHibernateDao类支持泛型,其目的是使得 子类 声明其操作的Persistence Class,以获得完整的CRUD功能。例如:public class UserDAO extends BaseHibernateDao<User> { User getUser(Integer userId) { return getObject(id)...原创 2014-11-05 09:02:40 · 260 阅读 · 0 评论 -
如何去除jd-gui反编译后的/**
背景说明我们利用jd-gui反编译.classs代码之后,导出来的java源代码里面含有/**,其实这些标记是之前的java源码的注释,我们如何去掉这些标识了?需要利用jd-gui-cleaner.jar工具进行去掉,有需要的可以进行下载使用。jd-gui-cleaner.jar简介清除jd-gui反编译后注释的工具 图形界面,操作方便 在java环境下双击运行 运行后,先点inpu...原创 2014-10-26 23:37:45 · 1268 阅读 · 0 评论 -
类方法学习三:getDeclaringClass,getEnclosingClass
1.Class getDeclaringClass()返回本类的申明处。一个类可能是在另一个类内部定义的.[java] view plaincopySystem.out.println("Son.ClassS_Pub.class.getDeclaringClass:" + Son.ClassS_Pub.class.getDeclaringClass()); ...原创 2014-10-23 15:10:56 · 642 阅读 · 0 评论 -
类方法学习二:getClasses()、getDeclaredClasses()
一.定义Class[] getDeclaredClasses()返回类中定义的公共、私有、保护的内部类Class[] getClasses()返回类定义的公共的内部类,以及从父类、父接口那里继承来的内部类二.例子1.GrandFather.java[java] view plaincopypublic class GrandFather { ...原创 2014-10-23 15:10:24 · 277 阅读 · 0 评论 -
类方法学习一:A.isAssignableFrom(B)
public boolean isAssignableFrom(Class<?> cls)判定此 Class 对象所表示的类或接口与指定的 Class 参数所表示的类或接口是否相同,或是否是其超类或超接口。如果是则返回 true,否则返回 false。如果该 Class 表示一个基本类型,且指定的 Class 参数正是该 Class 对象,则该方法返回 true,否则返回 fa...原创 2014-10-23 15:09:48 · 119 阅读 · 0 评论 -
Java数组深度复制
Java数组的复制操作可以分为<深复制>和<浅复制>。个人简单认为,深复制就是<对象的值和内容的复制>,浅复制就是<对象引用的复制>。 下面以Java的字符串数组为例,介绍一下如何实现深复制。 首先是待复制的Java字符串数组 Java代码 String[][] strArray=new String[...原创 2014-10-21 11:01:13 · 669 阅读 · 0 评论 -
一些不靠谱的java.util.List深复制方法
之前探讨过Java数组的深复制问题,现在来说说<一些不靠谱的java.util.List深复制方法>。为什么不说<靠谱的 深复制方法>呢?因为在寻找探索<靠谱的深复制方法>的过程中,我发现了这些不靠谱的方法,写下来是希望给自己和他人提个醒,不要犯这 样的错误。 这是下面要频繁使用的一个JavaBean Java代码 cla...原创 2014-10-21 10:53:26 · 153 阅读 · 0 评论 -
java 某年某月第几周第几天 是几月几号
import java.text.SimpleDateFormat;import java.util.Calendar;public class DateUtil { /** * * @param year 年份 * @param month 月份 * @param weekOfMonth 这个月的第几周 ...原创 2014-10-20 14:09:17 · 832 阅读 · 0 评论 -
java.util.Date转java.sql.Date丢失时间问题
java.sql.Date 只存储日期数据不存储时间数据 // 会丢失时间数据 preparedStatement.setDate(1, new java.sql.Date(date.getTime())); //可以这样来处理 preparedStatement.setTimestamp(1, new java.sql.Timestamp(new java.util.Date().getTime...原创 2014-04-11 09:40:24 · 723 阅读 · 0 评论 -
WebService服务端开发
概述BDF中WebService模块采用Spring WS2实现,采用Contract First开发模式,基于WebService的Username token profile v1.0标准认证方 式对客户端调用进行合法性认证,同时提供基于标准Spring Security的WebService权限管理机制,可以与BDF安全模块无缝接合,实现以角色为核心的WebService权限控制...原创 2014-09-02 11:05:17 · 520 阅读 · 0 评论 -
Jaxb2 实现JavaBean与xml互转
一、简介 JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项可以根据XML Schema产生Java类的技术。该过程中,JAXB也提供了将XML实例文档反向生成Java对象树的方法,并能将Java对象树的内容重新写到 XML实例文档。 Jaxb 2.0是JDK 1.6的组成部分。我们不需要下载第三方jar包...原创 2014-09-02 10:26:38 · 171 阅读 · 0 评论 -
java.sql.SQLException: 违反协议异常的一种解释
一次做应用升级出现了一个问题,描述如下: 升级分为两块,一块是数据库结构变更(表结构增加新字段);一块是应用程序的升级。 应用环境为:jboss4.0.5 + ibatis + spring 数据源在jboss的oracle-ds.xml文件中进行配置,通过spring的jndi方式进行查找 。 我先将数据库进行升级,更改表结构(增加字段),因为应用中的ibatis的查询采用的...原创 2015-02-06 10:10:59 · 6690 阅读 · 0 评论 -
java命令执行jar包的方式
大家都知道一个java应用项目可以打包成一个jar,当然你必须指定一个拥有main函数的main class作为你这个jar包的程序入口。 具体的方法是修改jar包内目录META-INF下的MANIFEST.MF文件。 比如有个叫做test.jar的jar包,里面有一个拥有main函数的main class:test.someClassName我们就只要在MANIFEST....原创 2014-07-21 15:29:43 · 115 阅读 · 0 评论 -
JAVA 解析JSON格式数据
1.解析JSON格式数据需要的JAR包: commons-beanutils.jar commons-collections-3.1.jar commons-lang-2.0.jar commons-logging.jar ezmorph-1.0.6.jar json-lib-2.4-jdk15.j...原创 2015-01-14 09:22:23 · 137 阅读 · 0 评论 -
Java 编程下字符串的 16 位、32位 MD5 加密
package cn.sunzn.md5;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;public class Str2MD5 { public static void main(String[] args) { MD5("su...原创 2015-01-05 15:52:22 · 117 阅读 · 0 评论