![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
j2ee
文章平均质量分 73
wsq198760
这个作者很懒,什么都没留下…
展开
-
读取Properties文件读取,路径,空格,中文问题读取Properties文件和路径问题
读取Properties文件读取,路径,空格,中文问题读取Properties文件和路径问题 如:读取jdbc.properties文件 路径 读取的类位于:package com.query.util; getClass().getResourceAsStream(jdbc.properties) 则jdbc.properties描述的路径是相对于这个类所在包的根路径而言的, ...原创 2011-07-09 20:56:37 · 203 阅读 · 0 评论 -
[Servlet] 配置listener监听器
1、了解如何使用HttpSessionListener监听session的销毁。2、了解如何使用HttpSessionBindingListener监听session的销毁。一、使用HttpSessionListener编写一个OnlineUserListener。view plaincopy to clipboardprint?package anni; import jav...原创 2011-07-09 21:05:42 · 76 阅读 · 0 评论 -
Session详解
一、什么是session在我的经验里,session这个词被滥用的程度大概仅次于transaction,更加有趣的是transaction与session在某些语境下的含义是相同的。session,中文经常翻译为会话,其本来的含义是指有始有终的一系列动作/消息,比如打电话时从拿起电话拨号到挂断电话这中间的一系列过程可以称之为一个session。有时候我们可以看到这样的话“在一个浏览器会...原创 2011-07-09 21:06:12 · 60 阅读 · 0 评论 -
try、catch&finally的执行顺序
这篇文章主要讨论的是try、catch、finally模块的执行顺序。先看下面一个例子: public static String doTrySeq(){ try { System.out.println("try"); //1 int i = 12/0; //...原创 2011-07-09 21:06:32 · 81 阅读 · 0 评论 -
replace和replaceAll的区别
阅读文章前,请先做道题(也是因为这道题,让我写下该文章):public static void main(String[] args) { String classPath = "java.lang.String"; System.out.println(classPath.replaceAll(".", "/")); } ...原创 2011-07-09 21:07:24 · 73 阅读 · 0 评论 -
java中的枚举
1. 关于 Java Enum: 学过 C/C++ 等语言的人,应该都对 Enum 类型略知一二。 Enum 一般用来表示一组相同类型的常量。如性别、日期、月份、颜色等。 对这些属性用常量的好处是显而易见的,不仅可以保证单例,且比较时候可以用 ”==” 来替换 equals , 是一种好的习惯。 JDK1.5 之前没有 Enum 这个类型,那时候一般用接口常量来替代。有了 JavaEnu...原创 2011-07-09 21:07:47 · 64 阅读 · 0 评论 -
一道面试题引发的血案
在javaEye上看到一道面试题,挺有趣,自己做了一下(题目:http://www.javaeye.com/topic/545378) 要求打印出:int i=5; 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 ...原创 2011-07-09 21:08:18 · 126 阅读 · 0 评论 -
Java IO浅析
什么是流: 流是一个抽象的概念。当Java程序需要从数据源读取数据时,会开启一个到数据源的流。数据源可以是文件,内存或者网络等。同样,当程序需要输出数据到目的地时也一样会开启一个流,数据目的地也可以是文件、内存或者网络等。流的创建是为了更方便地处理数据的输入输出。 流分为字节流和字符流。字节流也称为原始数据,需要用户读入后进行相应的编码转换。而字节流的实现是基于自动转换的,读取数...原创 2011-07-09 21:09:42 · 60 阅读 · 0 评论 -
正确使用Java I/O输出和读入数据
前言 Java的I/O系统使用“流”来处理各种类型的输入、输出数据的任务。 在传输数据的过程中,我们需要判断流中传输的数据何时结束这样的问题。这对于我们正确地发送和接收数据是非常关键的。 如何判断流的末尾和批数据的末尾,是解决这个问题的关键。本文就是要深入地分析Java I/O输入输出的工作原理,保证我们能够正确地执行数据的发送和接收! Java I/O任务 一个Java的I/O任务,创建了一个连...原创 2011-07-09 21:10:02 · 79 阅读 · 0 评论 -
java WebService例子
一、Axis安装 1、环境 J2SE SDK 1.3 or 1.4: 我使用 1.4.2 Servlet Container: 我使用的Tomcat 5.0 2、到 http://ws.apache.org/Axis/网站下载Axis安装包3、解压缩安装包,将Axis_UNZIP_PATH\Axis-version\webapps下的Axis包拷贝到TOMCAT_HOME\web...原创 2011-07-09 21:05:18 · 67 阅读 · 0 评论 -
JS中如何使用Cookie
1、关于JS设置Cookie的说明在Javascript脚本里,一个cookie 实际就是一个字符串属性。当你读取cookie的值时,就得到一个字符串,里面当前WEB页使用的所有cookies的名称和值。每个cookie除了 name名称和value值这两个属性以外,还有四个属性。这些属性是: expires过期时间、 path路径、 domain域、以及 secure安全。Expires...原创 2011-07-09 21:03:34 · 203 阅读 · 0 评论 -
cookie文件说明
1、Cookie文件的实质Cookie实际上是Web服务端与客户端(典型的是浏览器)交互时彼此传递的一部分内容,内容可以是任意的,但要在允许的长度范围之内。客户端会将它保存在本地机器上(如IE便会保存在本地的一个txt文件中),由客户端程序对其进行管理,过期的Cookie会自动删除。每当客户端访问某个域下某个目录中的网页时,便会将保存在本地并且属于那个域下对应目录的有效Cookie信息附在...原创 2011-07-09 21:02:35 · 164 阅读 · 0 评论 -
ResourceBundle的中文乱码
1.machine_zh_CN.propertiesp1=冰箱 p2=洗衣机 p3=电视机2.测试程序Test.javaview plaincopy to clipboardprint?public class Test { public static void main(String args[]) throws Exception{ Resource...原创 2011-07-09 20:57:32 · 785 阅读 · 0 评论 -
java中对日期的操作:DATE,DateFormat,SimpleDateFormat的方法的使用
import java.text.*; //导入包import java.util.*; //导入包{/***获取当前时间 * @author 【轰隆隆】*不熟悉的朋友看看API和下面的实例就会慢慢明白使用方法了*/public static void main(String[] args) { System.out.println("01:"+new Date()); ...原创 2011-07-09 20:57:59 · 115 阅读 · 0 评论 -
Spring aop expression 星号(*)
<aop:config> <aop:pointcut id="allMethod" expression="execution(* *..BookManager.save(..))"/> </aop:config>execution(modifiers-pattern? ret-type-pattern declaring-type-patt...原创 2011-07-09 20:58:27 · 61 阅读 · 0 评论 -
巧用SQLQuery中的addScalar
当我们用HQL进行子查询的时候,如select * from Tree where pid in (select id from Tree,此时HIBERANTE就会报错,说什么*号错误之类的。但如果将*改为Tree类里的所有子段时就不会有问题了。就会像平时一样第一行数据返回一个Object[],然后你再根据Tree类里字段对Object[]数组里的值进行转换。这样一来比较麻烦。今天发现如果我SQ...原创 2011-07-09 20:58:52 · 117 阅读 · 0 评论 -
float精度丢失问题
现在我们就详细剖析一下浮点型运算为什么会造成精度丢失? 1、小数的二进制表示问题 首先我们要搞清楚下面两个问题: (1) 十进制整数如何转化为二进制数 算法很简单。举个例子,11表示成二进制数: 11/2=5 余 1 5/2=...原创 2011-07-09 20:59:17 · 190 阅读 · 0 评论 -
spring中rmi和httpInvoker的配置
对于客户端来说,和服务器端的通讯有很多种方式,不过我一般用的就是rmi或者httpInvoker。spring为多种远程调用都提供了包装:一。对于RMI来说 1、服务器端: <bean class="org.springframework.remoting.rmi.RmiServiceExporter"> <property name="serviceName"...原创 2011-07-09 20:59:43 · 122 阅读 · 0 评论 -
Hibernate批量处理
9.4 批量处理数据通常,在一个Session对象的缓存中只存放数量有限的持久化对象,等到Session对象处理事务完毕,还要关闭Session对象,从而及时释放Session的缓存占用的内存。批量处理数据是指在一个事务中处理大量数据。以下程序在一个事务中批量更新CUSTOMERS表中年龄大于零的所有记录的AGE字段:Transaction tx = session.beginTransactio...原创 2011-07-09 21:01:40 · 57 阅读 · 0 评论 -
spring定时器开发应用
开发spring定时器有多种方式,本篇文章主要应用JobBean-trigger,也是比较简单的一种 开发spring定时器的步骤:1、编写job类(封装定时器自动运行的任务),继承QuartzJobBean,实现executeInternal方法2、配置定时器 例如:<bean name="myAutoJobBean" class="org.springfra...原创 2011-07-09 21:02:07 · 64 阅读 · 0 评论 -
如何提高hibernate的运行效率
前面有篇文章,对比jdbc与hibernate效率那个快,明显是jdbc,所以,这篇文章主要对hibernate如果提高效率做个概括。网上有篇文章,写得不错,转载下来 1) 在处理大数据量时,会有大量的数据缓冲保存在Session的一级缓存中,这缓存大太时会严重显示性能,所以在使用Hibernate处理大数据量的,可以使用session.clear()或者sessio...原创 2011-07-09 21:10:25 · 166 阅读 · 0 评论 -
hibernate与jdbc的区别
刚开始学习JAVA时,认为Hibernate是一个很神圣的东西,好像是会了SSH,就能走遍全世界一样。记得曾经在枫叶面试的时候,我们几个同学出还说这个公司怎么这么的落后,还有JDBC,没有一点上进心。可是毕业以后才发现,却发现自已就像是井底之蛙一样。然而也不想做随风柳絮,所以决定好好的总结一下,JDBC与Hibernate的区别。 JDBC与Hibernate在性能上相比,JDBC灵活性有...原创 2011-07-09 21:10:57 · 76 阅读 · 0 评论 -
JAVA多线程同步wait、notify、synchronized
1 wait方法: 该方法属于Object的方法,wait方法的作用是使得当前调用wait方法所在部分(代码块)的线程停止执行,并释放当前获得的调用wait所在的代码块的锁,并在其他线程调用notify或者notifyAll方法时恢复到竞争锁状态(一旦获得锁就恢复执行)。 调用wait方法需要注意几点: 第一点:wait被调用的时候必须在拥有锁(即syn...原创 2011-07-09 21:11:43 · 73 阅读 · 0 评论 -
序列化
无意当中想到这个问题,然后google 一下。找到一篇对 serialization 介绍的文章,关于这个问题比较多的人解释是:hibernate有二级缓存,缓存会将对象写进硬盘,就必须序列化,以及兼容对象在网络中的传输 等等... 目的:将二级缓存中的内容持久化保存下来,便于恢复缓存的信息,hibernate的缓存机制通过使用序列化,断定应该是基于序列化的缓存,如没有serializ...原创 2011-07-09 21:17:47 · 56 阅读 · 0 评论 -
几种通讯协议的比较
一、综述本文比较了RMI,Hessian,Burlap,Httpinvoker,web service等5种通讯协议的在不同的数据结构和不同数据量时的传输性能。RMI是java语言本身提供的远程通讯协议,稳定高效,是EJB的基础。但它只能用于JAVA程序之间的通讯。Hessian和Burlap是caucho公司提供的开源协议,基于HTTP传输,服务端不用开防火墙端口。协议的规范公开,可...原创 2011-07-09 21:18:11 · 114 阅读 · 0 评论 -
HttpInvoker远程调用实例
一、服务器端:1、服务接口与实现类 Java代码 package org.eesite.bbs.remote; public interface IRemoteService { public String getString(String msg); } package org.eesite.b...原创 2011-07-09 21:18:37 · 126 阅读 · 0 评论 -
Hessian
Hessian是一个轻量级的remoting onhttp工具,使用简单的方法提供了RMI的功能. 相比WebService,Hessian更简单、快捷。采用的是二进制RPC协议,因为采用的是二进制协议,所以它很适合于发送二进制数据Hessian 介绍注意事项 在进行基于Hessian的项目开发时,应当注意以下几点: JAVA服务器端必须具备以下几点: ...原创 2011-07-09 21:19:40 · 83 阅读 · 0 评论 -
Hibernate的session.flush做了什么呢?
这是在一次事务提交时遇到的异常。 an assertion failure occured (this may indicate a bug in Hibernate, but is more likely due to unsafe use of the session) net.sf.hibernate.AssertionFailure: possible nonthreadsafe ac...原创 2011-07-09 21:20:29 · 64 阅读 · 0 评论 -
Method类invoke方法的使用
java.lang.reflect.Methodpublic Object invoke(Object obj,Object args[])参数:obj - 从中调用底层方法的对象,必须是实例化的对象args - 用于方法调用的参数,是个Object数组,因为参数有可能有多个返回:使用参数 args 在 obj 上指派该对象所表示方法的结果 例如:String result = (S...原创 2011-07-09 21:20:59 · 201 阅读 · 0 评论 -
saveToken(request)
Struts的Token(令牌)机制能够很好的解决表单重复提交的问题,基本原理是:服务器端在处理到达的请求之前,会将请求中包含的令牌值与保存在当前用户会话中的令牌值进行比较,看是否匹配。在处理完该请求后,且在答复发送给客户端之前,将会产生一个新的令牌,该令牌除传给客户端以外,也会将用户会话中保存的旧的令牌进行替换。这样如果用户回退到刚才的提交页面并再次提交的话,客户端传过来的令牌就和服务器端的令牌...原创 2011-07-09 21:21:34 · 259 阅读 · 0 评论 -
求质数的算法
求i到j之间的所有质数最笨的一种方法是把i到j之间的每一个数n,都拿出来,挨个循环用n除以从2到n-1的所有整数,如果期间有一个能整除,那么n是合数,继续下一个。第二种算法效率比这个就高了很多,利用的是一个定理——如果一个数是合数,那么它的最小质因数肯定小于等于他的平方根。比如,50,它的最小质因数是2,它的平方根是7.07xxx,2<=7.07xxx。大家可以多找几个合数试一下。也可以用反...原创 2011-07-09 21:22:02 · 237 阅读 · 0 评论 -
对象的序列化和反序列化
当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以二进制序列的形式在网络上传送。发送方需要把这个Java对象转换为字节序列,才能在网络上传送;接收方则需要把字节序列再恢复为Java对象。 把Java对象转换为字节序列的过程称为对象的序列化。 把字节序列恢复为Java对象的过程称为对象的反序列化。 对象的序列化主要有3种用途: 1) 把对象的字节...原创 2011-07-09 21:17:25 · 68 阅读 · 0 评论 -
spring机制
提到spring,第一印象就是DI与IOC,虽然有概念上的解释,但是要理解这些概念还是需要动手进行试验。如果要深入了解spring的原来,那么最先了解得就应该是spring容器。Spring提供了两种类型的IOC容器实现: 1.beanFactory: IOC 容器的基本实现。 2.ApplicationContext: 提供了更多的高级特性,是beanFactor...原创 2011-07-09 21:17:02 · 89 阅读 · 0 评论 -
如何让页面自动加载js文件
打开页面时,对比缓存中js中是否有需要加载的js,如果有直接用缓存中的js文件,不需加载;否则,则需要加载传入一个随机参数和使用验证码一样 在IE里 如果访问的URL在缓存中存在 浏览器不会再次加载 可以在引入时加个参数,这个参数一变化,就会去服务器加载js文件<script language="javascript" src="pages/ceyl/js/myJs.js?d...原创 2011-07-09 21:16:33 · 267 阅读 · 0 评论 -
使用HttpURLConnection来请求WEB资源
1:> URL请求的类别:分为二类,GET与POST请求。二者的区别在于: a:) get请求可以获取静态页面,也可以把参数放在URL字串后面,传递给servlet, b:) post与get的不同之处在于post的参数不是放在URL字串里面,而是放在http请求的正文内。2:> URLConnection的对象问题:URLConnection的对象,如下代码示...原创 2011-07-09 21:12:12 · 108 阅读 · 0 评论 -
jvm介绍(很好的一篇文章)
1 JVM简介 JVM是我们Javaer的最基本功底了,刚开始学Java的时候,一般都是从“Hello World”开始的,然后会写个复杂点class,然后再找一些开源框架,比如Spring,Hibernate等等,再然后就开发企业级的应用,比如网站、企业内部应用、实时交易系统等等,直到某一天突然发现做的系统咋就这么慢呢,而且时不时还来个内存溢出什么的,今天是交易系统报了StackOve...原创 2011-07-09 21:12:39 · 90 阅读 · 0 评论 -
HttpServlet单实例多线程的探讨
1、HttpServlet默认是单实例多线程的2、网上一直有人说实现SingleThreadModel接口就能实现单线程,由它的名字来看,确实很像,但却不是3、实现SingleThreadModel接口只能实现多实例,servlet是无法实现单线程的(暂时没发现有什么办法实现,如有错误,欢迎交流指正)为了验证上述的内容,我们来做个测试,代码如下: public class Dem...原创 2011-07-09 21:13:10 · 255 阅读 · 0 评论 -
Session.Clear()、Session.Abandon()的区别
Session.Clear()就是把Session对象中的所有项目都删除了,Session对象里面啥都没有。但是Session对象还保留。Session.Abandon()就是把当前Session对象删除了,下一次就是新的Session了。主要的不同之处在于当使用Session.Abandon时,会调用Session_End方法(InProc模式下)。当下一个请求到来时将激发S...原创 2011-07-09 21:13:34 · 119 阅读 · 0 评论 -
js四舍五入
/* * 四舍五入的相关问题 */ /* numObj.toFixed([fractionDigits]) * toFixed 方法返回一个以定点表示法表示的数字的字符串形式。 * 该字符串中小数点之前有一位有效数字,而且其后必须包含 fractionDigits 数字。 * 缺点:保留小数点后fractionDigits位时,fract...原创 2011-07-09 21:14:16 · 83 阅读 · 0 评论 -
Hql传中文参数出现乱码解决办法
Hql传中文参数出现乱码(同sql传中文参数出现乱码一样):解决方法为:1、采用占位符,然后setString2、将 hibernate.query.factory_class 属性设置成 org.hibernate.hql.classic.ClassicQueryTranslatorFactory 在spring配置文件中加入红色部分<bean id="sessionF...原创 2011-07-09 21:15:06 · 131 阅读 · 0 评论