`
yizhilong28
  • 浏览: 229186 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

ibatis 动态sql(Dynamic SQL)

阅读更多
  springside2allOne中ibatis只用几个孤零的ibatis的dao封装,没看到什么demo。
  官网http://wiki.springside.org.cn/display/springside/iBatis的说明也很简略。在Springside中使用ibatis,参考这里,http://leondu.iteye.com/blog/54694。
  IBatisGenericDao中get、getall明显公用一个statement,因此sql是动态的,参考
http://ibatis.apache.org/docs/dotnet/datamapper/ch03s09.html
   个人ibatis配置如下
 
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMapConfig  PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"        
    "http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<sqlMapConfig>	
	<settings 
		cacheModelsEnabled="true" 
		enhancementEnabled="true" 
		lazyLoadingEnabled="true" 
		errorTracingEnabled="true" 
		maxRequests="32" 
		maxSessions="10" 
		maxTransactions="5" 
		useStatementNamespaces="true" 
	/> 
	<sqlMap resource="com/jake/ibatis/conf/attraction-ibatis.xml" />

</sqlMapConfig>
  


 
<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE sqlMap        
    PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"        
    "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="com.jake.model.Attraction">

	<!-- Use type aliases to avoid typing the full classname every time. -->
	<typeAlias alias="Attraction" type="com.jake.model.Attraction" />
  
	<!-- Select with no parameters using the result map for Account class. -->
	<select id="select" resultClass="Attraction" parameterClass="int">
		select * from Attraction 
		 <isGreaterThan   compareValue="0">
       			where id = #id#
   		</isGreaterThan>
	</select>

<!-- 
	<select id="com.jake.model.Attraction.select" resultClass="Attraction" parameterClass="int">
		select * from Attraction where id=#id#
	</select>
 -->
 
	<insert id="insert" parameterClass="Attraction">
		insert into Attraction(id,name,description) values ( #id#,#name#,#description# )
	</insert>

	<update id="update" parameterClass="Attraction">
		update Attraction set name = #name#,description=#description#
		where id=#id#
	</update>

	<delete id="delete" parameterClass="int">
		delete from Attraction where id=#id#
	</delete>
	
	<select id="load" resultClass="Attraction" parameterClass="int">
		select * from Attraction where id=#id#
	</select>

</sqlMap>

  

 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics