混合Eclipse、WTP、Struts和Hibernate
2008-01-05 09:42:30 来源:WEB开发网核心提示:使用Eclipse Web Tools PRoject、Tomcat应用服务器和MySQL数据库服务器,创建了一个Web应用程序,混合Eclipse、WTP、Struts和Hibernate,尽管该应用程序(DBTest)可能会很不错,但是也会存在一些局限性: 在servlet代码中,该文件是Struts框架的主要配置
使用Eclipse Web Tools PRoject、Tomcat应用服务器和MySQL数据库服务器,创建了一个Web应用程序。尽管该应用程序(DBTest)可能会很不错,但是也会存在一些局限性:
- 在servlet代码中,java Server Pages (jsp) 名称是硬编码的
- SQL也被硬编码到命令类中。
幸运的是,这些问题可以通过两种有趣的解决方案得以解决。第一个问题可通过使用开源Struts框架解决,该框架通过将模型动作映射到一个简单配置文件中的视图组件(比如JSP),从而分离应用程序的模型、视图和控制器。
第二个问题可使用提供Java和关系数据库持久性的框架来解决。Hibernate框架在对象和数据库表之间提供了一个强大的高性能映射引擎。本文将使用下列技术:
- J2SE 5.0 JRE:http://java.sun.com/j2se
- Eclipse 3.1:www.eclipse.org
- WTP 1.0:www.eclipse.org/webtools
- Tomcat 5.0:http://jakarta.apache.org/tomcat/
- MySQL 4.0.25:www.mysql.com
- MySQL Connector/J driver 3.1:www.mysql.com/prodUCts/connector/j/
- Struts 1.1:http://struts.apache.org
- Hibernate 3...www.hibernate.org
我们再扼要重述一下上次我们做了些什么。该基本Web应用程序实现了下列用例:
- 顾客必须在站点注册以下单
- 顾客可以下单
- 顾客可以浏览自己的订单
- 治理员可以列出全部已注册顾客
该系统使用通用servlet/jsp编程模型、MySQL数据库以及Tomcat应用服务器实现。系统域模型由Customer(顾客)和Order(订单)两个类表示(参见图1)。
创建了两个对应的数据库表CUSTOMERS和ORDERS来表示这些对象所持有的数据。还创建了4个负责执行上述用例的数据库命令类,以及四个作为控制器的Servlet,来收集用户输入信息,调用这些命令,并将响应转发给适当的JSP。CommandExecutor类负责使用Tomcat连接池处理数据库连接。 添加Struts支持
使用File-Import选项并选择要导入的WAR文件,将DBTestWAR文件导入Eclipse工作空间。假如工作空间中没有DBTest项目,上述操作就可以了。假如工作空间中已经有了DBTest项目,在Navigator视图的已有项目上右击,然后选择复制和粘贴,保存现有项目。当提示输入新项目名称时,选择DBTestStruts作为新项目名,以便不会覆盖现有项目。现在,为添加Struts支持,必须将下列文件复制到WEB-INF\lib文件夹:struts.jar、commons-lang.jar、commons-collections.jar、commons-beanutils.jar、commons-validator.jar、commons-logging.jar、commons-digester.jar、commons-fileupload.jar。
上述所有文件均可从Struts Web站点下载获得,这些文件包含Struts framework以及相应的Apache Commons包,这些包是处理诸如国际化、集合操作、实用工具、验证、日志记录、digester以及文件上传操作等特性所必需的。上述均为Struts支持的组件。本文不会用到上述所有功能,但是Struts依靠于其中的许多功能,例如,在解析Struts配置文件时就会大量用到digester功能。当需要使用日志记录、文件上传等服务时,这些功能就会派上用处。
因此,要将下列文件添加到WEB-INF文件夹中:struts-config.xml、struts-bean.tld、struts-Html.tld、struts-logic.tld、struts-nested.tld、struts-template.tld、struts-tiles.tld。
其中struts-config.xml文件最为重要,该文件是Struts框架的主要配置文件,包含有所有的动作映射、数据源、插件等的定义。参见清单1中的例子。
清单1:Struts配置文件
<?xml version="1.0" encoding="UTF-8"?>
[]
- ››Eclipse+SVN+Google Code配置过程
- ››eclipse中开发android程序时,打开layout配置文件自...
- ››Eclipse快捷键大全
- ››Eclipse Helios 之旅:看看 Eclipse 的最新同步发...
- ››Eclipse和MyEclipse的关系
- ››Eclipse 环境下的 OpenSocial 开发:通过 Shindig...
- ››Eclipse 向导机制扩展 -- 实现可定制的向导
- ››Eclipse 中的 EJB V3.0 数据库持久化
- ››Eclipse 常用快捷键
- ››Eclipse 插件开发 -- 深入理解菜单(Menu)功能...
- ››Eclipse 插件开发-如何扩展 WTP Wizard
- ››Eclipse Android 开发环境 搭建
更多精彩
赞助商链接