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

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

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

    zxbyhcsdn

     

    myeclipse搭建SSH2環境的項目引用

    >問題提出:

      比如說你要電子商務系統類似淘寶的那玩意兒,
      這個系統應該有一個管理系統門戶,還有一系列接口(提供給taobao旺旺客戶端調用的接口,還有淘寶開放平臺的那些api),然后就是一個網站門戶這個是顯然不可少的.

      也就是說,大多數系統都不可能只有一個門戶,并且從部署和安全的角度來說,管理門戶都會單獨部署,并且限制能夠訪問的ip.

      從邏輯架構來劃分也應該是 業務邏輯層(或者稱為服務層),然后是多個web門戶.或者接口服務門戶
      如果是采用ms的doNET的話,可以建一個解決方案,然后再建多個項目,由于doNET的編譯后一個項目是一個dll存在,故doNET來說應該根據分層建立多個項目.doNET
      也推薦采用這樣的方式.

      下面說一下采用j2ee處理這樣的情況的做法.這兒以myeclipse為例來說.

      根據上述情況,顯然我們應該把業務邏輯放到一個項目,其他的門戶根據每一個門戶單獨建立一個項目,以后系統部署的時候,也就將不同的門戶部署到不同的服務器上去.

      其實就是各門戶的項目引用業務邏輯項目就可以了,將公用的東東都抽象出來放到一起(比如說 商品相關的邏輯 在網站門戶,管理后臺,接口都會共用的)

      下面用一個簡單的例子,說明一下實現步驟. 最后再介紹ssh2項目怎樣實現.

    步驟如下:

    新建一個java project   [注意:]這兒一定要是一個java project ,我試過如果建成一個web projcet的話,可以編譯通過,但是發布的時候,引用的class不會自己動拷貝過去,除非手動拷貝.
    起名字為servicecore,名字無所謂的.
    然后在src,再建一個folder叫service

    隨便寫個類:

    package service;
    public class OneSrv
    {
     public String test()
     {
      return "this is test info";
     }
    }

    然后再建一個java web project
    起名字叫serviceweb,名字無所謂的
    然后,選中這個項目,屬性,java build path 里面選projects
    然后添加servicecore這個項目,
    在native library location那兒,選workspace,就指到 servicecore 的src目錄就是了 [這兒就表示發布的時候,會應用的項目的src目錄下的東東全部發布到目標項目]


    然后在serviceweb項目的src下面,再建一個folder叫srvproxy
    再寫一個類,來調用servicecore項目的的類的方法
    package srvproxy;
    import service.*;
    public class OneSrvProxy
    {
     public String test()
     {
      OneSrv oneSrv = new OneSrv();
      return oneSrv.test();
     }
    }

    再在jsp頁面上調用這個

    <%
          srvproxy.OneSrvProxy oneSrvProxy = new srvproxy.OneSrvProxy();
          out.println(oneSrvProxy.test());
        %>

    然后發布這個serviceweb項目到tomcate或者其他的容器,
    可以看到在發布的目錄下的serviceweb\WEB-INF\classes\service
    下面,也有那個OneSrv.class了

    呵呵..,如果沒有問題的話,訪問那個jsp頁面,就能看到調用的情況啦.

    也可以在jsp頁面上直接調用,OneSrv.class,
    對于web project 來說的話,只要是在\WEB-INF\classes\下面的class都可以調用的.

    這樣就把業務邏輯和表示分離了.

    但是上述的例子只是一個非常簡單的,實際的系統開發有數據訪問等. 下面就介紹對于一個SSH2 項目如何實現

    這兒以一個已經存在的ssh2 的web project 項目為利,講解怎樣吧業務邏輯抽象到一個java project 中.

    步驟如下:
    一,新建一個java project ,在servicecore里面隨便建一個lib,

    這兒分兩種情況,
    如果是已經有一個現成的ssh2 的 web project
    就想現成的 web projcect 的webroot的web-info下的lib文件甲的那些jar包全部拷貝到 servicecore 這個java project 的lib里面

    如果是沒有現成的ssh2 的web project 的話.
    可以通過myeclipse添加hibernate和spring的capability指定myeclipse的那些jar包到那個lib下,
    完成后,把那個lib下的jar包,拷貝到serviceweb的webroot的web-info下的lib文件甲

    這兒保證ssh2的相關的jar包都放到lib下面了.
    然后選中servicecore 屬性,java build path -> libraries 選擇Add External JARs,然后指向剛才的那個lib文件夾
    這樣項目就能使用那些jar包了. 同時把web project 的 build path 也 添加這些JAR包.

    [注意:]我遇到這樣一個問題,就是servicecore這個項目找不到數據庫 的jdbc驅動,明明我吧ojdbc14.jar加到那個buildpath里面了的.
           解決辦法是在myeclipse的java類編輯器,報錯的那個不能識別的包名下劃線那兒雙擊,會彈出來一個窗口,里面有一個oracle jdbc的驅動
           其實這個是另外的webprojcect里面的jdbc驅動.使用這個也沒關系,只要編譯通過就可以了.反正最總發布的時候,是使用web poject的的webroot的web-info下的lib文件甲里面的jar包.


    再將web project 的引用指向servicecore 這個java project ,步驟如前面所說.

    二, 相關的文件的處理

    1.spring 配置文件的處理.

    由于ssh2項目的話,spring配置文件里面會包含 dao,Bo,action等各層的class 故,需要對配置文件進行分割.

    這兒將所有的配置文件都放到/WEB-INF/classes/spr-conf/文件夾下面,
    [注意:]這個是發布后的位置,解決方案中的classes 就對應src 目錄.
    在web.xml里面的spring配置文件路徑就寫成如下
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/classes/spr-conf/*.xml</param-value>
    </context-param>

    然后在servicecore 的 src 目錄下新建spr-conf目錄,在所有的web project的src目錄下也建spr-conf目錄.
    將dao,bo等業務邏輯類的配置放到servicecore的 spring配置文件中,
    將action等類配置放到web projcect 的srping配置文件中,

    這樣struts的配置文件放到web project 中, hibernate的配置文件放到servicecore中.spring配置文件(action的在web projcect,其他的都放到servicecore).

    三 總述
      經過這樣的處理,項目就分離了,對于較大的項目,開發人員可以分工,一些人專門做業務邏輯,一些人專門做前端頁面,同時也達到了復用的效果.


     

    posted on 2010-02-20 12:06 zxbyh 閱讀(4088) 評論(0)  編輯  收藏 所屬分類: J2se


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


    網站導航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     

    導航

    統計

    常用鏈接

    留言簿(1)

    隨筆分類

    隨筆檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲一区二区久久| 91亚洲导航深夜福利| 国产产在线精品亚洲AAVV| 在线观看免费人成视频色| 亚洲AV无码专区在线亚| 好男人看视频免费2019中文| 亚洲av一本岛在线播放| 成年女人毛片免费播放视频m| 天堂亚洲国产中文在线| 日本无卡码免费一区二区三区| 亚洲欧美黑人猛交群| 免费人成在线观看视频播放| 添bbb免费观看高清视频| 亚洲一区二区精品视频| 国产永久免费高清在线| 99人中文字幕亚洲区| 国语成本人片免费av无码| 国产亚洲精品美女2020久久| 亚洲区不卡顿区在线观看| 国产免费一区二区三区在线观看| 亚洲一卡2卡三卡4卡有限公司 | 午夜在线免费视频 | 99在线免费观看| 亚洲黄色在线观看网站| 男人的好免费观看在线视频| 无码天堂亚洲国产AV| 亚洲精品无码久久千人斩| 精品国产无限资源免费观看| 亚洲国产成人精品无码区二本| 亚洲午夜日韩高清一区| 91精品国产免费入口| 亚洲av永久无码精品秋霞电影秋 | 无码午夜成人1000部免费视频| 亚洲国产情侣一区二区三区| 日韩激情无码免费毛片| 你是我的城池营垒免费观看完整版 | 精品国产免费观看一区| 三上悠亚电影全集免费| 久久精品国产亚洲AV蜜臀色欲| 四虎影视在线永久免费观看| 久爱免费观看在线网站 |