
java
linvar
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
java的可变参数列表
以前一直以为java方法的参数个数是编译期已知的,有些羡慕可以乱加实参C#和变态的js.后来无意中发现了java方法签名中竟然有"..."这种写法.事实上,java方法的参数数目也可以是不固定的,直到运行时. 比如main方法的签名其实可以这样写: public static void main(String... args)//方法1 它也可以运行. 并且,如果同时还存在 pu...原创 2009-03-13 16:33:42 · 216 阅读 · 0 评论 -
试试写个java urlrewriter
[size=medium] 最近打算写一个urlrewriter,主要是为了模仿django 那个urlpattern,将url请求变成没有.action之类的后缀, 而且url请求可能带参数,比如 /topic/1234请求,1234需要转换成参数, 当然这需要在配置文件中定义,比如 /topic/${id}, 通过正则表达式匹配,再经过filter重新forward,把参数加入,再加...2009-06-12 18:04:11 · 96 阅读 · 0 评论 -
java URL encoding and decoding
[size=medium]HTML编码规则是: 字符"a"-"z","A"-"Z","0"-"9",".","-","*",和"_" 都不被编码,维持原值, 空格" "被转换为加号"+"。 所有其他的字符都被认为是不安全的,首先都根据指定的编码scheme被转换为12010-03-19 09:48:00 · 275 阅读 · 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 · 228 阅读 · 0 评论 -
pinyin4j 笔记
[size=medium]最近需要将城市名称转换为拼音去访问google weather api 自然就想到了pinyin4j,这个库很早就听说了 去首页一看发现自2006这个库就没有更新了, pinyin4j是足够强大与简单, 关键类是 HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat(); format.se...2010-04-05 21:00:48 · 108 阅读 · 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 · 136 阅读 · 0 评论 -
Quartz 使用笔记
[size=medium][b]1.Quartz的主要构件:[/b] SchedulerFactory, Scheduler, Job, JobDetail, Trigger SchedulerFactory 标准实现StdSchedulerFactory, 从SchedulerFactory.getScheduler()拿到Scheduler就启动scheduler.start(); ...2010-04-16 21:35:07 · 137 阅读 · 0 评论 -
java static util, helper
[size=medium]我们经常会写一些util,helper类, 而一般这些类的方法都静态的,这在许多时候是很方便的 但是需要注意在可能的多线程环境下, 这些类尽量不要有属性字段, 如果确定要有(这在有时候也很有用), 要保证在方法中不修改这个属性字段的值, 不然在多线程环境下可能造成线程意外的相互影响, 还可以使用final修饰这个属性字段使其不可变, 就像我们经常使用的: ...2010-04-18 19:50:36 · 369 阅读 · 0 评论 -
ibatis3 的返回值
当执行sqlSession.selectOne("","")时, 返回的是一个对象, 如果結果不存在,则这个对象的值为null. 当执行sqlSession.selectList("","")时, 返回的是一组对象List 如果結果不存在, 这个List并不为null, 只是它的大小size为0....2010-05-11 16:43:46 · 113 阅读 · 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 · 204 阅读 · 0 评论 -
java url mapping
[size=medium]java url mapping比较简单,也可以说功能比较弱,但是可扩展也就高了. mapping分为四类 1.以 '/'开头,'/*'结尾的pattern是表示路径匹配, 比如 /hello/*. /* 也属于此类 2.扩展名匹配: 比如 *.jspx 3.默认匹配 '/', 4.其他的为精确匹配,如 hello 匹配的顺序是: 精确...原创 2010-02-05 16:25:18 · 334 阅读 · 0 评论 -
springmvc 笔记
[size=medium] struct2很不好用,springmvc比较给力,跟spring又是无缝链接,所以选择springmvc 用springmvc有一段时间了,记录一下备忘 大多数内容来自spring的官方文档 [b]1.前端分发器DispatcherServlet[/b] springmvc是围绕这个DispatcherSerlet来设计的, DispatcherSer...原创 2010-05-22 10:27:32 · 94 阅读 · 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 · 150 阅读 · 0 评论 -
Resin note1
[size=medium] 1.一个resin instance代表一个cluster,只能启动一个cluster中的一个server #bin/resin.sh -serve...原创 2011-06-27 23:11:01 · 128 阅读 · 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 · 130 阅读 · 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 · 128 阅读 · 0 评论 -
Cookie小解
[size=medium]Cookie是客户端与服务器沟通的一个信息包 当服务器设置了客户端的Cookie后,只要没有过期, 浏览器每次请求都会带着这个Cookie, 这可以作为客户端的标志信息,向服务器端说明自己的身份. 其实这个Cookie在客户端是可以伪造的,不过是name=value键值对 这也警告了我们,客户端传递到服务器的任何信息都是不可靠的. 不要以为你用javascri...2010-03-18 19:27:45 · 124 阅读 · 0 评论 -
ibatis3的使用参考
[size=medium]以前用过ibatis2,但是听说ibatis3有较大的性能提升,而且设计也更合理,他不兼容ibatis2.尽管ibatis3还是beta10的状态,但还是打算直接使用ibatis3.0, ibatis3.0应该更简单高效.最近还自己写了个ibatis3.0与spring集成的bean,运行还正常,还自鸣得意了一番,但是当独立使用ibatis时,在事务管理这个方面还是出现...2010-03-12 17:03:05 · 201 阅读 · 0 评论 -
java反射与代理
java反射与代理 一. 关于数据库. 当今的数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processing)、联机分析处理OLAP(On-Line Analytical Processing)。OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,...2009-05-31 15:47:24 · 91 阅读 · 0 评论 -
Java 程序中使用浮点数和小数
在 Java 程序中使用浮点数和小数充满着陷阱。浮点数和小数不象整数一样“循规蹈矩”,不能假定浮点计算一定产生整型或精确的结果,虽然它们的确“应该”那样做。最好将浮点运算保留用作计算本来就不精确的数值,譬如测量。如果需要表示定点数(譬如,几美元和几美分),则使用 BigDecimal。 不要用浮点值表示精确值 一些非整数值(如几美元和几美分这样的小数)需要很精确。浮点数不是精确值,所以...原创 2009-03-13 16:34:20 · 443 阅读 · 0 评论 -
Lucene基本使用介绍
[size=large][size=medium]本文的目的不在于对Lucene的概念和设计这些进行介绍,仅在于介绍怎么样去使用Lucene来达到自己想要的几种常见的全文检索的需求,如果想深入了解Lucene的话本文不会带给你什么收获的。看完本文后想更深入的了解Lucene请访问:http://lucene.apache.org 一. 概述 随着系统信息的越来越多,怎么样从这些信息海洋...原创 2009-03-14 12:10:17 · 158 阅读 · 0 评论 -
lucene使用与优化
[size=large]]1 lucene简介 1.1 什么是lucene Lucene是一个全文搜索框架,而不是应用产品。因此它并不像www.baidu.com 或者google Desktop那么拿来就能用,它只是提供了一种工具让你能实现这些产品。 1.2 lucene能做什么 要回答这个问题,先要了解lucene的本质。实际上lucene的功能很单一,说到底,就是你给它若干个字符...原创 2009-03-14 12:43:40 · 85 阅读 · 0 评论 -
Ant的使用
Ant的使用 Ant,以我自身的理解,它的作用类似与Linux下的makefile,可以对软件项目进行编译、生成文档、单元测试、打包、部署等;但又不同与makefile,因为makefile是基于shell的构建工具,但Ant是基于Java的构建工具,且使用Java语言可以很容易的对它进行扩展,Ant是基于XML的书写格式。 一、安装Ant 1、...原创 2009-03-29 15:06:10 · 90 阅读 · 0 评论 -
感觉java web开发越来越复杂
[size=medium] 前段时间使用django开发一个网站后(可惜流产了),现在回归java维护以前的一个管理系统.开始考虑自己的开发模式,老实说,用过django以后,发觉用java开发web应用太麻烦了.我喜欢的开发模式是要清晰. 这个管理系统的基本框架是这样的: spring + ibatis + jquery, 没有使用struts, 而是采用了一个ActionSe...2009-05-24 20:23:53 · 1104 阅读 · 0 评论 -
一路走来,技术总结
[size=medium] 经过半年的独立开发,适时停下脚步,进行自我总结,完善开发模式,或许技术上自己也遇到了瓶阱,处于迷茫时期。回顾,总结,前进。 第一阶段(2008/12---2009/01): 1.前端技术:jsp+jstl+action层(没有使用struts2) 2.service层:没有使用spring控制事务,也就是没有进行事务控制 ...2009-05-27 15:21:09 · 148 阅读 · 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 · 92 阅读 · 0 评论 -
java trap
1. String s = ""; String[] ss = s.split("_"); System.out.println(ss.length); // 結果为1 而如果 s="_"; //結果为0 2. Locale locale = new Locale("zh", "CN"); 第一个是语言代码,第二个是国家代码 而不能使用 Locale(...原创 2010-03-06 22:14:20 · 217 阅读 · 0 评论 -
javamail 小结
[size=medium]要发邮件,必须登录smtp邮件服务器,要收邮件,必须登录pop3或imap服务器 一般的邮件系统默认都没有开通smtp,pop3,imap服务,需要自己登录邮件系统的页面进行设置 而163默认是开通了smtp服务的,所以我们可以用java程序通过这个smtp服务器进行发送邮件 我们的java程序其实类似于outerlook这个的邮件客户端,会建立用户代理(User ...2010-03-09 11:09:33 · 105 阅读 · 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 · 159 阅读 · 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 · 132 阅读 · 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 · 140 阅读 · 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 · 145 阅读 · 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 · 93 阅读 · 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 · 79 阅读 · 0 评论 -
dao层疑惑
[size=medium]dao层的主要操作"增删改查","增删改"相对比较简单,主要是"查(select)"比较麻烦. 市面上有许多dao层的框架,主要是orm构架.orm对于增删改可能比较方便,但是涉及到复杂的查询可能也要嵌入sql语句才能完成吧.个人还是比较喜欢直接的jdbc操作,因为查询的sql语句一般比较复杂,还可能需要动态sql(if...else控制),没使用过H...2009-05-30 04:38:42 · 95 阅读 · 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 · 121 阅读 · 0 评论