伊峰獨居

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            30 隨筆 :: 30 文章 :: 5 評論 :: 0 Trackbacks
          開發(fā)環(huán)境部署:

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

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

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

            點擊next后進入如下畫面:


            工程名為:test

            結(jié)束后點擊Finish。

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

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

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

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

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

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

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

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

            下面我們再選擇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就是下面這個樣子:


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

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

          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="<%@ taglib uri="

          <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做如下設(shè)定:

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

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

            現(xiàn)在打開瀏覽器,輸入

            
          http://127.0.0.1:8080/test/addAdmin.jsp就可以看到你的jsp頁面了!

          posted on 2006-04-16 11:30 伊峰 閱讀(85) 評論(0)  編輯  收藏

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


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 宝鸡市| 洛浦县| 武清区| 龙山县| 临武县| 云浮市| 南川市| 烟台市| 巨鹿县| 沂南县| 侯马市| 普陀区| 会理县| 迁西县| 柘荣县| 乌海市| 嘉善县| 大悟县| 宁都县| 个旧市| 都江堰市| 呈贡县| 包头市| 龙胜| 称多县| 安西县| 商南县| 大新县| 黄山市| 桐乡市| 社会| 类乌齐县| 万盛区| 鄂托克旗| 新晃| 大邑县| 五峰| 张家港市| 离岛区| 丹东市| 犍为县|