- 博客(28)
- 资源 (10)
- 收藏
- 关注
原创 【openfire添加好友流程梳理】
由于项目中需要改造openfire添加好友流程,所以梳理了一份报文和表字段流程关系:1.1 从Presence的Tpye说起unavailable, 下线subscribe, 订阅subscribed, 同意订阅unsubscribe, 取消订阅unsubscribed, 拒绝订阅probe,探测error;错误说明:用户添加删除好友是发送P
2013-11-07 17:14:09
7694
转载 如何让tomcat调用64bit的jre
一、安装服务在命令行中进入/Tomcat路径/bin/,执行“service.bat install”:说明:1、服务名和显示名称:service.bat中设置了默认的服务名称,不同版本分别命名为Tomcat4、Tomcat5、Tomcat6,如果需要自定义服务名或服务的显示名称,可在service.bat中修改SERVICE_NAME或PR_DISPLAYNAME;2
2013-10-15 13:33:06
2157
转载 openfire插件开发(2)
本文出自hoojo的博文:http://www.cnblogs.com/hoojo/archive/2013/03/29/openfire_plugin_chatlogs_plugin_.html#commentform 上一篇文章介绍到怎么在自己的Java环境中搭建openfire插件开发的环境,同时介绍到怎样一步步简单的开发openfire插件。一步步很详细的介绍到简单插件
2013-07-26 17:54:26
1803
转载 Openfire插件开发(1)
本文出自hoojo的博客: http://www.cnblogs.com/hoojo/archive/2013/03/07/2947502.html#top这篇是简单插件开发,下篇聊天记录插件。开发环境:System:WindowsWebBrowser:IE6+、Firefox3+JavaEE Server:tomcat5.0.2.8、tomcat6I
2013-07-26 17:47:56
799
转载 打包jar时Class-Path的配置方式
1. Manifest-Version、Main-Class和Class-Path后面跟着一个英文的冒号,冒号后面必须跟着一个空格,然后才是版本号、类和ClassPath。2. Class-Path中的各项应使用空格分隔,不是逗号或分号。3. Class-Path中如果有很多项,写成一行打包的时候会报错line too long,这时需要把Class-Path分多行写。注意:从第二行开始,
2013-06-25 11:13:32
1893
原创 浏览器会话session
任飞(317847452) 10:41:48session主要用在登录的时候获取用户属性,设置失效时间是为了控制用户数,在用户不操作系统的时候session会把它剔除掉,服务器的会话关闭。当然如果有session 的话也可以让服务器记住哪个用户登录了,如果有相同用户登录的时候可以提示出该用户已经登录(session没过期的情况下)任飞(317847452) 10:43:07
2013-04-08 10:39:50
607
原创 请慎用spring-ClassPathXmlApplicationContext手动加载spring配置文件
在用spring做数据源配置的时候,如果代码中有用ClassPathXmlApplicationContext去加载spring配置文件,那么每次运行到此处代码,spring都会重新获得一个数据库连接。如果浏览量太大就会导致超出数据库连接会话上写的错误,比如oracle会报出ORA-12519错误,临时修改数据库连接数治标不治本。处理方式;1、将需要用ClassPathXmlAppli
2012-12-28 14:26:07
11468
原创 java为什么要将属性私有化
属性私有化遵循了Java面向对象的封装概念。实现封装的步骤有:(1)修改属性的可见性来限制对属性的访问。(2)为每个属性创建一对赋值方法和取值方法,用于对这些属性的访问。(3)在赋值和取值方法中,加入对属性的存取限制。这就是为什么java中pojo的属性都是private的,而不像C++,C#那样public的。只是java封装概念。
2012-12-02 17:59:24
3450
转载 Spring MVC 3 深入总结
一、前言:大家好,Spring3 MVC是非常优秀的MVC框架,由其是在3.0版本发布后,现在有越来越多的团队选择了Spring3 MVC了。Spring3 MVC结构简单,应了那句话简单就是美,而且他强大不失灵活,性能也很优秀。官方的下载网址是:http://www.springsource.org/download (本文使用是的Spring 3.0.5版本)
2012-11-28 22:31:28
628
原创 互联网常用网络协议(不断更新,完善)
网络协议7层应用层中就是开发中比较常见的协议。HTTP协议单向,服务器不能主动发信息,也就衍生了comet等技术,来模拟服务器push。对于即时通讯比较常用的协议xmpp,socket通信比较独立可实现双向通信,也就是即时通讯软件早起大多使用socket的原因。
2012-11-21 18:29:17
4735
转载 1.2为什么,何时使用ActiveMQ
原文地址:点击这里1.2使用ActiveMQ:为什么,何时 时间回到2003年,一群开源开发者集合在一起形成了Apache Geronimo。之后,他们发现当前没有好用的使用BSD-style许可协议的消息代理器。Geronimo是由于java EE兼容性需要一个JMS实现。所以一些开发者开始讨论其可能性。拥有丰富MOMs经验甚至自己创建过一些MOMs的这些开发者
2012-10-22 23:42:06
1077
转载 有关保存文件时的编码选项与html/jsp页面设定字符编码的配置
原文地址:http://jkhandsome12-163-com.iteye.com/blog/750469分两种情况介绍 注:首先,各位得对一次 请求/响应 的流程有基本认识,即:浏览器发出请求--》服务器接收并处理请求--》将html形式的页面返回(响应)给浏览器,一次 请求/响应 完毕! 静态页面(html):
2012-10-22 11:08:28
770
转载 JSP编码属性pageEncoding与contentType的区别和联系
原文地址:JSP编码属性pageEncoding与contentType的区别和联系作者:緞仟琦pageEncoding:设置JSP源文件和响应正文中的字符集编码。contentType:设置JSP源文件和响应正文的字符集编码及MIME类型。可见,pageEncoding和contentType都可以设置JSP源文件和响应正文中的字符集编码。但也有区别:设置JSP源文件
2012-10-22 10:48:48
590
原创 struts1+struts2+spring实例化action的线程安全问题
struts1实例化action是单例的,struts2不是单例,每次需要重新new一个action。struts1的form是单独的,所以感觉不出来,其实是单例的,也正是form单独所以允许单例。struts2的form是和action 在一起,如果是单利的话form数据就存在缓存了。 spring可以控制实例化action是否单例,如果action交给spring实例化的话默认
2012-10-17 11:19:32
1375
转载 Web页面实时刷新技术探讨
一、总述随着网络技术的飞速发展,使用B/S结构来实现项目应用已经越来越多,而实时监控一直都是多数行业软件所必备的功能,由此使用Web页面来实现实时监控成了一种必然的需求。 二、实时刷新技术1、传统的页面刷新方式传统的页面刷新方式很多,常见的有页面间隔一定的时间自动刷新、ActiveX控件、Applet等。采用页面间隔一定的时间自动刷新的方式,是在网页的头部加入一下代码:
2012-10-15 11:34:25
17245
转载 Quartz使用
原文地址:http://blog.youkuaiyun.com/yefriendly/article/details/2490789Spring中使用Quartz的2种方法开发环境:Spring2.0。如果包类没有Quartz包,则需要加入到类路径。A:extends QuartzJobBean方法1:定义任务(extends QuartzJobBean)package onlyf
2012-10-08 13:44:04
461
转载 TimerTask使用
原文地址:http://blog.youkuaiyun.com/yefriendly/article/details/2490697任务计划 对于任务计划定时执行,JDK提供了java.util.Timer与java.util.TimerTask类。而Timer功能有限,只能指定任务与任务之间的周期,无法指定某个时间点定时执行任务,可以使用Quartz,它提供了更多的任务计划功能。1:使
2012-10-08 10:42:16
483
转载 spring中集成TimerTask执行定时任务
原文地址:http://copperfield.iteye.com/blog/1164258Spring对Timer的支持的核心是由ScheduledTimerTask和TimerFactoryBean类组成的。 ScheduledTimerTask类是对TimerTask的包装器实现,这样你就可以为这个任务定义触发器信息。使用 TimerFactoryBean类,你可以让Sp
2012-10-08 10:41:24
831
转载 Tomcat和Websphere的区别
博文原址:http://tech.it168.com/a2009/0701/598/000000598859.shtml【IT168 技术文章】 (一)JSP的中文乱码问题 其根源在于:Web容器(Tomcat)默认的字符处理编码是iso-8859-1,对于需要在浏览器页面上显示中文的JSP程序, 但在程序中并没有指定中文的字符集,那么中文将在浏览器页面
2012-10-08 10:18:44
929
原创 ibatis模糊查询的like '%$name$%'的sql注入避免
ibatis模糊查询的like '%$name$%'的sql注入避免。在用ibatis进行模糊查询的时候很多同学习惯用like '%$name$%'的方式,其实这种方式会造成sql注入。ibatis对于$符号的处理是默认不加’‘号的,所以如果传入的参数是:1'或者是1231%' or 1%' = '1这些形式就回造成注入危险。解决是避免用like '%$name$%',可以进行字符的拼
2012-09-27 17:01:17
9567
原创 IBATS如何调用mysql/oracle的function
网上大多是ibats对oracle存储过程和函数的配置,由于oracle驱动支持在java代码中用call调用function,所以网上的配置也是正确的: <parameter property="result" jdbcType="VARCHAR" javaType="java.lang.String" mode="OUT" /> <
2012-07-30 16:57:54
1005
原创 mysql insert语句精辟之处
1.使用INSERT插入多条记录这里并不是我们所想insert into select语法,mysql提供了另一种解决方案,就是使用一条INSERT语句来插入多条记录。这并不是标准的SQL语法,所以无法在oracle等数据库中使用。语法:insert into tablename(col1,col2,col3) value (a,a,a),(b,b,b),(c,c,c),(d,d,d);这
2012-07-27 10:00:32
571
转载 mysql 调试和优化
mysql 调试和优化 1.调试 mysql 命令方法: mysql>explain select * from t1 \G 或: mysql>desc select * from t1 \G 主要查看以下属性: (1)type 是否用到索引 (2)key 索引名称 (3)rows 查询影响的行数(越少说明优化的越好) 2.用 mysql 命令获得一些服务优
2012-07-21 11:23:22
705
原创 mysql与oracle宏观区别
mysql:一个用户可以建立多个数据库,没有表空间感念。oracle:一个数据库可以建多个用户,一个数据库也可以建多个表空间,一个用户也可以对用多个表空间。例子:select * from XXXXXX.tablename;oracle会将XXXXXX解读为用户、mysql会将XXXXXX解读问库名。另外oracle对远程数据库可以用DBLI
2012-07-18 15:17:37
411
转载 jetty部署
就像把Derby作为DB嵌入到应用程序中一样,我们也可以在应用程序中非常方便地启动Jetty服务器,从而可以在很短时间内启动Web服务器,方便地调试应用程序。要达到在应用程序中启动调试Jetty,我们所要做的就只有以下三步。1、加入Jetty依赖的Jar包:要想让Java程序跑起来,首先肯定得有程序所依赖的Jar包才行。如果是用Maven构建工程,则只要加入以下依赖就行:
2012-07-18 11:06:36
775
原创 用mysql实现oracle sequence功能
由于mysq只有递增列的概念没有oracle的sequence功能,这样对于以前习惯用oracle数据库开发的程序员不太实用,尤其在要使用nextval在获取增长序列的时候。这样就设计一个能模拟oracle sequence的功能。 思路:我们可以用一张表来记录sequence数据,其实在使用oracle sequence的时候也类似是一张表,currentval、nextval和增长系数就
2012-07-18 11:03:09
9990
原创 java 获取某月份的具体天数(含润年不润年)
//方法1 String strDate = "2012-02"; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM"); Calendar calendar = new GregorianCalendar(); Date date1 = sdf.parse(strDate); calendar.setTime(d
2012-07-16 11:01:35
2036
windows-x86-1.6.0_18.tar.gz
2013-11-27
coherence.jar,coherence-work.jar,tangosol.jar
2012-11-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人