精华帖 (0) :: 良好帖 (5) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-10-10
Ibatis 有SQL生成工具可以生成基本的SQL,节省了手工输入,而且比较规范,例如:
vdgame 写道 <sqlMap namespace="WEB_SHOP_NEWS" > <resultMap id="abatorgenerated_WebShopNewsResult" class="com.aaaa.data.object.shop.WebShopNews" > <result column="SHOP_NEWS_ID" property="shopNewsId" jdbcType="DECIMAL" /> <result column="REGID" property="regid" jdbcType="DECIMAL" /> <result column="SHOP_NEWS_NAME" property="shopNewsName" jdbcType="VARCHAR" /> <result column="SHOP_NEWS_KIND" property="shopNewsKind" jdbcType="VARCHAR" /> <result column="SHOP_NEWS_DATE" property="shopNewsDate" jdbcType="DATE" /> <result column="SHOP_NEWS_CLICK" property="shopNewsClick" jdbcType="DECIMAL" /> <result column="SHOP_NEWS_BIGKIND" property="shopNewsBigkind" jdbcType="DECIMAL" /> <result column="SHOP_NEWS_SMALLKIND" property="shopNewsSmallkind" jdbcType="DECIMAL" /> <result column="SHOP_NEWS_KEY" property="shopNewsKey" jdbcType="VARCHAR" /> </resultMap> <resultMap id="abatorgenerated_WebShopNewsResultWithBLOBs" class="com. aaaa.data.object.shop.WebShopNews" extends="WEB_SHOP_NEWS.abatorgenerated_WebShopNewsResult" > <result column="SHOP_NEWS_CONTENT" property="shopNewsContent" jdbcType="BLOB" /> </resultMap> <select id="select" resultMap="abatorgenerated_WebShopNewsResultWithBLOBs" parameterClass="com. aaaa.data.object.shop.WebShopNews" > select SHOP_NEWS_ID, REGID, SHOP_NEWS_NAME, SHOP_NEWS_KIND, SHOP_NEWS_DATE, SHOP_NEWS_CLICK, SHOP_NEWS_CONTENT, SHOP_NEWS_BIGKIND, SHOP_NEWS_SMALLKIND, SHOP_NEWS_KEY from WEB_SHOP_NEWS <dynamic prepend="where"> <isNotEmpty prepend="and" property="shopNewsId" > SHOP_NEWS_ID = #shopNewsId:DECIMAL# </isNotEmpty> <isNotEmpty prepend="and" property="regid" > REGID = #regid:DECIMAL# </isNotEmpty> <isNotEmpty prepend="and" property="shopNewsName" > SHOP_NEWS_NAME = #shopNewsName:VARCHAR# </isNotEmpty> <isNotEmpty prepend="and" property="shopNewsKind" > SHOP_NEWS_KIND = #shopNewsKind:VARCHAR# </isNotEmpty> <isNotEmpty prepend="and" property="shopNewsBigkind" > SHOP_NEWS_BIGKIND = #shopNewsBigkind:DECIMAL# </isNotEmpty> <isNotEmpty prepend="and" property="shopNewsSmallkind" > SHOP_NEWS_SMALLKIND = #shopNewsSmallkind:DECIMAL# </isNotEmpty> <isNotEmpty prepend="and" property="shopNewsKey" > SHOP_NEWS_KEY = #shopNewsKey:VARCHAR# </isNotEmpty> </dynamic> </select> 在XML文件里统一管理SQL,维护还是比较方便的. |
|
返回顶楼 | |
发表时间:2008-10-10
好恐怖啊.....这样写还有使用ibatis的意义么?
|
|
返回顶楼 | |
发表时间:2008-10-10
binn.zeng 写道 好恐怖啊.....这样写还有使用ibatis的意义么?
呵呵,请教一下,使用Ibatis的意义是?会因为换种方式来定义sql而恐怖吗?那未出笼的Ibatis3如果真的提供了annotation的实现岂不是自毁前程? |
|
返回顶楼 | |
发表时间:2008-10-10
看来支持的人不多呀!
|
|
返回顶楼 | |
发表时间:2008-10-10
JDBC多好
|
|
返回顶楼 | |
发表时间:2008-10-10
cnoss 写道 binn.zeng 写道 好恐怖啊.....这样写还有使用ibatis的意义么?
呵呵,请教一下,使用Ibatis的意义是?会因为换种方式来定义sql而恐怖吗?那未出笼的Ibatis3如果真的提供了annotation的实现岂不是自毁前程? 大家有兴趣的可以看看,这不是我的杞人忧天: http://opensource.atlassian.com/confluence/oss/display/IBATIS/iBATIS+3.0+Whiteboard |
|
返回顶楼 | |
发表时间:2008-10-10
可怕,如果以后要这样,我还不如用前面的版本。
|
|
返回顶楼 | |
发表时间:2008-10-10
Ibatis最方便的是可以将一些包含业务逻辑的条件写到sql里
虽然这样不利于移植 但很有效率 |
|
返回顶楼 | |
发表时间:2008-10-10
看了这,我宁愿用xml。
|
|
返回顶楼 | |
发表时间:2008-10-10
结构不优雅。我们写代码目的是为了即能说明白,又能运行才佳
|
|
返回顶楼 | |