HTML解析:Use javax.swing.text.html package, especially HTMLEditorKit.ParserCallback class.
菜单生成:struts-menu,还有自己做的JavaScript控件.
统计图:jfreechart
MVC框架:Mytapestry(每次改个界面都要重启服务器),Webwork,Struts
持久层:hibernate,ibats
XML解析:dom4j比较易用,至少代码可以比较简洁,但是如果要在里面传输二进制文件的话,就比较麻烦了.网上有两种方案,一种是将二进制流用BASE64编码成字符串,或者在MINI头里面传递,后者这方式我还不懂要怎么弄,前者那样的话,除了用Base64以外,直接用十六进制转字符串会更快,不过安全嘛~
日记功能:log4j,其实Java关于日记功能的好像就有4种包,但是好像这个比较好用.另外建议直接用Logger.getLogger()生成log类.
ajax:dwr可以利用JavaScript访问Java类,它会自己将Java方法返回的类序列化,转换成JavaScript变量;dojo则是有很多特效
Web service:axis 的Web service不错,不过如果排除那些规范的话,自己做一个轻量的会更实在
工作流:目前尚没有了解哪项开源的,但是一直想了解
XML封装:SOAP就是XML的一种协议,而且利用J2EE提供的api,可以很方便的操作附件,再者,至少规范的Web service就是用SOAP传递消息的.
想要用模板的话:Velocity,至于不明白什么时候用到这种情况的话,可以参考一下www.blogcn.com中的模板更改就知道了
全文搜索:lucene,它会把关键字索引存在文件中,而不是数据库,不过想想数据库不也是把数据存在文件中的,lucene的速度比较快,而且易用.刚开始也不明白为什么lucene会那么快,后面了解到是个博士做的这个开源包,呵呵,看来人家是有很精深的算法.
hibernate的session管理:利用线程ID的帮助来管理该线程的Session,好像大家现在也都是这样子的.
事务管理:spring有一项好处就是这个了.而且听说它的JTA管理也很不错
业务层和DAO层的bean管理:spring很好用,不过就是每个Bean都要写在配置文件中(当然,有人喜欢,有人不喜欢),如果不想写配置文件中的话,就自己写工厂管理Bean吧,我相信会比spring快一点,但是spring写在配置中这样有点好处就是,如果你想把某个接口的实现类换掉的话,改一下配置文件就可以了.
动态bean管理:JMX,其实自己也可以写程序来管理内存中的bean或者把bean属性放在配置文件里面的,JMX就是多加了一层规范.Jboss的JMX机制很方便,真的就叫热插拔了.
消息机制管理:JMS,这项我也只是看了些例子而已,还没在项目中应用过.
任务调控:quartz,不明白什么是任务调控吗?你想一想,比如你想在每天的某一个时间执行一些操作,比如定时更新数据库中的某些数据啦.当然数据库系统也有这种功能,但是如果想用程序来控制的话,就用它吧.不好的地方就是文档太少了,上回为了搞明白它怎么用的,源代码就翻了好久.
重量级的东西:EJB,这个嘛,嗯................................电信金融行业的可能觉得这东西很重要,不过我们嘛,就不说这东西了,没有发言权.
现在的框架都有一个理念,那就是可配置,任何东西都要可配置的.struts的配置啦,hibernate的配置啦,spring的配置啦,ibats的配置啦.但是有个有东西冒出来了,rails on ruby,它有个理念,就是"习惯优于配置",你不明白吗?想想,自己最好什么东西都不用配置,一切根据用户的习惯定制好.当然,这样对于开发是非常方便的.而第二个方便的地方,就是代码自动生成(脑海里突然想起.net了)!
说到代码自动生成的话,提一个xdoclet:要用这个的话,得先了解一下ant,xdoclet是个很有用的东西.不过我比较俗,我就是用它生成一个业务层或DAO的实现类和接口类代码.如果Java想要有跟Rails on ruby一样的东西的话,一定要用到xdoclet来了
其实现在也有一个框架,它号称是Java中的Rails on Ruby,那就是JdonFramework了,上回看了看,没啥感觉,没有Rails on Ruby给的震憾大
验证码的生成:就是在输入页面A中嵌入一个生成验证码的页面B,B里面有Java代码,生成随机字符串,再把字符串存入Session中.
Oracle:一直识别不了本地服务。后面才发现,是tnsnames.ora这个文件中,有的版本不支持SERVER_NAME,而只是支持SERVER。
有想过访问dll文件吗?有个东西叫JDI,步骤麻烦了点的东西
处理图片:sun公司有个开源软件jimi,是个不错的东西,处理图片的开源包有很多种,我那时候为什么选了jimi也忘了,好像是因为格式支不支持的原因吧.