浏览 6092 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2006-11-30
在配置文件sql-map-config.xml中,他是这么写的 <sqlMap resource="com/ibatis/jpetstore/persistence/sqlmapdao/sql/Account.xml"/> <sqlMap resource="com/ibatis/jpetstore/persistence/sqlmapdao/sql/Category.xml"/> <sqlMap resource="com/ibatis/jpetstore/persistence/sqlmapdao/sql/Product.xml"/> <sqlMap resource="com/ibatis/jpetstore/persistence/sqlmapdao/sql/Sequence.xml"/> <sqlMap resource="com/ibatis/jpetstore/persistence/sqlmapdao/sql/LineItem.xml"/> <sqlMap resource="com/ibatis/jpetstore/persistence/sqlmapdao/sql/Order.xml"/> <sqlMap resource="com/ibatis/jpetstore/persistence/sqlmapdao/sql/Item.xml"/> 其他是transactionManager的配置就不管了. 这里的Account.xml是不是就是分模块的配置文件?我猜想应该是的吧 再问问Account.xml里面的一些东西 <select id="getAccountByUsername" resultClass="account" parameterClass="string"> SELECT SIGNON.USERNAME, ACCOUNT.EMAIL, ACCOUNT.FIRSTNAME, ACCOUNT.LASTNAME, ACCOUNT.STATUS, ACCOUNT.ADDR1 AS address1, ACCOUNT.ADDR2 AS address2, ACCOUNT.CITY, ACCOUNT.STATE, ACCOUNT.ZIP, ACCOUNT.COUNTRY, ACCOUNT.PHONE, PROFILE.LANGPREF AS languagePreference, PROFILE.FAVCATEGORY AS favouriteCategoryId, PROFILE.MYLISTOPT AS listOption, PROFILE.BANNEROPT AS bannerOption, BANNERDATA.BANNERNAME FROM ACCOUNT, PROFILE, SIGNON, BANNERDATA WHERE ACCOUNT.USERID = #username# AND SIGNON.USERNAME = ACCOUNT.USERID AND PROFILE.USERID = ACCOUNT.USERID AND PROFILE.FAVCATEGORY = BANNERDATA.FAVCATEGORY </select> 我知道iBatis并没有hibernate那样,显示的对应column和field的对应关系. 就拿上面的select语句来说, iBatis怎么知道, SIGNON.USERNAME 这个东西对应哪个字段呢? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2006-11-30
#username#
有参数为username时就把username放入... 你引用时少了前面的头.... 头是类与名字的对应表....可以一起贴出来看 <resultMap id="incaseinfoResult" class="incaseinfomodel"> <result property="incaseinfo_id" column="incaseinfo_id" /> <result property="incaseinfo_incase_id" column="incaseinfo_incase_id" /> <result property="incaseinfo_product_id" column="incaseinfo_product_id" /> <result property="incaseinfo_product_name" column="incaseinfo_product_name" /> <result property="incaseinfo_quantity" column="incaseinfo_quantity" /> <result property="incaseinfo_rebate" column="incaseinfo_rebate" /> <result property="incaseinfo_price" column="incaseinfo_price" /> <result property="incaseinfo_flage" column="incaseinfo_flage" /> <result property="incaseinfo_remark" column="incaseinfo_remark" /> </resultMap> |
|
返回顶楼 | |
发表时间:2006-12-01
先谢谢你的回答。
我贴的是从iBatis的JPetStore copy过来的。#username#这个我是知道的,我以前用过公司的一个框架,和这个差不多,据说就是抄袭的iBatis,不过很多地方也不一样的。 我比较好奇的是分模块的配置,和dao.xml里面DAO interface的声明,dao.xml有模块化配置么?不会所有的dao interface都写在这里里面吧? 还有就是 column 和 field的映射了是如何做到的?谢谢 附上dao.xml的内容: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE daoConfig PUBLIC "-//ibatis.apache.org//DTD DAO Configuration 2.0//EN" "http://ibatis.apache.org/dtd/dao-2.dtd"> <daoConfig> <context> <transactionManager type="SQLMAP"> <property name="SqlMapConfigResource" value="com/ibatis/jpetstore/persistence/sqlmapdao/sql/sql-map-config.xml"/> </transactionManager> <dao interface="com.ibatis.jpetstore.persistence.iface.ItemDao" implementation="com.ibatis.jpetstore.persistence.sqlmapdao.ItemSqlMapDao"/> <dao interface="com.ibatis.jpetstore.persistence.iface.SequenceDao" implementation="com.ibatis.jpetstore.persistence.sqlmapdao.SequenceSqlMapDao"/> <dao interface="com.ibatis.jpetstore.persistence.iface.AccountDao" implementation="com.ibatis.jpetstore.persistence.sqlmapdao.AccountSqlMapDao"/> <dao interface="com.ibatis.jpetstore.persistence.iface.CategoryDao" implementation="com.ibatis.jpetstore.persistence.sqlmapdao.CategorySqlMapDao"/> <dao interface="com.ibatis.jpetstore.persistence.iface.ProductDao" implementation="com.ibatis.jpetstore.persistence.sqlmapdao.ProductSqlMapDao"/> <dao interface="com.ibatis.jpetstore.persistence.iface.OrderDao" implementation="com.ibatis.jpetstore.persistence.sqlmapdao.OrderSqlMapDao"/> </context> </daoConfig> |
|
返回顶楼 | |
发表时间:2006-12-03
iBatis出色的是Data Mapper框架,其DAO包不算好用,出了Spring之后就更显鸡肋了,未来可能会被列入deprecated
|
|
返回顶楼 | |
发表时间:2006-12-03
daocontext可以指定多个id,可以存在多个daocontext.
|
|
返回顶楼 | |
发表时间:2006-12-04
flyspider 写道 iBatis出色的是Data Mapper框架,其DAO包不算好用,出了Spring之后就更显鸡肋了,未来可能会被列入deprecated
同意这种说法,iBatis强在sql mapping,至于dao的管理还是交给spring去做吧 |
|
返回顶楼 | |
发表时间:2006-12-04
Ivan Li 写道 flyspider 写道 iBatis出色的是Data Mapper框架,其DAO包不算好用,出了Spring之后就更显鸡肋了,未来可能会被列入deprecated
同意这种说法,iBatis强在sql mapping,至于dao的管理还是交给spring去做吧 |
|
返回顶楼 | |
发表时间:2006-12-06
SIGNON.USERNAME是和你定义的简单javabean中的属性对应的,或者象上面兄台写的那样用map显示给出。
|
|
返回顶楼 | |