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

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

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

    posts - 165, comments - 198, trackbacks - 0, articles - 1
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    跟我一起--分離持久層(rmic)

    Posted on 2007-12-18 17:47 G_G 閱讀(1102) 評論(0)  編輯  收藏 所屬分類: EJB
    學習了Rmic后 ,聯系自己hbm的一些想法。并在實際開發中做到分離持久層.
    在次,特留記錄。使用不當望大家踴躍拍磚!EJB原理學習_RMIC

    效果先上 (你的組員,不需要數據庫,不需要hbm,不需要配置文件)
    客戶端:在服務器開啟,并client端內classpath 包含有 *_Stub.class 和 hbmBean等類(底下有ant簡化部署) 在內網中隨便那臺電腦都可以中運行,那臺開發電腦可以沒有hbm,可以沒有數據庫
    package?Client;

    import?java.rmi.Naming;

    import?dao.ILiuDao;
    import?dao.LiuDaoRemote;
    import?dao.imp.DaoFactory;

    public?class?Client?{
    ????
    public?static?void?main(String[]?args)?{
    ????????
    try?{
    ????????????ILiuDao?hello?
    =?(ILiuDao)Naming.lookup("rmi://192.168.1.109:1099/RMI/LiuDaoRemote");
    ????????????System.out.println(hello.getLiu(
    "1").getName());
    ??????}?
    catch(Exception?e)?{
    ????????????e.printStackTrace();
    ????????}
    ????}
    }

    服務器端:
    dao需求接口? 其他隊員提供給管理持久層的隊員
    package?dao;

    import?java.rmi.Remote;
    import?java.rmi.RemoteException;

    import?hibernate.Customer;
    import?hibernate.Liu;

    public?interface?ILiuDao?extends?Remote{
    ????
    public?abstract?Liu?getLiu(String?id)?throws?RemoteException;
    }

    dao實現
    package?dao;

    import?java.rmi.Naming;
    import?java.rmi.RemoteException;
    import?java.rmi.server.UnicastRemoteObject;

    import?org.hibernate.Query;
    import?org.hibernate.Session;

    import?hbmConfig.HibernateSessionFactory;
    import?hibernate.Customer;
    import?hibernate.Liu;

    public?class?LiuDaoRemote?extends?UnicastRemoteObject?implements?ILiuDao?{
    ????
    public?LiuDaoRemote()?throws?RemoteException?{
    ????????
    super();
    ????}

    ????
    public?Liu?getLiu(String?id)throws?RemoteException{
    ????????Liu?ll?
    =??null?;
    ????????Session?session?
    =?HibernateSessionFactory.currentSession();
    ????????Query?qu?
    =?session.createQuery("from?Liu?lt?where?lt.id=:id");
    ????????ll?
    =?(Liu)qu.setString("id",id).uniqueResult();
    ????????HibernateSessionFactory.closeSession();
    ????????
    return?ll?;
    ????}
    }

    使用ant給客戶端提供 jar

    ????<target?name?=?"rmic">
    ????????
    <rmic?base="${class}"?includes="${rmic.package}/**/*Remote.class"/>
    ??? ??? <!-- 兩個jar 包 ,給客戶端提供的
    ???? ??? ??? 1. rmic帶有約定的 到入 *_Stub.class并除dao實現類(*Remote.class
    )打包
    ??? ?? ?? ?? 2. hbmBean 道入 hbmjava
    ? ? ? ?? -->
    ????????
    <jar?destfile="${rh.dir}/rmic.jar">
    ????????????
    <fileset?dir="${class}">
    ??????????????
    <include?name="${rmic.package}/**/*.class"?/>
    ??????????????
    <exclude?name="${rmic.package}/**/*Remote.class"/>
    ????????????
    </fileset>
    ????????
    </jar>
    ????????
    <jar?destfile="${rh.dir}/hbmBean.jar"?>
    ????????????
    <fileset?dir="${class}">
    ??????????????
    <include?name="${hbm.bean.package}/**/*.class"?/>
    ????????????
    </fileset>
    ????????
    </jar>????
    ????
    </target>


    開啟服務器:
    package?test;

    import?java.rmi.Naming;
    import?java.rmi.RMISecurityManager;
    import?java.rmi.RemoteException;
    import?java.rmi.registry.LocateRegistry;

    import?sun.awt.AppContext;

    import?dao.DaoFactoryRemote;
    import?dao.ILiuDao;
    import?dao.LiuDaoRemote;

    import?hibernate.Liu;

    public?class?StartMain?{
    ????
    ????
    public?static?void?main(String[]?args)?throws?Exception?{
    ???????????
    try?{?
    ????????????????System.setProperty(
    "java.security.policy",?"rmi.policy");??
    ????????????????LocateRegistry.createRegistry(
    1099);??
    ????????????????Naming.rebind(
    "RMI/LiuDaoRemote",?new?LiuDaoRemote());?
    ????????????}?
    catch(Exception?e)?{
    ????????????????e.printStackTrace();
    ????????????}
    ????}

    }





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


    網站導航:
     
    主站蜘蛛池模板: 久久久久亚洲AV无码麻豆| 亚洲精品一级无码中文字幕| 亚洲av无码专区在线播放 | 久久精品国产亚洲AV不卡| 亚洲乱色熟女一区二区三区蜜臀| 无人影院手机版在线观看免费| 亚洲小说区图片区| 最新中文字幕电影免费观看| 亚洲人成网亚洲欧洲无码| 日韩电影免费在线| 黄网站色视频免费看无下截| 亚洲国产日韩成人综合天堂| 一级做a爰片久久毛片免费看 | 午夜免费福利视频| 亚洲精品午夜视频| 人禽杂交18禁网站免费| 亚洲AV女人18毛片水真多| 可以免费观看一级毛片黄a | 精品日韩99亚洲的在线发布| 无码日韩精品一区二区免费| 亚洲av永久无码精品网址| 婷婷亚洲天堂影院| 成人性做爰aaa片免费看| 91亚洲导航深夜福利| 欧美a级成人网站免费| 男女猛烈xx00免费视频试看| 亚洲综合av永久无码精品一区二区| 免费无码av片在线观看| 亚洲系列中文字幕| 国产又黄又爽又刺激的免费网址 | 亚洲人成网站18禁止久久影院| 男男AV纯肉无码免费播放无码| 国产精品亚洲精品久久精品| 日韩精品亚洲aⅴ在线影院| 8x成人永久免费视频| 亚洲国产欧美一区二区三区| 不卡精品国产_亚洲人成在线| 久久久精品2019免费观看| 亚洲国产日韩a在线播放| 亚洲国产成人精品无码区在线观看| 国产一卡二卡3卡四卡免费|