关闭

在eclipse中开发struts2应用

3069人阅读 评论(1) 收藏 举报

转自李刚的<struts2权威指南>

下面开始在Eclipse中整合Tomcat服务器,实际上,如果我们安装了MyEclipse插件,我们可以在Eclipse中整合大部分的Java EE服务器(包括Web服务器)。但如果我们不安装任何插件,Eclipse则很难与任何Java EE服务器整合。

提示:Eclipse必须安装了相应插件后才具有丰富的功能。为了开发Java EE应用,通常都推荐安装MyEclipse插件,该插件是一个商业产品,必须支付相应费用才可使用。

为了在Eclipse中整合Tomcat服务器,请按如下步骤进行。

1)单击Eclipse窗口里的“Window”菜单,出现“Window”菜单里包含的系列菜单项,单击该菜单里的“Preferences”菜单项,将弹出如图3.7所示的界面。

3.7 EclipsePreferences设置窗口

Preferences设置窗口是Eclipse大部分参数的设置窗口,该窗口还可设置Eclipse插件的相关属性。MyEclipse插件的相关属性就是在该窗口里设置的,而整合Java EE服务器只是MyEclipse插件的相关属性。

2)单击图3.7所示窗口左边导航树的MyEclipse节点,然后单击MyEclipse节点下的Application Servers子节点,看到如图3.8所示的界面。

3.8 Eclipse中整合应用服务器

3)拖动图3.8所示的窗口左边的垂直滚动条,我们可以发现大部分应用服务器的名字,例如JBossJettyResin等,当然也可以发现我们需要使用的Tomcat节点,然后我们单击Tomcat5节点,见出现如图3.9所示的界面。

3.9 整合Tomcat5

4)在图3.9右上方看到两个单选框:EnableDisable,为了整合Tomcat,显然应该选中Enable单选框。选中该单选框后,还应该在下面的三个文本输入框内输入相应的地址:例如Tomcat Home Directory里应该输入Tomcat的安装路径,笔者的Tomcat安装在D盘的tomcat5520路径下,故在该文本框内输入了D:/tomcat5520的内容。通常,一旦我们输入了正确的Tomcat安装路径,下面的两个文本框会自动输入,无需用户干预。

5)单击图3.9所示窗口右下方的“OK”按钮,返回Eclipse主界面,EclipseTomcat的整合成功。

下面介绍如何在Eclipse中建立一个Web应用,在Eclipse中建立一个Web应用也可借助于MyEclipse的帮助。借助于MyEclipse建立Web应用按如下步骤进行。

 1)单击Eclipse主界面的“File”菜单,在出现的菜单中单击“New”菜单项,该New菜单还有二级菜单,在New 菜单项的二级菜单中单击“Other...”菜单项,将弹出一个如图3.10所示的对话框。

3.10 新建Web应用的对话框

2)在如图3.10所示的对话框中,选中“Web Project”节点,表明将要创建一个Web应用,然后单击“Next”按钮,看到如图3.11所示的对话框。

3.11 新建Web应用

3)在如图3.11所示对话框的Project Name文本框中输入应用的名字,本应用使用Struts2Demo作为应用的名字,输入完成后可看到如图3.11所示的对话框。单击“Finish”按钮,新建Web应用成功。

3.3.2 增加Struts2支持

为了让Web应用增加Struts2支持,必须将Struts2框架的核心类库增加到Web应用中。将Struts2框架下lib路径下的struts2-core-2.0.6.jarxwork-2.0.1.jarStruts2框架的核心类库复制到Web应用的lib路径下,也就是%workspace%Struts2Demo/WebRoot/WEB-INF/lib路径下。

返回Eclipse的主界面,在Eclipse主界面的左上角资源导航中看到了Struts2Demo节点,选中该节点,并单击键盘上的F5键,将看到Eclipse主界面左上角资源导航中出现如图3.12所示的界面。

3.12 添加了Struts2类库

看到如图3.12所示的界面,表明该Web应用已经加入了Struts2的核心类库,但还需要修改web.xml文件,让该文件负责加载Struts2框架。

在如图3.12所示的导航树中,单击“WEB-INF”节点前的加号,展开该节点,看到该节点下包含的web.xml文件子节点。

单击web.xml文件节点,编辑该文件,编辑该文件没有丝毫特殊之处,同样是在web.xml文件中定义Struts2的核心Filter,并定义该Filter所拦截的URL 模式。至此,该Web应用完全具备了Struts2框架的支持。

3.3.3 部署Struts2应用

本应用的功能将非常类似于第二章所介绍的Struts2应用,因此本节所使用的JSP页面与第二章所使用的JSP页面也非常类似,故此处不再给出这些JSP页面的代码。

