Subscribe: 振华博客
http://zhenhua.org/feed.asp?cat=13
Added By: Feedage Forager Feedage Grade B rated
Language: English
Tags:
crypto  import javax  import  isempty  java  javax crypto  javax  servlet servlet  servlet  string  stringutils isempty  stringutils 
Rate this Feed
Rate this feedRate this feedRate this feedRate this feedRate this feed
Rate this feed 1 starRate this feed 2 starRate this feed 3 starRate this feed 4 starRate this feed 5 star

Comments (0)

Feed Details and Statistics Feed Statistics
Preview: 振华博客

ZhenHua 's blog



zenhua zhenhua 振华博客,振华's blog



Published: Tue, 23 Jan 2018 12:11:57 +0800

Copyright: Copyright 2018, ZhenHua 's blog
 






Tomcat 7 修改 Session 默认的 Cookie 名 JSESSIONID

Wed, 04 Apr 2012 18:02:07 +0800

server.xml



maxThreads="500" minSpareThreads="10" maxIdleTime="600000"/>
connectionTimeout="20000" executor="tomcatThreadPool" acceptorThreadCount="4"
redirectPort="8443" />





DES加密解密 JAVA与.NET互通

Wed, 04 Apr 2012 17:59:41 +0800

JAVA版本
Quote
import javax.crypto.Cipher;
import javax.crypto.SecretKey;
import javax.crypto.SecretKeyFactory;
import javax.crypto.spec.DESKeySpec;
import javax.crypto.spec.IvParameterSpec;


