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

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

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

    posts - 189,comments - 115,trackbacks - 0

    MyEclipse+struts+Hibernate配置開發手冊

    MyEclipse+struts+Hibernate配置開發手冊

    ?

    說明:

    ?

    這個手冊只是為初學者制作的環境配置和快速開發的一些基本方法,為的是廣大愛好者能快速上手,少走我走過的彎路,里面沒有任何關于 java 模式和其他相關的說明。本人水平有限,也沒有能力去討論關于模式設計和開發細節的一些內容。

    ?

    建議:

    ?

    如果你還不清楚 struts hibernate 的一些基本原理,希望能先去了解一下這方面的相關內容。

    ?

    推薦:

    ?

    Hibernate 中文手冊》作者認為要學 Hibernate 看這個就足夠了,里面幾乎包括了所有的細節,不過可能不太適合快速入門。

    ?

    地址: http://www.hibernate.org/hib_docs/v3/reference/zh- cn/html_single/

    ?

    關于 struts 的資料就很多了,這里推薦一個可以下載一些入門教程的網站。

    ?

    地址: http://www.wnetw.com/jclub/index.jsp

    ?

    強烈建議入門的朋友先了解一下基本的原理!否則本文章可能對你沒有任何幫助。

    ?

    相關工具下載:(注意版本)

    mysql5.0 http://www.mysql.org

    eclipse 3.1.1 http://www.eclipse.org

    myeclipse4.0.3 http://www.myeclipseide.com

    &nb sp;tomcat5.5

    ?

    安裝:

    ?

    關于 tomcat mysql 的安裝就不多說了,需要注意的是最好保證你的 jdk 1.5 的版本,并配置好你的環境變量,不然可能會遇到一些問題。

    ?

    eclipse 解開,再去安裝剛下載的 myeclipse ,在安裝的時候需要把路徑指定到剛才解開的 eclipse 上,由于 myeclipse 是個收費軟件,所以需要注冊。不過一般按照 Chinese 的習慣,去 google 一個注冊碼就可以了 :}

    ?

    開發環境部署:

    ?

    好了,現在保證你的 mysql tomcat 服務能夠正常啟動, myeclipse 能夠正常打開(如果不能,可以去找一下相關的說明或者給作者留言)。下面我們就要開始真正的開始部署一個傳說中的 tomcat+struts+hibernate+mysql 結構的工程了!( faint! 前言就寫的我好累)

    ?

    首先,在 myeclipse 里新建一個工程。在左邊的 Package Exporler 面版里點右鍵選擇 new->project

    ?

    在跳出菜單里選擇 MyEclipse->J2EE Projects->Web Project

    ?

    點擊 next 后進入如下畫面:

    工程名為: test

    ?

    結束后點擊 Finish

    ?

    好了,如果成功的話你就會在 Package Exporler 里看到一個新的 test 工程!現在我們先配置一下數據庫方面的東西。首先在你的 mysql 里建立一個數據庫 webases ,再在里面新建一個表 admin ,里面三個字段分別為 id,name,password 其中 id 為自動取值的主鍵( mysql 具體的操作可以自己找資料,不是本文涉及范圍)。

    ?

    再回到 myeclipse ,選中 window->Open Perspective->Other

    ?

    可以看到現在跳出一個名為 Select Perspective 的菜單,在里面選中 MyEclipse Databases Exporler ,可以看到現在到了下面的頁面。

    按以上圖示輸入相關字段后點擊 Finish 便建立了一個數據庫連接,在新出現的 JDBC for Mysql 上點右鍵,選擇 Open connection …,確認用戶名和密碼正確后點 OK ,如果一切順利的話你會看到下面的畫面:

    這說明你已經和數據庫建立了正確的連接。現在我們再回到 window->Open Perspective- >Other …里的 MyEclipse ,也就是我們剛進來的時候看到的畫面。

    ?

    右鍵點擊你剛建立的工程 test 并選擇 MyEclipse->Add struts Capabilities …在跳出的菜單里按照如下輸入并確定:

    好了,現在你已經為你的工程增加了 struts ,接下來和上面一樣在右鍵工程后選擇 MyEclipse- >Add Hibernate Capabilities …一路確定下來為你的工程添加 Hibernate 。(為方便起見我們在選擇路徑時把 HibernateSessionFactory.java 放在了 src/com 下面,其實最好建立個單獨的目錄如 src/com/hibernate

    ?

    為了更好的演示我們不建立通常的登陸頁面而是建立個注冊頁面。選擇 src 目錄下的 hibernate.cfg.xml 文件。照如下填寫并保存。這樣 hibernate 就為你建立了數據庫的連接池。

    下面我們再選擇 WebRoot/WEB-INF/struts-config.xml 文件,在畫面中點擊右鍵選擇 new- >Form, Action and JSP 。如下填寫

    再選擇 JSP 選項,如下

    最后選擇 Finish

    ?

    再新建一個一個 success.jsp 的頁面,

    ?

    在剛才 struts- config.xml 文件里右鍵選擇 addAdmin 選擇 Properties ,在菜單里選擇 Forwords ,再點 add ,如下圖填寫

    最后你的 struts-config.xml 就是下面這個樣子:


    下面我們轉到 hibernate 。換到剛才我們建立數據庫的頁面,選擇你的 admin 的表點右鍵選擇 Create Hibernate Mapping 。選擇好打包路徑后選擇 Finish 。如圖:

    在你剛才選擇的路徑下(我為方便是 src/com/yourcompanyname/ )下新建立的文件 AdminDAOFactory.java 文件并輸入以下內容:

    ?

    package com.yourcompanyname;

    ?

    import java.util.Iterator;

    ?

    import org.hibernate.HibernateException;

    import org.hibernate.Query;

    import org.hibernate.Session;

    import org.hibernate.Transaction;

    ?

    import com.hibernate.SessionFactory;

    ?

    public class AdminDAOFactory {

    ?Session session;

    ?Transaction tx;

    ?public void add(Admin admin) throws HibernateException {

    ? /**

    ?? * Creation Date: 11-17-2005

    ?? * TODO Add a new admin user.

    ?? * @param An object of Admin

    ?? * @return void

    ?? * @author Coder Guo

    ?? */

    ? try {

    ?? session = SessionFactory.currentSession();

    ?? tx = session.beginTransaction();

    ?? //Add a new admin

    ?? session.save(admin);

    ?? tx.commit ();

    ? }catch(HibernateException e){

    ?? throw e;

    ? }finally{

    ?? if (tx!=null) {

    ??? tx.rollback();

    ?? }

    ?? SessionFactory.closeSession();

    ? }

    ?}

    }

    ?

    再打開 com.yourcompany.struts.action 下的 AddAdminAction.java 添加(其中如果有錯誤選中好按 ctrl+shift+o 自動添加包)

    ?

    public class AddAdminAction extends Action {

    ?

    ?// --------------------------------------------------------- Instance Variables

    ?

    ?// --------------------------------------------------------- Methods

    ?

    ?/**

    ? * Method execute

    ? * @param mapping

    ? * @param form

    ? * @param request

    ? * @param response

    ? * @return ActionForward

    ? * @author Coder Guo

    ? */

    ?public ActionForward execute(

    ? ActionMapping mapping,

    ? ActionForm form,

    ? HttpServletRequest request,

    ? HttpServletResponse response) {

    ? AddAdminForm addAdminForm = (AddAdminForm) form;

    ?

    ? // TODO Add a new admin

    ? Admin admin = new Admin();

    ? admin.setName(addAdminForm.getName ());

    ? admin.setPassword(addAdminForm.getPassword ());

    ? AdminDAOFactory adminDAO = new AdminDAOFactory ();

    ? adminDAO.add(admin);

    ?

    ? return mapping.findForward("success");

    ?}

    ?

    }

    ?

    再打開 com.yourcompanyname.struts.form 下的 AddAdminForm.java ,修改(如果有錯誤按照上面說的方法導入包)

    ?public ActionErrors validate(

    ? ActionMapping mapping,

    ? HttpServletRequest request) {

    ?

    ? // TODO Auto-generated method stub

    ? ActionErrors errors = new ActionErrors();

    ?

    ? Session session = SessionFactory.currentSession();

    ? Transaction tx = session.beginTransaction ();

    ? Query query = session.createQuery("select admin from Admin as admin where admin.name = '" + this.name + "'");

    ? Iterator it = query.iterate ();

    ? if (it.hasNext()){

    ?? errors.add ("addAdmin.err.name",new ActionMessage("form.addAdmin.err.name"));

    ? }

    ? tx.commit();

    ? SessionFactory.closeSession ();

    ? return errors;

    ?}

    ?

    ?public void reset(ActionMapping mapping, HttpServletRequest request) {

    ?

    ? // TODO Auto-generated method stub

    ? this.name=null;

    ? this.password=null;

    ?}

    ?

    再打開 com\yourcompanyname\struts 下的 ApplicationResource.properties 在這里面添加錯誤信息:

    ?

    Form.addAdmin.err.name=err

    ?

    最后,(汗,好累啊 -_-! )打開 addAdmin.jsp 修改成如下:

    ?

    <%@ page contentType="text/html; charset=utf-8"%>

    <%@ page language="java"%>

    <%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean"%>

    <%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%>

    ?

    <script language = "javascript">

    <!--

    function check(){

    ?if (loginForm.userName.value == "" || loginForm.password.value == ""){

    ? alert(" 請輸入完整的信息! ");

    ? loginForm.userName.focus();

    ? return false;

    ?}

    }

    //-->

    </script>

    ?

    ?<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

    <html:html>

    ? <head>

    ??? <html:base />

    ?

    ??? <title>login.jsp</title>

    ??? <link href="css/webcss.css" rel="stylesheet" type="text/css">

    ?

    ??? <meta http-equiv="pragma" content="no- cache">

    ??? <meta http-equiv="cache-control" content="no- cache">

    ??? <meta http-equiv="expires" content="0">

    ??? <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">

    ??? <meta http- equiv="description" content="This is my page">

    ? </head>

    ?

    ?

    ? <body>

    ? <center>

    ?? <p>&nbsp;</p>

    ?? <p>&nbsp;</p>

    ?? <table width="300" border="0" cellpadding="0" cellspacing="0">

    ?? <html:form action="/addAdmin" focus="name" method="GET">

    ???? <tr align="center" valign="middle">

    ?????? <td colspan="2" class="typt_normal"> 新增管理員 </td>

    ???? </tr>

    ???? <tr>

    ?????? <td width="100" align="center" valign="middle" class="typt_normal"> 名稱: </td>

    ?????? <td width="200" align="left"><html:text property="name" styleClass="text_s"/><html:errors property="addAdmin.err.name"/></td>

    ???? </tr>

    ???? <tr>

    ?????? <td width="100" align="center" valign="middle" class="typt_normal"> 密碼: </td>

    ?????? <td width="200" align="left"><html:password property="password" styleClass="text_s"/></td>

    ???? </tr>

    ???? <tr>

    ?????? <td colspan="2" align="center" valign="middle"><html:submit value=" 提交 " onclick="return check ();"/><html:reset value=" 重置 "></html:reset></td>

    ?????? </tr>

    ?</html:form>

    ?? </table>

    ?</center>

    ?</body>

    ?

    </html:html>

    ?

    其中可以看到如何在 struts 的標簽中使用 javascript 的方法。

    ?

    配置好 myeclipse tomcat 的連接。在 window->Preferences 做如下設定:

    在項目文件點右鍵- > myeclipse ”- > Add and remove project deployment ”,如下圖:

    好了,我們的配置工作基本結束了 , myeclipse 上開啟 tomcat 服務

    posted on 2006-03-20 10:45 MEYE 閱讀(620) 評論(0)  編輯  收藏 所屬分類: JAVA
    主站蜘蛛池模板: 免费福利视频导航| 一级做a爰片久久毛片免费看| 亚洲天天在线日亚洲洲精| 亚洲情XO亚洲色XO无码| 亚洲精品国产精品乱码不99| 亚洲人JIZZ日本人| 亚洲AV综合色区无码一区| 久久精品国产亚洲夜色AV网站 | 亚洲免费在线视频观看| 亚洲精品免费网站| 国拍在线精品视频免费观看| 毛片免费观看的视频| 女人18毛片特级一级免费视频| 波多野结衣久久高清免费| 免费国产a国产片高清网站| 亚洲高清视频一视频二视频三| 亚洲精品无码成人片在线观看 | 国产情侣激情在线视频免费看| 免费阿v网站在线观看g| 日本二区免费一片黄2019| 四虎影视免费永久在线观看| 久久久久亚洲AV成人网人人软件| 亚洲综合伊人久久综合| 亚洲av福利无码无一区二区| 亚洲精品在线播放视频| 亚洲私人无码综合久久网| 羞羞的视频在线免费观看| 久久性生大片免费观看性| 无码人妻AV免费一区二区三区| 日本高清在线免费| 日本免费一区二区三区最新| 4338×亚洲全国最大色成网站| 亚洲AV永久无码区成人网站 | 国产亚洲av片在线观看16女人| 亚洲最大的成网4438| 国产亚洲精品成人AA片| 一区在线免费观看| 1000部羞羞禁止免费观看视频 | 大地资源免费更新在线播放| 啊v在线免费观看| 亚洲国产人成在线观看69网站 |