Eclipse中添加JSP页面也是很简单的,此处不再赘述。

建立了这些JSP页面后,单击Eclipse主界面上部署Web应用的工具按钮,部署Web应用的运行应用服务器的两个按钮如图3.13所示。

3.13 Eclipse中部署Web应用和启动服务器的按钮

Eclipse中部署Web应用请按如下步骤进行。

1)单击部署Web应用的按钮将看到弹出如图3.14所示的对话框。

3.14 部署Web应用的对话框

2)在如图3.14所示的对话框的上面看到选择项目的下拉列表,选中需要部署的Web应用,例如本示例就是Struts2Demo。单击右边的“Add”按钮,该按钮用于添加想要部署到的Web服务器,单击“Add”按钮后看到如图3.15所示的对话框。

3.15 部署到应用服务器

3)在如图3.15的对话框上面的Server下拉列表中选中Tomcat5选项,即对应于如图3.15所示界面。选中后单击“Finish”按钮,返回如图3.14所示的对话框,单击如图3.14所示对话框中的“OK”按钮,Web应用部署成功。

4Web应用部署成功后,单击如图3.13所示工具条中的“启动服务器”按钮旁的小三角,出现下拉菜单,将光标移动到下拉菜单中的Tomcat5菜单项,将出现该菜单项下的二级菜单。即看到如图3.16所示的界面。

3.16 启动服务器

5)单击如图3.16所示的菜单的Start菜单项,启动Tomcat服务器。然后在浏览器中访问刚才的Struts2Demo应用,将可看到本应用登陆页面。以Tomcat的端口为8888为例,应该在浏览器中访问如下地址:http://localhost:8888/Struts2Demo/login.jsp,将看到如图3.17所示的界面。

3.17 部署成功后的登陆界面

在图3.17 中看到该登陆页面的文本框没有任何提示信息,按钮上也没有文本,这是因为本应用缺少国际化资源文件。增加该应用所需的国际化资源文件,该资源文件与前面应用的资源文件相同,此处不再给出。

为了让Struts2应用加载该国际化资源文件,还应该使用struts.properties文件,该文件内指定一行如下代码:

#指定Struts2的国际化资源文件的baseNamemessageResource

struts.custom.i18n.resources=messageResource

至此,Struts2应用已经获得了国际化支持。如果在浏览器中再次浏览该页面,将看到如图3.18所示的界面。

3.18 增加了国际化资源文件后的登陆页面

3.3.4 增加应用的Action

Eclipse工具中新建一个Java类,该Java类的类名为LoginAction,其代码与第二章的所使用的LoginAction类代码相同,将该类文件保存在Struts2Demo应用的src路径下lee目录下。

新建一个Java文件的方法非常简单,此处不再赘述。本应用的Action类的代码与第二章的Action类完全一样,此处也不再给出。

增加了Struts2Action类后,还需要增加对应的配置文件,增加配置文件也是通过单击Eclipse的“File”菜单,然后单击该菜单里的“New”菜单项,再单击“New”菜单的二级菜单下包含的“File”菜单项。

提示:因为Eclipse暂时还没有专门的Struts2插件,因此只能用最原始的方式来建立一个Struts2的配置文件。等到专门的Struts2插件被开发出来后,应该可以有更简单的方法来建立Struts2的配置文件。

建立该文件后,为该文件增加Struts2Action定义,定义该Action与前面介绍的基本一致,需要定义Actionname属性,class等属性。增加Action定义后的struts.xml文件代码如下:

<?xml version="1.0" encoding="GBK"?>

<!-- 指定Struts2配置文件的DTD信息 -->

<!DOCTYPE struts PUBLIC

        "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"

        "http://struts.apache.org/dtds/struts-2.0.dtd">

<!-- 指定Struts2配置文件的根元素 -->

<struts>

         <!-- 所有的Action定义都应该放在package -->

<package name="lee" extends="struts-default">

           <!-- 定义Action -->

           <action name="Login" class="lee.LoginAction">

                            <!-- 定义三个逻辑视图和物理资源之间的映射 -->

                <result name="input">/login.jsp</result>

                <result name="error">/error.jsp</result>

                <result name="success">/welcome.jsp</result>

           </action>

    </package>

</struts>

至此,整个Struts2应用完全建立成功,如果读者还需要增加数据校验,则可增加对应的校验文件,并将该文件放在与对应Action源文件的同一路径下即可。

 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:10241次
    • 积分:133
    • 等级:
    • 排名:千里之外
    • 原创:3篇
    • 转载:1篇
    • 译文:0篇
    • 评论:5条
    文章存档
    最新评论