
J2EE
文章平均质量分 81
usenrong
轻耘智科技
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
如何构建高性能服务端程序
接触过很多编程语言,接触过各种各样的服务器端开发,Java,Go,Ruby,Javascript等语言,Spring,Node.js,Rails等等常见服务器端框架和编程模型都有接触。这里谈一下我个人对高性能服务器端程序的一些看法,希望给各位读者一些认识。此外,阅读这篇文章,有如下几个前提:不谈硬件,不评论编程语言以及框架的好坏,不谈高级算法,可拍砖,拒绝喷子。 三个关键词 ...原创 2014-12-01 10:52:41 · 129 阅读 · 0 评论 -
浅析 内存泄漏 的原因
内存泄漏原因有很多种,比如:1.数据量过于庞大;死循环 ;静态变量和静态方法过多;递归;无法确定是否被引用的对象;2.虚拟机不回收内存(内存泄漏); 说白了就是程序运行要用到的内存大于虚拟机能提供的最大内存就发生内存溢出了。 内存溢出的问题要看业务和系统大小而定,对于某些系统可能内存溢出不常见,但某些系统还是很常见的解决的方法,一个是优化程序代码,如果业务庞大,逻辑复杂,尽量...原创 2012-09-04 08:56:44 · 137 阅读 · 0 评论 -
Tomcat内存溢出解决办法
使用Java程序从数据库中查询大量的数据时出现异常:java.lang.OutOfMemoryError: Java heap space在JVM中如果98%的时间是用于GC且可用的 Heap size 不足2%的时候将抛出此异常信息。JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置.JVM在启动的时候会自动设置Heap size的值,其初始空间(即-Xms)是物理内存的...原创 2012-09-03 09:52:17 · 145 阅读 · 0 评论 -
SVN Working Copy xxx locked 并 cleanup失败之解 :del lock /q/s
SVN 本地更新时,由于一些操作中断更新,如磁盘空间不够,用户取消。 可能会造成本地文件被锁定的情况。一般出现这种情况的解决方法:1、可以使用SVN clean up来清除锁定。2、如果不是本目录锁定,系统提示上一层目录锁定,需要到上一层或者根目录中清除。3.如果在根目录下都无法clean的话,一般采取的方法是另外找一个目录重新CHECKOUT。但有时有时SVN目录下可能有一些自己本...原创 2012-04-05 17:05:48 · 149 阅读 · 0 评论 -
SHOP++源码部署说明:
SHOP++源码部署说明:1、 安装MyEclipse、Tomcat、MySQL/Oracle/SQL Server2、 配置Tomcat、MySQL字符集编码格式为UTF-8,根据硬件环境设置Tomcat内存3、 导入SHOP++源文件至MyEclipse4、 通过MyEclipse将项目部署至Tomcat服务器5、 启动Tomcat服务器,打开浏览器访问项目地址(如: )6、 根据页面提示...原创 2012-03-16 10:27:35 · 139 阅读 · 0 评论 -
工作流引擎在业务系统中的集成方式和工作过程
工作流引擎实现抽象流程的流转,业务的实现在表单模块中完成。如报销流程,填写报销单,审核报销单,都对应一个业务模块,在业务模块中实现将数据保存到数据库表中,实现业务数据的持久化。工作流引擎负责将这些业务模块串起来,实现业务流的流转。 曾经的业务系统,业务流的流转通常是采用对状态字段的控制来实现的。当报销单填写完成后,单据状态为1,经理审核的时候,就查询出单据状态为1的记录,做...原创 2012-07-10 10:05:51 · 849 阅读 · 0 评论 -
mongoDB 使用手册
1、基本操作db.AddUser(username,password) 添加用户db.auth(usrename,password) 设置数据库连接验证db.cloneDataBase(fromhost) 从目标服务器克隆一个数据库db.commandHelp(name) returns the help for the commanddb.copyDatabase(fromdb,todb,f...原创 2012-03-02 16:55:51 · 271 阅读 · 0 评论 -
StringUtils详细介绍
public static void TestStr(){ //null 和 ""操作~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //判断是否Null 或者 "" //System.out.println(StringUtils.isEmpty(null)); //System.out.println(StringUtils.isNotEmpty(n...原创 2012-02-23 09:38:48 · 107 阅读 · 0 评论 -
struts2使用if标签判断字符串包含
很小的功能,记录下 <s:iterator value="top.activeActivityNames" id="aname"> ${aname } <s:if test="#aname.contains('分管')" > s </s:if> ..原创 2012-06-26 15:18:15 · 234 阅读 · 0 评论 -
openfire整合现有业务系统用户
openfire扩展小试 整合现有系统用户如果我想使用现有系统的用户/组(部门),而不想使用openfire再去管理一套用户/组,用openfire可以非常方便的整合现有系统用户。 注意:在集成成功后,使用的用户就是你集成系统的数据库,而不是你原来在openfire里配置的数据库了,原来的openfire数据库依然有有,只是用户表ofuser不不能用了,因为如果能用,那么用户账号就可能...原创 2012-06-05 14:30:41 · 157 阅读 · 0 评论 -
FreeMarker2.3.10中文手册―Programmer's Guide(中文版)
前言一、快速入门1.1、创建配置实例1.2、创建数据模型(Data Model)1.3、获取模版(template)1.4、把模版与数据模型合并1.5、完整的代码二、数据模型(Data Model)2.1、基础类型2.2、Scalar 类型(单值对应的Data Model)2.3、容器类型2.4、方法变量2.5、转换器变量2.6、节点变量...原创 2011-11-30 09:19:01 · 284 阅读 · 0 评论 -
FreeMarker基础知识 标签与使用
模板技术在现代的软件开发中有着重要的地位,而目前最流行的两种模板技术恐怕要算freemarker和velocity了,webwork2.2对两者都有不错的支持,也就是说在webwork2中你可以随意选择使用freemarker或velocity作为view,模板技术作为view的好处是很多,尤其和jsp比较起来优点更大,众所周知jsp需要在第一次被执行的时候编译成servlet,那么这个过程是...原创 2011-11-30 09:15:34 · 173 阅读 · 0 评论 -
Freemarker常用技巧
1,截取字符串有的时候我们在页面中不需要显示那么长的字符串,比如新闻标题,这样用下面的例子就可以自定义显示的长度< lt. <= lte. > gt. >= gte<#if jstbqkVO.gzdd?length lt 8> <a href>${jstbqkVO.gzdd?default("")}</a&g...原创 2011-11-30 09:05:02 · 114 阅读 · 0 评论 -
logback 介绍及配置使用方法
新项目日志管理统一用logback,由于之前一直在用log4j,所以其实对logback这个由log4j长出来的家伙还不算陌生。首先介绍下logback的前世今生。slf4j由log4j作者Ceki开发,逐步取代apahce commons logging。logback由log4j作者Ceki开发,逐步取代log4j。slf4j等于commons-logging,是各种日...原创 2011-11-15 09:39:02 · 146 阅读 · 0 评论 -
jBPM4.4:分配任务的几种方式 在执行期间动态分配任务执行人
在jBPM中,分配任务可以有几种方式:按照分配对象,可以分为:分配给某个/些用户或者分配给某个/些用户组。 从分配的方式看,可以有以下几种:在流程设计的时候,就直接指定用户/用户组: 在流程设计的时候,可以通过assignee方式,直接分配给用户 明确的分配给某用户/用户组:<task name="task1" assignee="usernam...原创 2012-05-10 11:29:18 · 500 阅读 · 0 评论 -
jBPM4工作流引擎 网络知识点整理汇总 高级知识
jBPM的异步执行介绍 jBPM对于所有的流程执行操作默认都是同步的。也就是说,默认是一个活动执行完成后,再执行另一个活动。 如,Task1->Java1->Java2->Task2,在同步的状态下执行,即使Java1活动要耗时一个小时,Java2也会等。但如果在异步的状态下执行,两个任务处于不同的线程中运行,Java2活动不会等待Java1活动结束就直接运行了。 可...原创 2012-04-26 15:28:46 · 176 阅读 · 0 评论 -
CKFinder 2.3 for java 破解使用
CKFinder 2.3整合 for java 破解篇ckfinder 2.1.jar或之前的版本破解的方法可能按网上说的那些,也有一种说法demo那段话是用十六进制显示的,删除就行,该方法本人已自己实践证实是不行的,确实是用十六进制显示,但如果只是单纯删除这段,文件是上传不了的。在文库里找到一个好的方法,与之分享。ckfinder/ckfinder.js删除三处js代码:第一处:删除i...原创 2013-06-26 14:39:01 · 912 阅读 · 0 评论 -
解决MySQL错误reading initial communication packet
使用navicat远程访问VPS云主机 出现如题reading initial communication packet错误,经过检查my.cnf,发现innodb_buffer_pool_size = 2048M 设置过大,调整为innodb_buffer_pool_size = 1024M即可,网上也有该问题的其他解决方法,但都不能解决我的问题。 Lost connection t...原创 2013-01-06 15:51:22 · 1497 阅读 · 0 评论 -
Java应用的负载均衡、集群、高可用(HA)解决方案
1、熟悉几个组件1.1、apache —— 它是Apache软件基金会的一个开放源代码的跨平台的网页服务器,属于老牌的web服务器了,支持基于Ip或者域名的虚拟主机,支持代理服务器,支持安全Socket层(SSL)等等,目前互联网主要使用它做静态资源服务器,也可以做代理服务器转发请求(如:图片链等),结合tomcat等servlet容器处理jsp。1.2、ngnix ——...原创 2014-11-24 16:47:02 · 1421 阅读 · 0 评论 -
对Java意义重大的7个性能指标
7个最有影响的衡量标注,让你可以不依赖日志文件来了解应用程序。现在,让我们看看这些性能指标,并了解如何查看并收集它们: 1.响应时间和吞吐量根据应用程序的响应时间可以知道程序完成传输数据所用的时间。也可以从HTTP请求级别,或者成为数据库级别来看。对那些缓慢的查询你需要做一些优化来缩短时间。吞吐量是另一个角度衡量传输数据的指标,是指单位时间内系统处理的客户请求的数量。我们可以使用...原创 2015-11-17 15:05:11 · 526 阅读 · 0 评论 -
使用四种框架分别实现1百万websocket常连接的服务器
目录 [−]服务器的参数调优TCP/IP参数配置最大文件描述符应用运行时调优OutOfMemory Killer客户端的参数调优服务器测试Netty服务器Spray服务器Undertownode.js参考文档著名的 C10K 问题提出的时候, 正是 2001 年。这篇文章可以说是高性能服务器开发的一个标志性文档,它讨论的就是...原创 2015-07-11 22:06:35 · 185 阅读 · 0 评论 -
微观SOA:服务设计原则及其实践方式(上篇)
大量互联网公司都在拥抱SOA和服务化,但业界对SOA的很多讨论都比较偏向高大上。本文试图从稍微不同的角度,以相对接地气的方式来讨论SOA,集中讨论SOA在微观实践层面中的缘起、本质和具体操作方式,另外也用相当篇幅介绍了当今互联网行业中各种流行的远程调用技术等等,比较适合从事实际工作的架构师和程序员来阅读。 为了方便阅读,本话题将分为两篇展现。本文是上篇,着眼于微观SOA的定义,并简单分...原创 2015-06-05 08:46:58 · 164 阅读 · 0 评论 -
分布式RPC框架
分布式RPC框架:Polaris 在长期的业务发展过程中,对于系统间的交互,我们使用了Socket、RMI、Hessian、JSON等技术,针对每种技术,都需要维护一套相应的故障转移、故障恢复、追踪框架,对于商业平台多条业务线的大量系统交互来说,经常面临着硬件故障问题,此种交互方式引起的维护成本及故障迁移成本都是巨大的。另外,多种不同的接口技术也面临着接口兼容性的问题,例如对于RMI来说,我们就...原创 2015-05-25 20:25:34 · 220 阅读 · 0 评论 -
关于Java集合
在尽可能短的篇幅里,将所有集合与并发集合的特征,实现方式,性能捋一遍。适合所有"精通Java"其实还不那么自信的人阅读。 ListArrayList以数组实现。节约空间,但数组有容量限制。超出限制时会增加50%容量,用System.arraycopy()复制到新的数组,因此最好能给出数组大小的预估值。默认第一次插入元素时创建大小为10的数组。按数组下标访问元素--get(i)/s...原创 2015-04-22 16:59:32 · 130 阅读 · 0 评论 -
Criteria 和 DetachedCriteria的区别与使用
Criteria 和 DetachedCriteria 的主要区别在于创建的形式不一样, Criteria 是在线的,所 以它是由 Hibernate Session 进行创建的;而 DetachedCriteria 是离线的,创建时无需 Session,DetachedCriteria 提供了 2 个静态方法 forClass(Class) 或 forEntityName(Name) ...原创 2014-08-26 20:14:20 · 107 阅读 · 0 评论 -
微信卡券卡包支付及红包发放系统HTTPS双向认证
现在邮件发出的文件有四个,分别是apiclient_cert.p12、apiclient_cert.pem、apiclient_key.pem、rootca.pem。apiclient_cert.p12包含了私钥信息的证书文件,为p12(pfx)格式,由微信支付签发给您用来标识和界定您的身份,请妥善保管不要泄漏和被他人复制部分安全性要求较高的API需要使用该证书来确认您的调用身份 w...原创 2015-03-11 17:18:53 · 528 阅读 · 0 评论 -
IntelliJ IDEA常用 快捷键
代码提示 KEYMAP->Main menu->Code->Complete Code->Basic 设置快捷键ALT+Z 原是ctrl+空格(SPACE) KEYMAP->Main menu->Code->Generate 设置快捷键ALT+Insert 原是AlT+Shift+S Alt+回车 导入包, 自...原创 2013-10-08 10:17:30 · 665 阅读 · 0 评论 -
tomcat基于域名的多应用部署及共享jar资源
最近帮公司开发了多个微信公众平台系统,基础框架都是一样的,在部署项目的时候本想在一个tomcat中部署多个应用实例,很明显这样显得很业余,并且这样子无疑加到服务器的维护难度,所以近期在网上找了些资料,用一个tomcat来部署多个应用实例,每个应用都是相互独立的。1、 本例中我使用的是apache-tomcat,下载好apache-tomcat.zip解压。2、 在apa...原创 2015-02-13 15:21:26 · 227 阅读 · 0 评论 -
Hibernate Search 的常用注解
1. @Indexed -> index 指定索引名称 2. @Field -> name 指定当前属性在Lucene Document中存储的名称,默认为属性名 -> store 指定当前属性是否被存储在Lucene index中,可选值为: 1) Store.YES 占用大量的索引空间,支持"投影(projection)" 2) Sto...原创 2015-02-10 19:05:06 · 251 阅读 · 0 评论 -
Intellij IDEA快捷键及其使用技巧
1. IDEA内存优化 先看看你机器本身的配置而配置. \IntelliJ IDEA 8\bin\idea.exe.vmoptions ----------------------------------------- -Xms64m -Xmx256m -XX:MaxPermSize=92m -ea -server -Dsun.awt.keepWorkingSetOnMinimize=true ...原创 2013-08-27 14:09:56 · 120 阅读 · 0 评论 -
SSH网上商城 基于Struts2 Hibernate Spring J2EE框架结构的电子商务网站
一个基于Struts2 Hibernate Spring框架结构的J2EE网上商城系统 (java网上商城) 后台管理员功能:包括后台商品资源管理、人员管理、订单管理、页面管理、商品评论管理,商城公告管理。人员管理中主要涉及到超级管理员对管理员的管理和对商城注册用户的管理和管理员对商城注册用户的管理,并且根据管理员的权限不同赋予不同的功能;商品资源管理中主要包括商品管理、类别管理...原创 2013-01-31 11:15:17 · 459 阅读 · 0 评论 -
. System.exit(0)和System.exit(1) 和return 区别
1、System.exit(0)和System.exit(1)有什么区别?2、在什么情况下执行System.exit()不会抛出异常?如果抛出了SecurityException异常,一般是因为什么原因?3、如果我想中止当前运行的java程序,除了执行System.exit()还能用什么方法? 1。程序返回值不同。2。抛出SecurityException是因为你调用了不允许的操作...原创 2013-01-30 08:38:24 · 374 阅读 · 0 评论 -
http长轮询&短轮询
http 协议介绍:http 协议是请求/响应范式的, 每一个 http 响应都是由一个对应的 http 请求产生的; http 协议是无状态的, 多个 http 请求之间是没有关系的.http 长连接:目前 http 协议普遍使用的是 1.1 版本, 之前有个 1.0 版本, 两者之间的一个区别是 1.1 支持http 长连接, 或者叫持久连接.1.0 不支持 http 长连接, ...原创 2012-10-09 14:15:09 · 232 阅读 · 0 评论 -
jBPM4工作流引擎 网络知识点整理汇总 提升
定义 start活动的意义在于指定了一个流程实例应该从哪里开始,即流程定义的入口。 start活动的子元素 <transition>用来指定流出的转移,指向流程的下一个活动。 定义 end活动的意义在于结束了一个流程实例,即流程定义的结束点。 特殊的end-cancel和end-error 在一些特定的流程里,需要区分到底是为什么...原创 2012-04-26 14:05:03 · 163 阅读 · 0 评论 -
jBPM4工作流引擎 网络知识点整理汇总
工作流(Workflow) 工作流是一类能够完全或者部分,由计算机支持或自动执行的业务过程。工作流管理系统WFMS(Workflow Management System) WFMS是指:能管理工作活动序列,调用与各种活动步骤相关的人员、IT资源,能对业务过程提供全部或部分自动化处理,以实现工作流程的管理软件。 注意:如果后面没有特别...原创 2012-04-26 13:49:04 · 195 阅读 · 0 评论 -
ajaxForm问题集锦,一个神奇的问题:使用ajaxForm提交表单上传文件后服务器端返回json数据IE浏览器无法解析...
最近做一个额照片上传后裁剪的功能,用到 jquery form的ajaxform提交图片保存,然后根据返回的JSON字符串直接在页面上显示出上传的照片,并且使用jcrop进行裁剪保存:JS代码如下 $('#form_portrait').ajaxForm({ dataType: 'json', success: function(json) {...原创 2011-12-27 13:57:49 · 277 阅读 · 0 评论 -
maven2创建或者导入eclipse工程 设置M2_REPO消除错误
用maven创建一个项目,在这个项目目录下使用命令:mvn eclipse:eclipse即可生成eclipse工程,然后再把工程导入到eclipse中,步骤如下:eclipse->import->General:Existing Projects into Workspace->包含该工程的目录,eclipse会自动搜寻到刚刚创建的eclipse工程。导入工程后会发现e...原创 2011-01-28 15:29:02 · 222 阅读 · 0 评论 -
Intellij IDEA 快捷键
Alt+回车 导入包,自动修正 Ctrl+N 查找类 Ctrl+Shift+N 查找文件 Ctrl+Alt+L 格式化代码 Ctrl+Alt+O 优化导入的类和包 Alt+Insert 生成代码(如get,set方法,构造函数等) Ctrl+E或者Alt+Shift+C 最近更改的代码 Ctrl+R 替换文本 Ctrl+F 查找文本 Ctrl+Shift+Space 自动补全代码 Ctrl...原创 2011-01-20 14:57:14 · 87 阅读 · 0 评论 -
JBPM4项目和tomcat6.0的兼容问题
基于JBPM4的web项目jsp页面发布出错,错误如下: exception javax.servlet.ServletException: java.lang.LinkageError: loader constraint violation: when resolving interface method "javax.servlet.jsp.JspApplic...原创 2011-01-17 14:57:08 · 104 阅读 · 0 评论 -
MyEclipse6.5安装SVN插件的三种方法
一、安装方法: 方法一、如果可以上网可在线安装 1. 打开Myeclipse,在菜单栏中选择Help→Software Updates→Find and Install; 2. 选择Search for new features to install,点击Next进入下一步; 3. 点击"New Remote Site"按钮,在弹出的对话框中输入: name:SV...原创 2011-01-06 13:31:18 · 129 阅读 · 0 评论