public class Des {
private byte[] desKey;


//解密数据
public static String decrypt(String message,String key) throws Exception {

byte[] bytesrc =convertHexString(message);
Cipher cipher = Cipher.getInstance("DES/CBC/PKCS5Padding");



深入JVM

Thu, 25 Nov 2010 21:22:39 +0800

1 JVM简介

JVM是我们Javaer的最基本功底了,刚开始学Java的时候,一般都是从“Hello World”开始的,然后会写个复杂点class,然后再找一些开源框架,比如Spring,Hibernate等等,再然后就开发企业级的应用,比如网站、企业内部应用、实时交易系统等等,直到某一天突然发现做的系统咋就这么慢呢,而且时不时还来个内存溢出什么的,今天是交易系统报了StackOverflowError,明天是网站系统报了个OutOfMemoryError,这种错误又很难重现,只有分析Javacore和dump文件,运气好点还能分析出个结果,运行遭的点,就直接去庙里烧香吧!每天接客户的电话都是战战兢兢的,生怕再出什么幺蛾子了。我想Java做的久一点的都有这样的经历,那这些问题的最终根结是在哪呢?—— JVM。
JVM全称是Java Virtual Machine,Java虚拟机,也就是在计算机上再虚拟一个计算机,这和我们使用 VMWare不一样,那个虚拟的东西你是可以看到的,这个JVM你是看不到的,它存在内存中。我们知道计算机的基本构成是:运算器、控制器、存储器、输入和输出设备,



JVM内存模型以及垃圾回收

Mon, 22 Nov 2010 10:06:42 +0800

JVM内存模型以及垃圾回收
内存由 Perm 和 Heap 组成. 其中

Heap = {Old + NEW = { Eden , from, to } }

JVM内存模型中分两大块,一块是 NEW Generation, 另一块是Old Generation. 在New Generation中,有一个叫Eden的空间,主要是用来存放新生的对象,还有两个Survivor Spaces(from,to), 它们用来存放每次垃圾回收后存活下来的对象。在Old Generation中,主要存放应用程序中生命周期长的内存对象,还有个Permanent Generation,主要用来放JVM自己的反射对象,比如类对象和方法对象等。


垃圾回收描述:

在New Generation块中,垃圾回收一般用Copying的算法,速度快。每次GC的时候,存活下来的对象首先由Eden拷贝到某个Survivor Space, 当Survivor Space空间满了后, 剩下的live对象就被直接拷贝到Old Generation中去。因此,每次GC后,Eden内存块会被清空。在Old



jvm 内存溢出问题的解决

Thu, 18 Nov 2010 22:19:15 +0800

java.lang.OutOfMemoryError: PermGen space

发现很多人把问题归因于: spring,hibernate,tomcat,因为他们动态产生类,导致JVM中的permanent heap溢出 。然后解决方法众说纷纭,有人说升级 tomcat版本到最新甚至干脆不用tomcat。还有人怀疑spring的问题,在spring论坛上讨论很激烈,因为spring在AOP时使用CBLIB会动态产生很多类。

但问题是为什么这些王牌的开源会出现同一个问题呢,那么是不是更基础的原因呢?tomcat在Q&A很隐晦的回答了这一点,我们知道这个问题,但这个问题是由一个更基础的问题产生。

于是有人对更基础的JVM做了检查,发现了问题的关键。原来SUN 的JVM把内存分了不同的区,其中一个就是permenter区用来存放用得非常多的类和类描述。本来SUN设计的时候认为这个区域在JVM启动的时候就 固定了,但他没有想到现在动态会用得这么广泛。而且这个区域有特殊的垃圾收回机制,现在的问题是动态加载类到这个区域后,gc根本没办法回收!

1、首先是:java.lang.OutOfMemoryError: Java heap space



逃离 MVC

Mon, 25 Oct 2010 23:42:48 +0800

最近在公司做一个小功能, 由于时间迫切,用纯servlet/jsp的方式完成,仅花了半个多小时,恍惚之间不禁反思为什么要使用定死的传统的开发框架,而不用敏捷轻便的方式去实现一些功能,这些不需要任何解决方案、不用考虑action、xml、拦截器等。

之前来自JDON的一篇文章值得再次反思:http://zhenhua.org/article.asp?id=701

另:http://www.ibm.com/developerworks/cn/java/j-pureserv/index.html
Quote
这里演示的纯 servlet 设计在客户机和业务逻辑之间建立一个视图层。Model-View-Controller(MVC,或者说 Model 2)实际上不是万能的,而且支持它的 Web 框架往往比较难以处理。Spring MVC 和 JavaServer Faces(JSF)太过复杂,我可以断言,Struts 的麻烦程度不亚于此,每次调整控制逻辑时都必须调整臃肿复杂的配置文件。N. Alex Rupp 甚至将 MVC 称为反模式,一种 “看似聪明其实非常愚蠢的” Web 技术。



Opencms 后台CSS显示不出

Fri, 11 Sep 2009 13:47:13 +0800

环境:Opencms7.5.0+Tomcat5.5.28+Apache2.2.11
安装搭建好并安装汉化包 “OpenCms7.5.0千寻汉化包_2009-08-11修正版”后,默认的CSS文件会被删除。
进入后台出现版面错乱的情况。
解决方法:
将备份好的CSS文件重新放到\export\system\workplace\commons\style目录下即可

共三个CSS文件。
下载地址:
(image) Click Here To Download



jsp基础速成精华讲解

Sun, 04 Jan 2009 21:56:56 +0800


Servlet三个要素:
1.必须继承自HttpServlet
2.必须实现doGet()或者doPost()
3.必须在web.xml中配置Servlet









HttpServeltRrequest:请求对象
getParameter():获得表单元素的值
getAttribute():获得request范围中的属性值
setAttribute():设置reqeust范围中的属性值
setCharacterEncoding():设置字符编码

HttpSerletResponse:相应对象
sendRedirect():外部跳转
getWriter():获得输出流对象



StringUtils isNotEmpty isNotBlank

Thu, 16 Oct 2008 16:42:35 +0800

isNotEmpty将空格也作为参数,isNotBlank则排除空格参数

参考
Quote
StringUtils方法的操作对象是java.lang.String类型的对象,是JDK提供的String类型操作方法的补充,并且是null安全的(即如果输入参数String为null则不会抛出NullPointerException,而是做了相应处理,例如,如果输入为null则返回也是null等,具体可以查看源代码)。

除了构造器,StringUtils中一共有130多个方法,并且都是static的,所以我们可以这样调用StringUtils.xxx()

1. public static boolean isEmpty(String str)
判断某字符串是否为空,为空的标准是str==null或str.length()==0
下面是StringUtils判断是否为空的示例:
StringUtils.isEmpty(null) = true
StringUtils.isEmpty("") = true
StringUtils.isEmpty("