混合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 3.7反编译插件的安装
- ››eclipse CDT NDK环境搭建步骤
- ››Eclipse 如何自定义java class注释
- ››eclipse.ini内存设置
- ››Eclipse+PyDev离线配置Python开发环境
- ››Eclipse下jQuery文件报错解决方案
- ››Eclipse快捷键与使用技巧
- ››Eclipse 常用快捷键 常用技巧My Eclipse常用快捷键...
- ››Eclipse快捷键二
- ››Eclipse快捷键一
- ››Eclipse+SVN+Google Code配置过程
- ››eclipse中开发android程序时,打开layout配置文件自...
赞助商链接