java
文章平均质量分 88
shendeguang
这个作者很懒,什么都没留下…
展开
-
两对象间的属性复制
业务系统中经常需要两个对象进行属性的拷贝,不能否认逐个的对象拷贝是最快速最安全的做法,但是当数据对象的属性字段数量超过程序员的容忍的程度,代码因此变得臃肿不堪,使用一些方便的对象拷贝工具类将是很好的选择。性能对比: BeanCopier > PropertyUtils > BeanUtils. 其中BeanCopier的性能高出另外两个100数量级。目前流行的较为公用认可的工具转载 2017-11-10 09:40:55 · 4263 阅读 · 0 评论 -
生成缩略图
用户上传图片然后生成缩略图显示。以下的代码是本人修改后的。提供给需要的朋友参考参考 ImageHandlerServlet 类 Java代码 package com.web.util; import java.awt.image.BufferedImage; import javax.servlet.ServletException转载 2014-12-25 22:32:51 · 459 阅读 · 0 评论 -
java.util.Date和java.sql.Date的区别及应用
java.util.Date和java.sql.Date的区别及应用java.util.Date 就是在除了SQL语句的情况下面使用java.sql.Date 是针对SQL语句使用的,它只包含日期而没有时间部分它都有getTime方法返回毫秒数,自然就可以直接构建java.util.Date d = new java.util.Date(sqlDate.getTim转载 2014-03-20 21:07:26 · 470 阅读 · 0 评论 -
jvm cooamds
注:在DOS命令窗口,输入java -X,可看到全部参数,不过是英文的 -Xmixed mixed mode execution (default) -Xint interpreted mode execution only -Xbootclasspath: set search path for b转载 2014-01-16 22:32:08 · 529 阅读 · 0 评论 -
JVM memory limited
JVM内存限制(最大值)首先JVM内存限制于实际的最大物理内存(废话!呵呵),假设物理内存无限大的话,JVM内存的最大值跟操作系统有很大的关系。简单的说就32位处理器虽然可控内存空间有4GB,但是具体的操作系统会给一个限制,这个限制一般是2GB-3GB(一般来说Windows系统下为1.5G-2G,Linux系统下为2G-3G),而64bit以上的处理器就不会有限制了。转载 2014-01-16 21:39:13 · 565 阅读 · 0 评论 -
HibernateTemplate HibernateDaoSupport sessionfactory
HibernateTemplate HibernateTemplate是Spring提供的一个就Hibernate访问持久层技术而言、支持Dao组件的一个工具。HibernateTemplate提供持久层访问模板,应用HibernateTemplate无须实现特定的接口,它只需要提供一个sessionFactory的引用就可以执行持久化操作。 该模板无需打开sessio转载 2014-01-09 22:56:05 · 740 阅读 · 0 评论 -
Quartz简单实例
定时执行程序-Quartz简单实例1、加jar包:Quartz自己quartz-1.8.3.jar和依赖包commons-logging.jar 、slf4j-log4j12-1.5.10.jar 、slf4j-api-1.5.10.jar2、一个类搞定!!!,直接runimport org.quartz.CronTrigger; import org.quartz.Jo转载 2014-01-09 22:42:00 · 1533 阅读 · 0 评论 -
java开源调度调度框架
Quartz Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的日程序表。Jobs可以做成标准的Java组件或 EJBs。Quartz的最新版本为Quartz 1.5.0。更多Quartz信息转载 2014-01-04 23:49:32 · 4038 阅读 · 0 评论 -
几种任务调度的 Java 实现方法与比较
前言任务调度是指基于给定时间点,给定时间间隔或者给定执行次数自动执行任务。本文由浅入深介绍四种任务调度的 Java 实现:TimerScheduledExecutor开源工具包 Quartz开源工具包 JCronTab此外,为结合实现复杂的任务调度,本文还将介绍 Calendar 的一些使用方法。回页首Timer相信大家都已经转载 2014-01-04 23:43:08 · 857 阅读 · 0 评论 -
java调用命令行Runtime.getRuntime().exec()阻塞问题
先上代码[java] view plaincopyprint?Process process = Runtime.getRuntime().exec(cmds); InputStream in = process.getInputStream(); StringBuilder sBuilder = new StringBuilde转载 2014-01-04 23:08:00 · 2746 阅读 · 0 评论 -
缩略图两种方法
方法一:import javax.imageio.ImageIO;import javax.imageio.IIOException;import java.awt.image.BufferedImage;import java.awt.Image;import java.io.File;import java.awt.image.AffineTransformOp;转载 2014-12-25 22:33:58 · 751 阅读 · 0 评论 -
更改eclipse中SVN用户名及密码
两种解决办法: 1. 通过删除SVN客户端的账号配置文件 1) 查看你的Eclipse中使用的是什么SVN Interface(中文:svn接口)windows > preference > Team > SVN 在右边的设置面板中可以看到SVN Interface或中文的svn接口一栏,Client的选项框中显示的就是你当前用的svn转载 2017-11-10 09:10:00 · 9363 阅读 · 0 评论 -
spring 定时任务 taskScheduler详解
spring 3.0版本后,自带了一个定时任务工具,而且使用简单方便,不用配置文件,可以动态改变执行状态。也可以使用cron表达式设置定时任务。1、被执行的类要实现Runnable接口2、TaskScheduler 任务调度接口TaskScheduler是一个接口TaskScheduler接口下定义了6个方法schedule(Runnable tas转载 2017-04-05 09:44:28 · 6096 阅读 · 0 评论 -
java.lang.ThreadLocal类研究
一、概念ThreadLocal即线程局部变量其实的功用非常简单,就是为每一个使用该变量的线程都提供一个变量值的副本,因此,每一个线程都可以独立地改变自己的副本,而不会和其它线程的副本冲突。线程死亡之后,该线程的所有副本都会被垃圾回收(除非存在对这些副本的其他引用)。线程局部变量(ThreadLocal)原理很简单,在ThreadLocal类中有一个Map,用于存储每一个线程的变量的副本。转载 2017-04-01 15:24:50 · 376 阅读 · 0 评论 -
threadlocal
1、ThreadLocal类:它主要由四个方法组成get(),initialValue(),set(T),remove(),其中值得注意的是initialValue(),该方法是一个protected的方法,显然是为了子类重写而特意实现的。该方法返回当前线程在该线程局部变量的初始值,这个方法是一个延迟调用方法,在一个线程第1次调用get()时才执行,并且仅执行1次。ThreadLocal中转载 2017-04-01 15:41:12 · 207 阅读 · 0 评论 -
深入研究java.lang.ThreadLocal类
深入研究java.lang.ThreadLocal类 一、概述 ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是threadlocalvariable(线程局部变量)。也许把它命名为ThreadLocalVar更加合适。线程局部变量(ThreadLocal)其实的功用非常简单,就是为每一转载 2017-03-31 14:25:39 · 360 阅读 · 0 评论 -
Java并发编程:Synchronized及其实现原理
Java并发编程系列:Java 并发编程:核心理论 Java并发编程:Synchronized及其实现原理Java并发编程:Synchronized底层优化(轻量级锁、偏向锁)Java 并发编程:线程间的协作(wait/notify/sleep/yield/join) Java 并发编程:volatile的使用及其原理一、Synchroniz转载 2017-03-31 14:12:32 · 258 阅读 · 0 评论 -
jBPM4.4 maven-dependencies
jBPM4.4 maven-dependenciesjBPM4.4 学习笔记 (一) maven-dependencies1) 开始学习jBPM4.4了,打开官网下载的jBPM4.4的发行包一看,发现给的依赖的jar包实在太多了,我估计有很多都是可选的。并且大多数包连版本号都没有。2) 还是决定用maven来管理。经过查找发现,maven的中央仓库里jboss的东西不转载 2016-06-19 08:46:44 · 1885 阅读 · 0 评论 -
java.lang.Process 阻塞问题
Process 类型对象的 waitFor() 方法的时候当前线程会被阻塞掉,因为InputStream in = Process.getInputStream();或 InputStream err = Process.getErrorStream(); 这2个流中的一个会被阻塞住,所以解决的办法可以是用多线程来解决,可以参看http://www.javaworld.com/javaworld/转载 2014-01-04 23:03:03 · 4180 阅读 · 0 评论 -
ProcessBuilder 和 Runtime
ProcessBuilder.start() 和 Runtime.exec() 方法都被用来创建一个操作系统进程(执行命令行操作),并返回 Process 子类的一个实例,该实例可用来控制进程状态并获得相关信息。Process 类提供了执行从进程输入、执行输出到进程、等待进程完成、检查进程的退出状态以及销毁(杀掉)进程的方法。创建进程的方法可能无法针对某些本机平台上的特定进程很好地工作转载 2014-01-01 17:36:46 · 747 阅读 · 0 评论 -
重写equals方法
public class MenuTest { public MenuTest(String name, String title) { super(); this.name = name; this.title = title; } private String name; private String title; public String getNam转载 2013-08-28 22:57:15 · 557 阅读 · 0 评论 -
ArrayList的contains
假设定义一个YourObject类,里面有个m_value变量。然后去实例化两个YourObject对象,obj1和obj2。如果obj1和obj2的m_value值是一样的。我们先将obj1放入一个ArrayList中,然后判断obj2是否包含在ArrayList中,直接调用ArrayList的contains方法是不行的。 解决办法就是在YourObject中重写equals方法。转载 2013-08-28 22:32:08 · 589 阅读 · 0 评论 -
tomcat dbcp
http://www.oschina.net/code/snippet_12_767转载 2013-05-21 15:01:46 · 521 阅读 · 0 评论 -
java
(1)jre本身不包含servlet-api,所以不能运行jsp和servlet。Tomcat的common/lib内包含servlet-api.jar,所以能运行jsp和servlet,所以说Tomcat是一个Servlet容器。Servlet是J2EE规范的其中一项内容,所以可以理解为什么j2se的jre没有包含servlet-api,那么J2EE SDK和J2EE jre内有吗?转载 2013-05-21 14:35:46 · 563 阅读 · 0 评论 -
integer.bytevalue()
byteValue()保存的是低位的1个字节得到的结果是0x00转载 2013-05-18 12:52:20 · 2478 阅读 · 1 评论 -
catalina-home catalina-base
到底CATALINA_HOME和CATALINA_BASE有什么区别呢,之前因为都是小打小闹的在服务器上安装一个tomcat就得了,然后根据前人的配置,将CATALINA_HOME和CATALINA_BASE两个值设为了tomcat的目录(其实此处描述很不精确),今天无意间看到了公司的安装文档说明,里面提到了多个tomcat实例运行的配置,才弄明白到底这两者之间有什么区别。我们可以从T转载 2013-04-19 15:26:03 · 721 阅读 · 0 评论 -
log4j日志文件保存位置
从网上简单搜索了一下,发现有三种介绍的方法。总结在这里1.解决的办法自然是想办法用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如:log4j.appender.logfile.File=${WORKDIR}/logs/app.log其中“${WORKDIR}/”是个变量,会被System Property中的“WORKDIR”的值代替。这样,需转载 2013-04-19 15:09:42 · 1923 阅读 · 0 评论 -
java(web)绝对相对路径
1.基本概念的理解 绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如: C:\xyz\test.txt 代表了test.txt文件的绝对路径。http://www.sun.com/index.htm也代表了一个 URL绝对路径。 相对路径:相对与某个基准目录的路径。包含Web的相对路径(HTML中的相对目录),例如:在 S转载 2013-04-19 14:01:31 · 631 阅读 · 0 评论 -
java
XML方面91 、 xml 有哪些解析技术 ? 区别是什么 ?答: 有 DOM,SAX,STAX 等DOM: 处理大型文件时其性能下降的非常厉害。这个问题是由 DOM 的树结构所造成的,这种结构占用的内存较多,而且 DOM 必须在解析文件之前把整个文档装入内存 , 适合对 XML 的随机访问 SAX: 不现于 DOM,SAX 是事件驱动型的 XML 解析方式。它顺序读取 XML 文件,转载 2013-04-26 18:27:42 · 545 阅读 · 0 评论 -
ArrayList和HashSet中contains方法的不同
ArrayList和HashSet中contains方法的不同首先来看一道笔试题:view plaincopy to clipboardprint?import java.util.ArrayList; import java.util.HashSet; public class Foo { int value;转载 2013-08-28 22:44:12 · 1172 阅读 · 0 评论 -
HashSet的contains方法
关于HashSet的发现:1:HashSet是一个Set,也就是所谓的集合。集合的概念是元素在集合中无序、唯一。无序对于计算机来说没有什么意义,因为计算机总要按照一定的顺序存储对象。唯一是怎么实现的呢?名字上说的已经很清楚了。HashSet,就是通过其中的元素(对象)的hashconde来区分对象是否唯一的。所以,HashSet的对象中着一个集合中对象的hashcode的list,每次执行se转载 2013-08-28 22:54:26 · 7731 阅读 · 0 评论 -
No setter found for property 'packagesToScan' of class 'org.springframework.orm.hibernate3.annotatio
问题:No setter found for property 'packagesToScan' of class 'org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean'原因是在类库lib中org.springframework.orm.hibernate3.annotation.Anno转载 2013-09-01 11:42:25 · 2046 阅读 · 0 评论 -
java程序中给Kettle传参数
import org.pentaho.di.core.exception.KettleException;import org.pentaho.di.core.logging.LogWriter;import org.pentaho.di.core.util.EnvUtil;import org.pentaho.di.job.Job;import org.pentaho.di.jo转载 2013-12-05 21:58:09 · 3193 阅读 · 0 评论 -
JSP 连接远程LDAP 实现用户名和密码验证
package com.test.ldap;import java.util.Hashtable;import javax.naming.AuthenticationException;import javax.naming.Context;import javax.naming.NamingEnumeration;import javax.naming.NamingE转载 2013-12-05 22:21:10 · 2020 阅读 · 0 评论 -
JBPM工作流引擎测试的一个例子
本文提供使用jBPM工作流引擎测试的一个例子。提供一个Persistence,用于存储全局的变量值,方便存储和获取public class Persistence { private static Map variables = null; private static String tmpfile = System.getProperty("java.io.tmpdir") + "/转载 2013-12-05 22:14:03 · 856 阅读 · 0 评论 -
Kettle--数据获取并转换
需求:kettletest1数据库中有table_source数据表,结构如下:Id 主键t_id 数据时间 part_id 实例ID yg 数据字段1wg 数据字段2 该表中的数据对于不同的实例ID,一分钟一条数据,t_id字段表示数据的时间,精确到分钟。kettletest2数据库中有table_target数据表,结构如下:Id 主键marketdat转载 2013-12-05 22:07:00 · 11519 阅读 · 0 评论 -
java应用程序中集成Kettle
果你需要在自己的Java应用程序中集成Kettle ,一般来说有两种应用需求,一种是通过纯设计器来设计ETL转换任务,然后保存成某种格式,比如xml或者在数据库中都可以,然后自己调用程序解析这个格式,执行这种转换,是比较抽象的一种执行方式,ETL里面转换了什么东西我们并不关心,只关心它有没有正常执行。另一种是通过完全编程的方式来实现,详细的控制每一个步骤,需要知道转换执行的成功与否,这种方式可能需转载 2013-12-05 22:03:57 · 1154 阅读 · 0 评论 -
Java程序调用kettle中的job及trans
package org.gdh.kettle.transform;import org.pentaho.di.core.KettleEnvironment;import org.pentaho.di.core.exception.KettleException;import org.pentaho.di.core.exception.KettleXMLException;i转载 2013-12-05 21:55:04 · 3413 阅读 · 0 评论 -
Xms Xmx PermSize MaxPermSize
Eclipse崩溃,错误提示:MyEclipse has detected that less than 5% of the 64MB of Perm Gen (Non-heap memory) space remains. It is strongly recommendedthat you exit and restart MyEclipse with new virtual ma转载 2013-12-10 21:12:15 · 563 阅读 · 0 评论 -
java.lang.NoSuchFieldError: TRACE
java.lang.NoSuchFieldError: TRACEat org.jboss.logging.Log4jLoggerPlugin.isTraceEnabled(Log4jLoggerPlugin.java:85) at org.jboss.logging.Logger.isTraceEnabled(Logger.java:122)转载 2013-09-01 11:29:22 · 1326 阅读 · 0 评论