栏目分类
开源技术 | Hibernate | JUnit | Tomcat | JBoss | eclipse | Spring | ANT | Struts
java新手入门 | 基础入门 | 开发工具 | JDK | oop面向对象 | 安全配置
J2EE | mvcwea | 应用服务器 | Rmi/Corba/Jini | J2ee核心 | Servlet/JSP | EJB | JDBC/JDO
J2ME | 核心技术 | 嵌入式 | 无线开发
XML | WebServices | XMLBeans
高级技术 | 多线程 | 设计模式 | ULM/OO | p2p/Jxta | JavaSecurity
核心技术 | SwingAwtApplet | 高级编程 | 网络编程 | Jvm技术 | JavaMedia
其它技术 | 资讯动态
排行榜
·Struts的<logic:iterate>标记完成复杂循环
·Struts标签中的多层logic:iterator详解
·MyEclipse+struts+Hibernate配置开发手册
·用Validator简化Struts的开发过程
·Struts常见错误及原因分析
·用ActionForward优化你的Struts应用程序
·在Struts中使用Tiles框架
·StrutsMenu中基于角色的权限管理
·分享:用Struts上传多个文件的方法
·struts中文问题和国际化问题的终极解决方案
·Struts源码研究-Action-Input属性篇
·一个高效简洁的Struts分页方法
·Struts配置与组件介绍
·使用Struts提供的HTML标签库
·Struts中html:options的使用
·初学者入门:Structs中基本配置入门
·用Struts的Token机制解决表单重复提交
·struts源代码阅读(Commons-Beanutils包)
·学习Struts提供的和Form相关的标签
·Struts开发指南之工作流程实例演示

    您现在的位置: Linux宝库 >> Java >> 开源技术 >> Struts >> 文章正文
MyEclipse+struts+Hibernate配置开发手册
Linux宝库 收集整理  作者:Linux宝库  时间:2007-12-31  收藏本站
来自:http://doc.linuxpk.com/46356.html
联系:linuxmine#gmail.com
分类:[Struts]
  

  

说明:

  



  

这个手册只是为初学者制作的环境配置和快速开发的一些基本方法,为的是广大爱好者能快速上手,少走我走过的弯路,里面没有任何关于java模式和其他相关的说明。本人水平有限,也没有能力去讨论关于模式设计和开发细节的一些内容。

  



  

建议:

  



  

如果你还不清楚strutshibernate的一些基本原理,希望能先去了解一下这方面的相关内容。

  



  

推荐:

  



  

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

  



  

安装:

  



  

关于tomcatmysql的安装就不多说了,需要注意的是最好保证你的 jdk1.5的版本,并配置好你的环境变量,不然可能会遇到一些问题。

  



  

eclipse解开,再去安装刚下载的myeclipse,在安装的时候需要把路径指定到刚才解开的eclipse上,由于myeclipse是个收费软件,所以需要注册。不过一般按照Chinese的习惯,去google一个注册码就可以了:}

  



  

开发环境部署:

  



  

好了,现在保证你的mysqltomcat服务能够正常启动,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的方法。

  



  

配置好myeclipsetomcat的连接。在window->Preferences做如下设定:

  

  

  

在项目文件点右键->myeclipse”->Add and remove project deployment”,如下图:

  

  

  

好了,我们的配置工作基本结束了,myeclipse上开启tomcat服务

  
本文来自:http://doc.linuxpk.com/46356.html

 
     最新更新
·Struts开发指南之MVC架构实际应用
·Struts常见错误及原因分析
·利用Struts实现动态控制表格大小(1)
·利用Struts实现动态控制表格大小(2)
·在JBuilder9上使用Struts1.1的实现
·学习Struts提供的和Form相关的标签
·使用Struts提供的HTML标签库
·用ActionMapping构建漂亮的Struts应用程序
·用ActionForward优化你的Struts应用程序
·Struts应用程序的流程控制简介
·开始你的第一个struts应用程序
·集成Struts、Tiles和JavaServerFaces
·struts国际化程序尝试
·Struts用户和开发指南(前言之二)
·Struts用户和开发指南(前言之一)
·Struts模块化编程经典实战教程(三)
·Struts模块化编程经典实战教程(二)
·Struts模块化编程经典实战教程(一)
·Struts开发指南之安装与使用部分
·Struts开发指南之J2EEn层结构
·Struts开发指南之工作流程实例演示
·Struts开发指南之Taglib的初步了解
·Struts开发指南之其他Web构架介绍
·Struts的优点及其在Apusic上的安装
·Java进阶:分享Struts多模块的技巧
·Struts中html:options的使用
·使用Strutsportlet实现页面导航
·为Web服务构建Struts应用程序
·用Validator简化Struts的开发过程
·Struts入门--从原理到安装及实例讲解