<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 40, 文章 - 0, 評論 - 20, 引用 - 0
    數據加載中……

    Ibatis示例


    1.將ibatis 的jar 包添加到工程中

    2.先新建一個xml文件 SqlMap.xml,在這個文件中定義使用了哪些ibatis資源文件
    <?xml version="1.0" encoding="gb2312"?>
    <!DOCTYPE sql-map-config PUBLIC "-//iBATIS.com//DTD SQL Map Config 1.0//EN"
        "<sql-map-config>
      <sql-map  resource="com/montersoft/ibatis/common/monter.xml"/>
    </sql-map-config>

    3.定義資源文件monter.xml
    <?xml version="1.0" encoding="gb2312"?>
    <!DOCTYPE sql-map
        PUBLIC "-//iBATIS.com//DTD SQL Map 1.0//EN"
        "
    <sql-map name="monter">
       <result-map name="monterInfo" class="java.util.HashMap">
         <property name="id"  column="id" type="VARCHAR"/>
         <property name="name" column="name" type="VARCHAR"/>
         <property name="age"  column="age"  type="NUMBERIC"/>
       </result-map>  
       <dynamic-mapped-statement name="monter_getByPk" result-map="monterInfo">
       select id,name,age from monter where id = #id#
       </dynamic-mapped-statement>
    </sql-map>

    **注意dynamic-mapped-statement的name 必須唯一

    4.定義一個公共類來生成SqlMap
    package com.montersoft.ibatis.common;
    import java.io.Reader;
    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;
    import com.ibatis.common.resources.Resources;
    import com.ibatis.db.sqlmap.SqlMap;
    import com.ibatis.db.sqlmap.XmlSqlMapBuilder;
    public class SqlMapUtil { 
     private static Log loger = LogFactory.getLog(SqlMapUtil.class);
     public  static SqlMap  sqlMap ; 
     public static SqlMap loadSqlMap(){
      Reader reader = null;
      try{
       reader = Resources.getResourceAsReader("com/montersoft/ibatis/common/SqlMap.xml");
       return XmlSqlMapBuilder.buildSqlMap(reader);
      }
      catch(Exception e){   
       loger.error("there is a error=>"+e.getMessage());
      }
      return null;
     } 
     public static SqlMap getSqlMap(){
      if( sqlMap == null )
       sqlMap = loadSqlMap();
      return sqlMap;
     } 
    }
    5.再新建DAO,Vo,
    public interface  IVO { 
    }
    public class MonterVo implements IVO{ 
     public String id ;
     public String name;
     public int age;
     ...省去 get ,set 方法
    }
    public class MonterDao { 
       public IVO getBkPK(Connection conn,IVO vo) throws Exception{
        try{    
        Object map  =  SqlMapUtil.getSqlMap().
           getMappedStatement("monter_getByPk").executeQueryForObject(conn,vo);
        return   copyMap2Vo(map);
        }
        catch(Exception e){       
            throw new Exception(e.getMessage());
        }
       }  
       private IVO copyMap2Vo(Object map){
        MonterVo vo = new MonterVo();
      try{
       BeanUtils.copyProperties(vo,map);
      }
      catch(Exception e){
       e.printStackTrace();
      }
      return vo;
     }
    }

    6.至此就建立了一個簡單的ibatis示例.

    posted on 2006-01-06 16:39 月亮 閱讀(329) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 久久99精品免费视频| 最近最新中文字幕完整版免费高清| 久久亚洲国产欧洲精品一| 777爽死你无码免费看一二区| 最新亚洲春色Av无码专区 | 亚洲一级片内射网站在线观看| 毛片在线全部免费观看| 亚洲永久在线观看| 亚洲日韩国产精品乱| 九九精品免费视频| 国产黄在线观看免费观看不卡| 亚洲国产精品综合久久网各| 亚洲精品无码久久久久AV麻豆| 最近免费字幕中文大全视频| 无码免费又爽又高潮喷水的视频| 亚洲精彩视频在线观看| 亚洲欧洲久久av| 无码国产精品一区二区免费虚拟VR| 又黄又大的激情视频在线观看免费视频社区在线| 亚洲五月激情综合图片区| 免费又黄又爽又猛的毛片| 日本三级2019在线观看免费| 久久毛片免费看一区二区三区| 中文字幕亚洲精品无码| 久久亚洲精品国产精品黑人| 国产免费无遮挡精品视频| av无码久久久久不卡免费网站 | 国产精品成人免费福利| 国产精品成人啪精品视频免费| 亚洲一日韩欧美中文字幕在线| 亚洲AV无码成人精品区天堂| 免费国产小视频在线观看| 最新欧洲大片免费在线| 黄色免费在线网站| xxxx日本在线播放免费不卡| 亚洲精品久久无码av片俺去也 | 二个人看的www免费视频| 老湿机一区午夜精品免费福利| xxx毛茸茸的亚洲| 中文字幕亚洲第一在线| 国产精品亚洲成在人线|