/ 闲敲棋子 / 笔记

笔记

2012-01-10 posted in [遇到问题]

配置tomcat遇到问题:

2010-8-11 18:23:20 org.apache.catalina.core.AprLifecycleListener lifecycleEvent
信息: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: …..

原因是tomcat6以后加入了一个文件,叫tcnative-1.dll,加到环境里就行了。在知乎上提问,得到的回复如下:

tomcat整合本地apr会使效率提升:

一是,处理静态资源的时候速度更快,(注:有人用jmeter,对使用apr前后的tomcat进行压力测试,结果显示,性能是有一定的提升,但是没有想象中多,只有一点点,当然,这与运行的逻辑有关,但是我个人认为在大多数情况下这部分性能提升甚微)。

二是,我认为提升比较多的是对ssl的处理效率,当tomcat处理https的请求是,如果使用本地的openssl库,肯定会比前面提升的效率高。(虽然没有实际测试数据,但我推测这里的性能提升比例上要比第一点多得多)。

用maven管理jar包时,server.xml要配置Loader属性,其中DevLoader.jar可以从tomcat插件里找到,需要重命名成.jar文件,放到tomcat的lib文件中。

期间还有很多很诡异的错误,比如神马reloadable设置删了几次又重新装了几次就好了……囧……参考一下12.27的饭否:Destroying Spring FrameworkServlet ‘springmvc’… 导致的错误,居然重新生成一下servers.xml就好了,配置神马神马的没有变啊没有变!!!这不是坑爹么!!!记下来,估计是reload=true

一篇关于struts2+tomcat的文章

哎,好多奇怪的问题,当时没记下来过两天就给忘了。这样不好,现在好不容易闲下来,也记不全了。先说今天遇到的吧。

jsp中循环一堆图片,结果中间有个很诡异的空隙。解决方法:把<img alt="" />img标签横着写不换行。如:<img alt="" /><img alt="" /><img alt="" /><img alt="" />

ajax通过昵称查询中文时的编码问题。解决方法:encodeURIComponent()编码两次请求的value,因为发请求的时候浏览器会自动解码……呃……代码:

var search = encodeURIComponent(encodeURIComponent($('#search').val()));

然后在java类中进行解码:

search = URLDecoder.decode(search, "utf-8");

同事需要把存有一些网址的网页进行保存,查看代码发现是动态生成的,生成的页面不知道是编码了还是解码了还是没管那个代码,总之显示出来的网址是这付样子:http%3A%2F%2F…blabla…手动帮他ctrl+R替换了一遍,估计他以后还要这样做,就想能不能写个小程序实现自动转换。今天闲下来,用javascript写了一下,顺道复习并学习了一下正则表达式和document.execCommand()方法的使用……

上代码:

<script type="text/javascript">
     /**
     * url 转换工具
     * by dylan
     * 2012-01-10
     */
 function save()
 {
     b=window.open();
     b.document.open();
     b.document.write(document.getElementById("code").innerText); //用innerText可以保证输出的html标签不被转义
     b.document.close();
     b.document.execCommand('saveAs',true,"test.html"); //另存为方法,测试表示ie好使,chrome不好使,不知道为啥
     b.close() ;
 }
 
 function encode() {
     var code = document.getElementById("code").value;
     code = code.replace(/%2F/g,"/");  //一些value对应的值,/g表示替换全部
     code = code.replace(/%3A/g,":");
     code = code.replace(/%3F/g,"?");
     code = code.replace(/%26/g,"&");
     code = code.replace(/%3D/g,"=");
     document.getElementById("code").value = code;
 }
 
 </script>

对于url编码/解码的一篇文章

另外:现在用的版本同步工具叫git,管理项目的叫maven,框架是spring mvc + json。那个很高深的图表工具叫highcharts。加油喔,第二个版本要上线的时候,一定要做好笔记!别再像现在这样似的了,以后想想都忘了……

应该尝试要做的:实现数据库字段自动生成实体对象。了解线程池的工作方法、机制。实现分页方法。重新梳理一下项目。试着建立属于自己的util包。

恩,我想说,新的一年里,不要光去膜拜大神,也许许多事情自己做起来并没有那么想的困难。大神们也是从人修炼过来的,现在,就是我修炼的过程~~~只干活不总结是傻帽儿!

update 2011 1 10

ie 中ajax有缓存,解决方法,请求url中加入随机数"&randomval="+Math.random()

css+div 水平居中,你要是手欠跟我一样把

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

这段给删了……恭喜你,无论你设置了多么简洁漂亮的css,ie里都不能居中了。so。。。你们懂得。

java.sql.SQLException: 结果集已耗尽

出现此错误 是因为,执行的数据库查询没有查询到任何结果,却调用了rs.next() 或者,游标到了查询出来的最后一条记录,又调用了rs.next()则,会找不到next条记录 IE下编码url问题,变成urlencode…