您的位置:首页 > 其它

IBatis.net使用说明

2011-06-19 15:36 274 查看
  IBatis.net是移植于java版本,所以在.net平台上的操作和java平台上的操作基本没有什么太大的差别。严格来说,ibatis.net并不算的上是一种orm,因为它的sql语句均写到了配置文件中,没有自己专门的sql映射语句。但是相比Nhibernate来说,不仅简易,而且方便易学。学习成本还是很低的。

回到正规话题上来,实例IBatis.net需要两个类库:IBatisNet.DataMapper.dll和IBatisNet.Common.dll,新建项目,我的项目结构如下:

View Code

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

<sqlMap namespace="Person" xmlns="http://ibatis.apache.org/mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<alias>

<typeAlias alias="Person" type="Model.Person,Model"/>

</alias>

<resultMaps>

<resultMap id="SelectAllResult" class="Person">

<result property="Id" column="PER_ID"/>

<result property="FirstName" column="PER_FIRST_NAME"/>

<result property="LastName" column="PER_LAST_NAME"/>

<result property="BirthDate" column="PER_BIRTH_DATE"/>

<result property="WeightInKilograms" column="PER_WEIGHT_KG"/>

<result property="HeightInMeters" column="PER_HEIGHT_M"/>

</resultMap>

</resultMaps>

<statements>

<select id="SelectAllPerson" resultMap="SelectAllResult">

select

PER_ID,

PER_FIRST_NAME,

PER_LAST_NAME,

PER_BIRTH_DATE,

PER_WEIGHT_KG,

PER_HEIGHT_M

from PERSON

</select>

<select id="SelectAllPerson2" resultMap="SelectAllResult">

select

PER_ID AS Id,

PER_FIRST_NAME AS FirstName,

PER_LAST_NAME AS LastName,

PER_BIRTH_DATE AS BirthDate,

PER_WEIGHT_KG AS WeightInKilograms,

PER_HEIGHT_M AS HeightInMeters

from PERSON

<dynamic prepend="WHERE">

<isParameterPresent>

PER_FIRST_NAME LIKE #FirstName#+'%'

</isParameterPresent>

</dynamic>

</select>

<select id="SelectByPersonId" resultClass="Person" parameterClass="int">

select

PER_ID,

PER_FIRST_NAME,

PER_LAST_NAME,

PER_BIRTH_DATE,

PER_WEIGHT_KG,

PER_HEIGHT_M

from PERSON

where PER_ID = #value#

</select>

<insert id="InsertPerson" parameterclass="Person">

<selectKey property="Id" type="post" resultClass="int">

${selectKey}

</selectKey>

insert into Person

( PER_FIRST_NAME,

PER_LAST_NAME,

PER_BIRTH_DATE,

PER_WEIGHT_KG,

PER_HEIGHT_M)

values

(#FirstName#,#LastName#,#BirthDate#, #WeightInKilograms#, #HeightInMeters#)

</insert>

<update id="UpdatePerson"

parameterclass="Person">

<![CDATA[ update Person set

PER_FIRST_NAME =#FirstName#,

PER_LAST_NAME =#LastName#,

PER_BIRTH_DATE =#BirthDate#,

PER_WEIGHT_KG=#WeightInKilograms#,

PER_HEIGHT_M=#HeightInMeters#

where

PER_ID = #Id# ]]>

</update>

<delete id="DeletePerson" parameterclass="Person">

delete from Person

where

PER_ID = #Id#

</delete>

</statements>

</sqlMap>

下面的文章将会整合log4net开发,并且更加详细。谢谢
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: