首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 开源软件 >

IBATIS的思维,不同的实现思路

2012-06-28 
IBATIS的思想,不同的实现思路Hibernate比较适合对数据进行增,删,改的操作,而iBatis适合进行数据?查询,批量

IBATIS的思想,不同的实现思路

Hibernate比较适合对数据进行增,删,改的操作,而iBatis适合进行数据?查询,批量操作,而且方便利用DB底层的功能;IBATIS最吸引人的地方应该是将SQL从JAVA代码中分离,便于维护;但IBATIS的语法和分页并不灵活。

?

这里有个新的实现思路:利用JAVA动态编译功能将拼SQL的JAVA代码配置到XML中,实现SQL和JAVA代码的分离;

?

另外IBATIS的分页是使用逻辑分页,在数据量大时,会出现内存溢出的问题,这里可以使用org.hibernate.dialect.Dialect 中的分页sql生成函数:

    public String getLimitString(String query, int offset, int limit)    {        return getLimitString(query, offset > 0 || forceLimitUsage());    }    protected String getLimitString(String query, boolean hasOffset)    {        throw new UnsupportedOperationException("paged queries not supported");    }

?

?

?

oracle分页
SELECT T_2.* FROM (SELECT T_1.*, ROWNUM ROWSEQ FROM (

?

select * from HUST_ABORAD_ACHIEVEMENTS

?

) T_1 where rownum<? #rowsEnd# + ") T_2 WHERE T_2.ROWSEQ >= #rowsStart#

?

mysql分页:
select * from A limit #startRow#, #endRow#

?

热点排行