如何将tomcat中的JVM启动值改变

来源:互联网 发布:软件测试技术大全 编辑:程序博客网 时间:2024/05/17 22:58
我今天一天都在找如何将JVM的字符编码由gbk改为utf-8,由于依赖你本地的系统,所以改起来有点麻烦,看了很多文档,

原因是因为file.encoding默认的字符集跟操作系统有关,中文操作系统下面默认的字符集是GBK,如果流程定义的xml文件中用UTF-8,

则不能正确转换,所以需要修改file.encoding的值为UTF-8。

于是跟着这个思想我尝试了很多方法,都失败了,心碎了一地 ,,,就在我快要下班之际,一篇文章引起了我的注意:
内容如下:
Windows 
在catalina.bat最前面加入 set JAVA_OPTS=-Xms128m -Xmx350m 如果用startup.bat启动tomcat,OK设置生效.够成功的分配200M内存. 但是如果不是执行startup.bat启动tomcat而是利用windows的系统服务启动tomcat服务,上面的设置就不生效了, 就是说set JAVA_OPTS=-Xms128m -Xmx350m 没起作用.上面分配200M内存就OOM了.. windows服务执行的是bin\tomcat.exe.他读取注册表中的值,而不是catalina.bat的设置. 解决办法: 修改注册表HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Tomcat Service Manager\Tomcat5\Parameters\JavaOptions 原值为 -Dcatalina.home="C:\ApacheGroup\Tomcat 5.0" -Djava.endorsed.dirs="C:\ApacheGroup\Tomcat 5.0\common\endorsed" -Xrs 加入 -Xms300m -Xmx350m  重起tomcat服务,设置生效tomcat作为windows服务的参数配置,特别是PermSize的设置这里不使用注册表,我们用tomcat提供的gui工具来设置。1、在命令行下执行:tomcat5w.exe //ES//TomcatService    其中,TomcatService就是你加入windows服务的名称。这样,在windows的任务栏就会出现一个tomcat的服务管理器,图标如下 。2、打开tomcat服务管理器的java页,如在Java Options里面输入需要设置的参数,如设置permsize的内存-XX:PermSize=64M-XX:MaxPermSize=192m-XX:ReservedCodeCacheSize=48m-Duser.timezone=GMT+08注:每一行后面都不能有空格。同样,我们也可以在注册表中进行修改,HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0\TestService\Parameters\Java 内存改好后,可以登陆tomcat-->status查看 JVM.
如果你能看懂的话我想编码修改你应该就会懂了。。。。。。-Dfile.encoding=UTF-8  加入即可!
顺便传个语句
Properties pps=System.getProperties();pps.getProperty("file.encoding");
或者
 java.nio.charset.Charset.defaultCharset()
这两个都可以在代码中查看当前JVM编码格式!!
希望我的经验能帮助后来人吧!
0 0
原创粉丝点击