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

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

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

    一滴水

    java 2006年1月新開始:)
    隨筆 - 10, 文章 - 2, 評論 - 6, 引用 - 0
    數據加載中……

    Ibtis基本配置--[添加ibatis Dao支持]

    基本配置見上篇
    一.添加配置文件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
    ="yidishui/daoIbatisImpl/sql/SqlMapConfig.xml"/>
    ????????
    </transactionManager>
    ????????
    <dao?interface="yidishui.dao.PersonDao"??implementation="yidishui.daoIbatisImpl.PersonDaoImpl2"/>
    ????
    </context>
    </daoConfig>
    二.添加DaoConfig類
    package?yidishui;

    import?com.ibatis.dao.client.DaoManager;
    import?com.ibatis.dao.client.DaoManagerBuilder;
    import?com.ibatis.common.resources.Resources;

    import?java.io.Reader;
    import?java.util.Properties;

    public?class?DaoConfig?{
    ????
    private?static?final?String?resource?=?"yidishui/dao.xml";
    ????
    private?static?final?DaoManager?daoManager;

    ????
    static?{
    ????????daoManager?
    =?newDaoManager(null);
    ????}


    ????
    public?static?DaoManager?getDaoManager()?{
    ????????
    return?daoManager;
    ????}


    ????
    public?static?DaoManager?newDaoManager(Properties?props)?{
    ????????
    try?{
    ????????????Reader?reader?
    =?Resources.getResourceAsReader(resource);
    ????????????
    return?DaoManagerBuilder.buildDaoManager(reader,?props);
    ????????}
    ?catch?(Exception?e)?{
    ????????????
    throw?new?RuntimeException("Could?not?initialize?DaoConfig.??Cause:?"?+?e,?e);
    ????????}

    ????}

    }
    三.修改Dao實現,添加類PersonDaoImpl2
    package?yidishui.daoIbatisImpl;

    import?yidishui.dao.PersonDao;
    import?yidishui.domain.Person;

    import?java.util.List;
    import?java.sql.SQLException;

    import?com.ibatis.dao.client.template.SqlMapDaoTemplate;
    import?com.ibatis.dao.client.DaoManager;

    public?class?PersonDaoImpl2?extends?SqlMapDaoTemplate?implements?PersonDao?{
    ????
    public?PersonDaoImpl2(DaoManager?daoManager)?{
    ????????
    super(daoManager);
    ????}


    ????
    public?void?insertPerson(Person?person)?throws?SQLException?{
    ????????insert(
    "insertPerson",?person);
    ????}


    ????
    public?void?updatePerson(Person?person)?throws?SQLException?{
    ????????update(
    "updatePerson",?person);
    ????}


    ????
    public?Person?getPersonById(int?personId)?throws?SQLException?{
    ????????
    return?(Person)?queryForObject("getPersonById",?personId);
    ????}


    ????
    public?void?deletePerson(int?personId)?throws?SQLException?{
    ????????delete(
    "deletePerson",?personId);
    ????}


    ????
    public?List?allPersonList()?throws?SQLException?{
    ????????
    return?queryForList("allPersonList",?null);
    ????}

    }
    四,測試PersonDaoImpl2Test(正確行驗證)
    package?yidishui.daoIbatisImpl;
    import?junit.framework.*;
    import?yidishui.daoIbatisImpl.PersonDaoImpl;
    import?yidishui.domain.Person;
    import?yidishui.dao.PersonDao;
    import?yidishui.DaoConfig;

    import?java.sql.SQLException;
    import?java.util.List;

    import?com.ibatis.dao.client.DaoManager;

    public?class?PersonDaoImpl2Test?extends?TestCase?{

    ????DaoManager?daoManager;

    ????
    protected?void?setUp()?throws?Exception?{
    ????????daoManager?
    =?DaoConfig.getDaoManager();
    ????}


    ????
    public?void?testInsertPerson()?{
    ????????PersonDao?personDao?
    =?(PersonDao)?daoManager.getDao(PersonDao.class);

    ????????Person?person?
    =?new?Person();
    ????????person.setPersonName(
    "yidishui");
    ????????person.setPersonEmail(
    "yidishui1570@gamil.com");
    ????????person.setPersonAge(
    100);

    ????????
    try?{
    ????????????personDao.insertPerson(person);
    ????????}
    ?catch?(SQLException?e)?{
    ????????????e.printStackTrace();??
    //To?change?body?of?catch?statement?use?File?|?Settings?|?File?Templates.
    ????????}


    ????}


    ????
    public?void?testUpdatePerson()?throws?Exception?{
    ????????PersonDao?personDao?
    =?(PersonDao)?daoManager.getDao(PersonDao.class);
    ????????Person?person?
    =?new?Person();
    ????????person.setPersonId(
    1);
    ????????person.setPersonName(
    "caotao");
    ????????person.setPersonEmail(
    "caotao1570@gamil.com");
    ????????person.setPersonAge(
    1100);
    ????????personDao.updatePerson(person);

    ????}


    ????
    public?void?testDeletePerson()?throws?Exception?{
    ????????PersonDao?personDao?
    =?(PersonDao)?daoManager.getDao(PersonDao.class);
    ????????personDao.deletePerson(
    1);
    ????}


    ????
    public?void?testAllPersonList()?throws?Exception?{
    ????????PersonDao?personDao?
    =?(PersonDao)?daoManager.getDao(PersonDao.class);
    ????????List?list?
    =?personDao.allPersonList();
    ????????assertTrue(
    "list?size?is?0",?list.size()?>?0);
    ????????
    for?(int?i?=?0;?i?<?list.size();?i++)?{
    ????????????Person?person?
    =?(Person)?list.get(i);
    ????????????System.out.println(person.getPersonName());
    ????????}

    ????}


    }
    五.運行測試
    ?測試成功ok完成

    posted on 2006-07-19 17:06 一滴水 閱讀(2567) 評論(0)  編輯  收藏 所屬分類: ORMjava開發總結

    主站蜘蛛池模板: 2020天堂在线亚洲精品专区| 国产亚洲真人做受在线观看| 国产成人精品亚洲2020| 最近最新高清免费中文字幕| 亚洲视频在线观看| 99热这里只有精品6免费| 亚洲一级二级三级不卡| 88av免费观看入口在线| 亚洲日本乱码一区二区在线二产线| 日韩视频免费在线观看| 久久综合亚洲色HEZYO社区| 亚洲最大免费视频网| 国产成人精品亚洲2020| 国产成人精品123区免费视频| 美女的胸又黄又www网站免费| 亚洲国产成人久久一区久久| 国产免费高清69式视频在线观看| 亚洲国产精品一区二区成人片国内| 久久久久国产免费| 亚洲欧洲自拍拍偷综合| 性感美女视频免费网站午夜| 在线观看亚洲电影| 亚洲精品乱码久久久久久中文字幕| 久久精品国产大片免费观看| 亚洲av日韩av无码av| 国产乱弄免费视频| 久久www免费人成精品香蕉| 亚洲网址在线观看你懂的| 男女免费观看在线爽爽爽视频 | 亚洲成人激情在线| 国产精品1024永久免费视频| 亚洲色偷偷色噜噜狠狠99网| 久久亚洲中文字幕精品一区四| 嫩草在线视频www免费观看| 亚洲精品456人成在线| 精品亚洲一区二区三区在线观看| 99re视频精品全部免费| 色五月五月丁香亚洲综合网| 亚洲AV永久无码精品一百度影院 | 亚洲另类激情专区小说图片| 久久狠狠躁免费观看2020|