IBatisNet(续)---使用心得

8、extends
      继承的属性也非常的有用,有很多SQL的操作的主题都一样,只是,Where子句不同,或Order By的内容不同等等,我们都可以将主体独立出来,作为BASE,然后写不同的条件或排序规则来继承它。如下:
     < select  id ="SelectEmployees"  parameterClass ="int"  resultMap ="SelectResult" >
            Select 
                  id,
                  empcode,
                  emppassword,
                  empname,
                  empsex,
                  empage,
                  empmail,
                  empphoneno,
                  description,
                  isadmin,
                  isdelete
            From Employees
        
</ select >

    
<!-- 员工列表 -->
    
< select  id ="EmployeeList"  parameterClass ="int"  resultMap ="SelectResult"  extends ="SelectEmployees" >
      Where isdelete='n'
    
</ select >

    
<!-- 员工明细 -->
    
< select  id ="EmployeeDetail"  parameterClass ="int"  resultMap ="SelectResult"  extends ="SelectEmployees" >
      Where id=#Id#
    
</ select >

    
<!-- 登录验证 -->
    
< select  id ="Login"  parameterClass ="int"  resultMap ="SelectResult"  extends ="SelectEmployees" >
      Where empcode=#EmpCode# and emppassword=#EmpPassword# and isdelete='n'
    
</ select >

    
<!-- 判断员工编号是否重复 -->
    
< select  id ="CheckEmpCode"  parameterClass ="String"  resultMap ="SelectResult"  extends ="SelectEmployees" >
      Where empcode=#EmpCode# and isdelete='n'
    
</ select >

 

四、Map or IDictionary Type Parameters
      我们还可以使用System.Collection.IDictionary的实例来作为Statement的参数类,最常用的也就是Hashtable了,如下:

< update  id ="ChangePassword"  parameterClass ="Hashtable" >
      Update Employees
      Set password=#Password#
      Where id=#Id#
</ update >

注意:在我们传入的hashtable中必须包括名为Password和Id的两个键,其值的类型必须匹配它们对应的数据库列的类型,否则将会出错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值