原创 AliasedResultTransformer hibernate的結果集轉換

基於hql/sql別名轉換hibernate的查詢結果。不用在擔心,使用sql查詢返回List<Object[]>需要再次轉換。使用hql查詢部分欄位也返回List<Object[]>了。使用了reflectasm,這個工具是基於asm的

原创 mysql通過表和function模擬oracle的sequence

1、新建表 CREATE TABLE `sequence` ( `seq_name` varchar(45) NOT NULL COMMENT 'sequence名', `seq_value` bigint(20) NOT NU

原创 xstream解析xml中有很多重複的field的xml

有些情況下,xml文件是這樣的 <body> <entryList> <field name="forumName">General Discussion</field> <field name="createDat

原创 apache httpclient 4 學習和例子

package com.eecn.warehouse.api.action; import java.util.regex.Matcher; import java.util.regex.Pattern; import org.apa

原创 java enum學習和用法,代替靜態常量

java enum是jdk1.5新增,雖然enum是使用靜態常量來實現的,反編譯後可以看到,但是相比靜態常量,enum更安全,可以遍歷。有諸多好處。 下面是個例子: public class TableDictionary { pub

原创 hibernate將hql轉換成count(*)的方法,支持所有的數據庫oracle,mysql等

protected String prepareCountHql(String hql) { //String sql = "select b.id, b.user_name, b.create_date from users b ";

原创 基於jibx解析xml中有很多field的xml

接上篇,對於xml中含有重複field的xml解析使用xml解析工具比較簡單,使用綁定工具就要稍作修改。如下xml: <entryList> <field name="userName">yinlei</field> <field nam

原创 spring security基於aop的方法攔截

spring security基於url的攔截,比較簡單一些。就不說了。說一下,基於aop的方法攔截。 1、首先從數據庫加載你要攔截的方法,包含包路徑+類名+方法名,這個要自己配置到數據庫中: import java.lang.refle

原创 spring和gwt整合,讓gwt直接調用spring bean的前端servlet

gwt和spring整合的關鍵是讓gwt可以訪問到spring的bean,先在提供一個前端servlet分發器,配置了這個servlet後,gwt的RemoteServiceServlet就不用在web.xml中一個一個的配置了。本文使用

原创 spring mvc表單數據綁定,對於基本類型和日期的處理WebDataBinder

因爲對於原生基本類型的form表單綁定,會出錯。需要指定具體的類型編輯器。用法如下:首先在BaseAction中增加方法initBinder,並使用註解@InitBinder標註,那麼spring mvc在綁定表單之前,都會先註冊這些編輯