
java
linvar
这个作者很懒,什么都没留下…
展开
-
java的可变参数列表
以前一直以为java方法的参数个数是编译期已知的,有些羡慕可以乱加实参C#和变态的js.后来无意中发现了java方法签名中竟然有"..."这种写法.事实上,java方法的参数数目也可以是不固定的,直到运行时.比如main方法的签名其实可以这样写:public static void main(String... args)//方法1它也可以运行.并且,如果同时还存在pu...原创 2009-03-13 16:33:42 · 162 阅读 · 0 评论 -
试试写个java urlrewriter
[size=medium] 最近打算写一个urlrewriter,主要是为了模仿django 那个urlpattern,将url请求变成没有.action之类的后缀, 而且url请求可能带参数,比如 /topic/1234请求,1234需要转换成参数,当然这需要在配置文件中定义,比如 /topic/${id}, 通过正则表达式匹配,再经过filter重新forward,把参数加入,再加...2009-06-12 18:04:11 · 86 阅读 · 0 评论 -
java URL encoding and decoding
[size=medium]HTML编码规则是:字符"a"-"z","A"-"Z","0"-"9",".","-","*",和"_" 都不被编码,维持原值,空格" "被转换为加号"+"。所有其他的字符都被认为是不安全的,首先都根据指定的编码scheme被转换为12010-03-19 09:48:00 · 262 阅读 · 0 评论 -
ibatis3 的变量
[size=medium]ibatis的变量其实没什么特别,就是使用#{}定义,比如 insert into person(name,age) values(#{name},#{age})ibatis是这样执行这条语句的:使用preparedStatement构造出如下sql语句并执行insert into person(name,age) values(?,?)之后才是将具体...2010-04-05 10:12:39 · 216 阅读 · 0 评论 -
pinyin4j 笔记
[size=medium]最近需要将城市名称转换为拼音去访问google weather api自然就想到了pinyin4j,这个库很早就听说了去首页一看发现自2006这个库就没有更新了,pinyin4j是足够强大与简单,关键类是 HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();format.se...2010-04-05 21:00:48 · 104 阅读 · 0 评论 -
刚开始工作的一些杂碎笔记
[size=large]2008/06/18 1. Random 对象 nextLong() 产生的随机数接近当天时间的毫秒数。 2. 插入MySQL纪录很多时应该怎样做?PreparedStatement 3. Ehcache 缓存工具,可以进行变量缓存,页面缓存,部分页面缓存2008/06/19 1. 依据两个列字段查询行数.从一个查询的结果集合中select行吗?还是...2009-08-03 17:18:32 · 128 阅读 · 0 评论 -
Quartz 使用笔记
[size=medium][b]1.Quartz的主要构件:[/b]SchedulerFactory, Scheduler, Job, JobDetail, TriggerSchedulerFactory 标准实现StdSchedulerFactory, 从SchedulerFactory.getScheduler()拿到Scheduler就启动scheduler.start();...2010-04-16 21:35:07 · 130 阅读 · 0 评论 -
java static util, helper
[size=medium]我们经常会写一些util,helper类, 而一般这些类的方法都静态的,这在许多时候是很方便的但是需要注意在可能的多线程环境下,这些类尽量不要有属性字段, 如果确定要有(这在有时候也很有用),要保证在方法中不修改这个属性字段的值,不然在多线程环境下可能造成线程意外的相互影响,还可以使用final修饰这个属性字段使其不可变,就像我们经常使用的:...2010-04-18 19:50:36 · 352 阅读 · 0 评论 -
ibatis3 的返回值
当执行sqlSession.selectOne("","")时, 返回的是一个对象,如果結果不存在,则这个对象的值为null.当执行sqlSession.selectList("","")时, 返回的是一组对象List如果結果不存在, 这个List并不为null, 只是它的大小size为0....2010-05-11 16:43:46 · 101 阅读 · 0 评论 -
Java Servlet Container
[size=medium]使用过或打算使用的java服务器有resin,tomcat,jetty.[b]1.tomcat是j2ee的标准实现[/b]用户也可能比较多.但是tomcat越来越大,更新也越来越慢,最近google还放弃了tomcat转而使用jetty.我使用tomcat也比较少,所以对tomcat的也不多了解.[b]2.resin是我用得最多的服务器[/b]性能比较...2010-02-05 09:58:51 · 191 阅读 · 0 评论 -
java url mapping
[size=medium]java url mapping比较简单,也可以说功能比较弱,但是可扩展也就高了.mapping分为四类1.以 '/'开头,'/*'结尾的pattern是表示路径匹配,比如 /hello/*. /* 也属于此类2.扩展名匹配: 比如 *.jspx3.默认匹配 '/',4.其他的为精确匹配,如 hello匹配的顺序是:精确...原创 2010-02-05 16:25:18 · 324 阅读 · 0 评论 -
springmvc 笔记
[size=medium]struct2很不好用,springmvc比较给力,跟spring又是无缝链接,所以选择springmvc用springmvc有一段时间了,记录一下备忘大多数内容来自spring的官方文档[b]1.前端分发器DispatcherServlet[/b]springmvc是围绕这个DispatcherSerlet来设计的,DispatcherSer...原创 2010-05-22 10:27:32 · 86 阅读 · 0 评论 -
freemarker使用总结
[size=medium][b]1.freemarker在使用spring MVC时会出现乱码问题[/b]这时可以在springmvc-servlet.xml(MVC配置文件)中的freemarkerConfig那里增加 UTF-8 0.###### [b]相应地key="number_format"那行表示对于上万的...原创 2010-06-20 16:51:57 · 139 阅读 · 0 评论 -
Resin note1
[size=medium] 1.一个resin instance代表一个cluster,只能启动一个cluster中的一个server#bin/resin.sh -serve...原创 2011-06-27 23:11:01 · 115 阅读 · 0 评论 -
java 正则表达式
[size=medium]正则表达式的关键是创建用于"在源字符串中匹配出某些字符串"的表达式(字符串)(regex)源字符串String input = "abcdefg";表达式String regex = "d.*";[b]1.正则表达式的字符结构:[/b] 1.1 x: 匹配x这个字符 1.2 \\: 匹配反斜杠\ 1.3 \t, \n, \r, \e 分别匹...原创 2011-10-30 14:53:57 · 113 阅读 · 0 评论 -
java Cookie
[size=medium]cookie的组成部分:key, value, maxage, path, domain[b]1.java的key,value都应该进行url编码[/b][b]2.java 的cookie maxage:[/b]-1表示浏览器关闭即释放(firefox经常不释放) 0表示删除(相当于放置cookie有效时间为过去时)大于0表示有效时间(...原创 2011-11-01 21:33:33 · 120 阅读 · 0 评论 -
Cookie小解
[size=medium]Cookie是客户端与服务器沟通的一个信息包当服务器设置了客户端的Cookie后,只要没有过期,浏览器每次请求都会带着这个Cookie,这可以作为客户端的标志信息,向服务器端说明自己的身份.其实这个Cookie在客户端是可以伪造的,不过是name=value键值对这也警告了我们,客户端传递到服务器的任何信息都是不可靠的.不要以为你用javascri...2010-03-18 19:27:45 · 119 阅读 · 0 评论 -
ibatis3的使用参考
[size=medium]以前用过ibatis2,但是听说ibatis3有较大的性能提升,而且设计也更合理,他不兼容ibatis2.尽管ibatis3还是beta10的状态,但还是打算直接使用ibatis3.0,ibatis3.0应该更简单高效.最近还自己写了个ibatis3.0与spring集成的bean,运行还正常,还自鸣得意了一番,但是当独立使用ibatis时,在事务管理这个方面还是出现...2010-03-12 17:03:05 · 189 阅读 · 0 评论 -
java反射与代理
java反射与代理一. 关于数据库.当今的数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processing)、联机分析处理OLAP(On-Line Analytical Processing)。OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,...2009-05-31 15:47:24 · 85 阅读 · 0 评论 -
Java 程序中使用浮点数和小数
在 Java 程序中使用浮点数和小数充满着陷阱。浮点数和小数不象整数一样“循规蹈矩”,不能假定浮点计算一定产生整型或精确的结果,虽然它们的确“应该”那样做。最好将浮点运算保留用作计算本来就不精确的数值,譬如测量。如果需要表示定点数(譬如,几美元和几美分),则使用 BigDecimal。不要用浮点值表示精确值一些非整数值(如几美元和几美分这样的小数)需要很精确。浮点数不是精确值,所以...原创 2009-03-13 16:34:20 · 422 阅读 · 0 评论 -
Lucene基本使用介绍
[size=large][size=medium]本文的目的不在于对Lucene的概念和设计这些进行介绍,仅在于介绍怎么样去使用Lucene来达到自己想要的几种常见的全文检索的需求,如果想深入了解Lucene的话本文不会带给你什么收获的。看完本文后想更深入的了解Lucene请访问:http://lucene.apache.org 一. 概述随着系统信息的越来越多,怎么样从这些信息海洋...原创 2009-03-14 12:10:17 · 143 阅读 · 0 评论 -
lucene使用与优化
[size=large]]1 lucene简介1.1 什么是luceneLucene是一个全文搜索框架,而不是应用产品。因此它并不像www.baidu.com 或者google Desktop那么拿来就能用,它只是提供了一种工具让你能实现这些产品。1.2 lucene能做什么要回答这个问题,先要了解lucene的本质。实际上lucene的功能很单一,说到底,就是你给它若干个字符...原创 2009-03-14 12:43:40 · 79 阅读 · 0 评论 -
Ant的使用
Ant的使用 Ant,以我自身的理解,它的作用类似与Linux下的makefile,可以对软件项目进行编译、生成文档、单元测试、打包、部署等;但又不同与makefile,因为makefile是基于shell的构建工具,但Ant是基于Java的构建工具,且使用Java语言可以很容易的对它进行扩展,Ant是基于XML的书写格式。 一、安装Ant1、...原创 2009-03-29 15:06:10 · 81 阅读 · 0 评论 -
感觉java web开发越来越复杂
[size=medium] 前段时间使用django开发一个网站后(可惜流产了),现在回归java维护以前的一个管理系统.开始考虑自己的开发模式,老实说,用过django以后,发觉用java开发web应用太麻烦了.我喜欢的开发模式是要清晰. 这个管理系统的基本框架是这样的: spring + ibatis + jquery, 没有使用struts, 而是采用了一个ActionSe...2009-05-24 20:23:53 · 1083 阅读 · 0 评论 -
一路走来,技术总结
[size=medium] 经过半年的独立开发,适时停下脚步,进行自我总结,完善开发模式,或许技术上自己也遇到了瓶阱,处于迷茫时期。回顾,总结,前进。 第一阶段(2008/12---2009/01): 1.前端技术:jsp+jstl+action层(没有使用struts2) 2.service层:没有使用spring控制事务,也就是没有进行事务控制 ...2009-05-27 15:21:09 · 140 阅读 · 0 评论 -
strust2.1 + spring3.0 + ibatis3.0 + annotation
[size=medium]近期开发框架选择strust2.1 + spring3.0 + ibatis3.0尽量使用annotation,少使用xml,ibatis除外[b]1.strust2.1[/b]主要使用到的plugin是Convention Pluin,因为他是实现Restful和annotation的关键。ServletActionContext静态类可以得到很多运...2010-03-05 00:27:07 · 89 阅读 · 0 评论 -
java trap
1. String s = ""; String[] ss = s.split("_"); System.out.println(ss.length); // 結果为1 而如果 s="_"; //結果为02. Locale locale = new Locale("zh", "CN"); 第一个是语言代码,第二个是国家代码 而不能使用 Locale(...原创 2010-03-06 22:14:20 · 207 阅读 · 0 评论 -
javamail 小结
[size=medium]要发邮件,必须登录smtp邮件服务器,要收邮件,必须登录pop3或imap服务器一般的邮件系统默认都没有开通smtp,pop3,imap服务,需要自己登录邮件系统的页面进行设置而163默认是开通了smtp服务的,所以我们可以用java程序通过这个smtp服务器进行发送邮件我们的java程序其实类似于outerlook这个的邮件客户端,会建立用户代理(User ...2010-03-09 11:09:33 · 97 阅读 · 0 评论 -
stringtree json
[size=medium]stringtree json is a small, neat and robust Java implementation of a reader, writer, and validator for the JSON (JavaScript Object Notation) data format. The reader and writer are one cla...2010-03-10 08:47:56 · 142 阅读 · 0 评论 -
spring3.0 junit test
[size=medium]spring-3.0修改了test包的类,以前的org.springframework.test.AbstractDependencyInjectionSpringContextTests等相关类不推荐使用了,推荐使用org.springframework.test.context.junit4(或junit38)包下的相关类具体的测试类需要使用@Contex...2010-03-10 21:43:43 · 124 阅读 · 0 评论 -
tomcat6.0安装配置
[size=medium]其实自己是一直使用resin的,但是也想用用tomcat,以备不时之需,再说他的使用者好像也是最多的吧.另外也打算弄弄jetty.[b]1.安装运行[/b]下载tomcat的二进制包,安装jdk,他其实就是运行在java之上,所以如果我们从tomcat的源码重新编译,也就是重新编译打包那些java文件为jar,直接解压缩tomcat包到$CATAL...2010-03-11 20:29:51 · 127 阅读 · 0 评论 -
freemarker 笔记
[size=medium]Freemarker是java的模板引擎,主要用于MVC中的view层,生成html展示数据给客户端.可以完全替代jsp.freemarker模板中没有业务逻辑,外部java程序通过数据库操作等生成数据传入template中,[b]template + data-model = output[/b][b]1.template[/b] 变量替换 ${.....2010-03-11 20:31:43 · 126 阅读 · 0 评论 -
thinking in java (1)
[size=medium]1. An object has state, behavior and identity.2. Indeed, one of the challenges of object-oriented programming is to create a one-to-one mapping between the elements in the problem spa...2010-03-11 20:43:26 · 85 阅读 · 0 评论 -
thinking in java (2)
[size=medium]1. Your objects might not get garbage collected. Garbage collection is not destruction. Garbage collection is only about memory.2. Within a class, the variables are initialize...2010-03-11 20:43:57 · 73 阅读 · 0 评论 -
dao层疑惑
[size=medium]dao层的主要操作"增删改查","增删改"相对比较简单,主要是"查(select)"比较麻烦.市面上有许多dao层的框架,主要是orm构架.orm对于增删改可能比较方便,但是涉及到复杂的查询可能也要嵌入sql语句才能完成吧.个人还是比较喜欢直接的jdbc操作,因为查询的sql语句一般比较复杂,还可能需要动态sql(if...else控制),没使用过H...2009-05-30 04:38:42 · 89 阅读 · 0 评论 -
Springmvc 乱码问题
[size=medium]后端的Tomcat server.xml里配置的编码设置,只对请求的url进行utf8解码, 也就是能正常解析出get方法的参数.但是对于Post方法, 因为参数是在请求体里面的, 这个编码设置并不会影响到Post的参数,这个跟浏览器有关, 如果是firefox,会带上头信息: content-type = application/x-www-fo...原创 2012-08-24 22:54:48 · 115 阅读 · 0 评论