您的位置:首页 > 编程语言 > Java开发

01-struts2之配置环境(Eclipse )

2011-07-26 16:32 281 查看
说明:有下滑线的部分表示设置不同,会有所不同;

           代码颜色为#ff6600

一:软件

IDE版本:Eclipse  helios,Service Release 1 下载地址:http://www.eclipse.org/downloads/

struts版本:struts-2.0.14   下载地址: http://struts.apache.org/2.0.14/index.html
二:设置环境

1、分别解压上述两个文件,(struts-2.0.14-all.zip是完整版,包括example,doc,api等)

2、解压好的Eclipse可以直接运行,无需安装,打开Eclipse IDE。

3、选择【文件】-【新建】-Dynamic Web Project,点击下一步,任意写个文件名,即项目名(如 struts2),最后点击完成。

4、选择该项目,右键单击“属性”,打开该项目的“属性窗口”,选择“Java Build Path”  在右窗口中选择“Source” ,然后最下方有个Default output folder:(即默认类存放路径,不是源文件的存放路径),输入:

                                struts/WebContent/WEB-INF/classes 

     输入完成后, 单击确定。

5、打开解压后的struts-2.0.14-all.zip包,选择以下5个jar文件,(至于为什么是这个,尚不明确。)将其放置/WEB-INF/lib目录下

      commons-logging-1.0.4.jar

      freemarker-2.3.8.jar

      ognl-2.6.11.jar

      struts2-core-2.0.14.jar

      xwork-2.0.7.jar

     以上包的版本号大家可能不同,但基本没有多大关系。但是struts2.3.*的版本不能保证。

6、tomcat的设置,在此先不再说明,有时间再补充。tomcat配置方式有多种,大家自己配置一下。但不要忘记将该项目添加到tomcat中。

三、以一个用户登录为例

1、功能:

        login.jsp页面用于输入用户名和密码

       success.jsp页面用于显示在login.jsp页面的内容。

       com.test.UserAction类是一个Action类。用于接收处理login.jsp传入的数据

       struts.xml 设置UserAction类与login.jsp的传送地址的对应关系(表述不是很清楚,大家可以看看mvc模式介绍)

        web.xml设置struts的过滤器(也不是很肯定这么说)

2、步骤(可以不按照此顺序)

     a、在/WebContent/下新建login.jps页面,在<body></body>内输入以下内容,如下:

                          <s:form action="login" method="post">

                         <s:textfield name="userName" label="用户名"/><br>

                         <s:textfield name="userPassword" label="密码”/><br>

                          <s:submit label="提交"/>

                         </s:form>

          以上用到的是struts2的标签。在用到该标签时需要在jsp页面头部输入: <%@ taglib prefix="s" uri="/struts-tags" %>

     b、新建UserAction类(com.test.UserAction),内容如下:

                                                 
   package com.test;

                                                      import com.opensymphony.xwork2.ActionSupport;

                                                       @SuppressWarnings("serial")

                                                       public class UserAction extends ActionSupport {

                                                             private String userName;// 存放用户名

                                                               private String userPassword;// 存放密码

                                                        public String getUserName() {

                                                             return userName;

                                                           }

                                                          public void setUserName(String userName) {

                                                                    this.userName = userName;

                                                              }

                                                             public String getUserPassword() {

                                                                         return userPassword;

                                                               }

                                                              public void setUserPassword(String userPassword) {

                                                                            this.userPassword = userPassword;

                                                                   }

                                                                 // 默认的执行方法

                                                                   @Override

                                                                public String execute() throws Exception {

                                                                                  return SUCCESS;

                                                                               }

                                                                }

 说明:以上的gets,sets方法是必须的,且后面的名称(如setUserName的UserName,除首字母是大写外,)一定要对应到jsp所设置的textfield中的name的属性名称(或者可以反过来说,textfield标签的name属性值要与sets名称对应)。execute()方法是当页面提交时,执行的一个默认方法。

  c、在/WebContent/下新建success.jsp页面,在<body></body>内输入以下内容,如下:

                              用户名: <s:property value="userName"/><br>

   
4000
                          用户密码:<s:property value="userPassword"/><br>

  说明:property标签的value属性内容也是和set名称对应。

    d、在源文件目录下(一般都在src目录下)新建文件struts.xml,内容如下:

       1                                           
<?xml version="1.0" encoding="UTF-8" ?>

       2                                            <!DOCTYPE struts PUBLIC

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

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

                                                 

       5                                         <struts>

       6                                              <package name="test" extends="struts-default">

       7                                                     <action name="login" class="com.test.UserAction">

       8                                                          <result>/success.jsp</result>  

       9                                                     </action>

       10                                            </package>

        11                                      </struts>

          说明:1-4行内容一般是保持不变的,直接复制即可,在第6行中,packae中的name名称可以任意,extends="struts-default"表示其继承struts-default.xml文件,该文件在struts2-core-2.0.14.jar包中。具体说明不在此文中,详细内容将在后续文章中写出。

     e、在WebContent/WEB-INF目录下新建web.xml,若有就不要新建了。具体内容如下

          <?xml version="1.0" encoding="UTF-8"?>

          <web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"                                xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <filter>

        <filter-name>struts2</filter-name>

        <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>

    </filter>

    <filter-mapping>

        <filter-name>struts2</filter-name>

        <url-pattern>/*</url-pattern>

    </filter-mapping>

    <welcome-file-list>

        <welcome-file>login.jsp</welcome-file>

    </welcome-file-list>

</web-app>

说明:以上内容可以完全ctrl+v。具体说明在后续文章中会提到。

四、测试

    运行Tomcat(前提是Tomcat设置成功),打开浏览器,输入http://localhost/struts/login.jsp,若成功可以显示用户登录页面,当输入内容点击提交时,可以出用户名,密码的内容。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息