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

myeclipse中创建struts2的web项目

2016-06-12 19:27 363 查看
一.struts jar包 放在WEB-INF 下的lib目录下。

网上对于struts2的核心jar包的说法有很多,不过自己手动尝试,还是一下几个jar包是必须的

commons-fileupload-1.2.2.jar

commons-io-2.0.1.jar

commons-lang-2.5.jar

commons-logging-1.1.1.jar

freemarker-2.3.16.jar

javassist-3.11.0.GA.jar

ognl-3.0.1.jar

struts2-core-2.2.3.jar

xwork-core-2.2.3.jar

(asm-3.1.jar   asm-commons-3.1.jar   这两个包不添加也能运行,但是一般情况下还是添加上去吧)
添加到这几个包发布就不成问题了。如果之后还出现什么问题再根据需要相应的添加,宁可少加不可多加,少加可以很容易查到问题,多加后就很容易出现冲突问题了。

二.web.xml

(生成项目的时候勾选web.xml选项即可自动生成,否则的话,在WEB-INF目录下新建一个xml文件取名将web.xml)

读别人的文章说,web中配置过滤器,在struts2.2.3中不能使用FilterDispatcher这个配置了,而是用StrutsPrepareAndExecuteFilter,否则的话,整个项目都不能运行,welcome-file就不能显示出来。

以下是web.xml 的 过滤器配置代码:

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

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">

  <display-name>ContactBook</display-name>

<filter>

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

      <filter-class>

          org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

      </filter-class>

  </filter>

  <filter-mapping>

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

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

  </filter-mapping>

 

</web-app>

三、struts.xml


在默认情况下,Struts2的配置文件名称为struts.xml,放在src根目录下。 如果不想[b]放在src根目录下,则需要在web.xml的init-param中配置
struts.xml的信息,如下:
[/b]

<filter>  
    <filter-name>struts2</filter-name>  
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>  
    <init-param>  
        <param-name>filterConfig</param-name>  
        <param-value>classpath:struts2/struts.xml</param-value>  
    </init-param>  
</filter>  
<filter-mapping>  
    <filter-name>struts2</filter-name>  
    <url-pattern>/*</url-pattern>  
</filter-mapping>  
struts.xml的文件内容如下:

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

<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>

</struts>

头部信息我们是极少注意的,上面的数字是表示版本号,如果我们不想写具体的版本号,就可以可以直接写2.0,这样一般不会出现问题。但是并不知道写2.0和写2.2会不会出现
差别,如果出现了,记得注意一下这个版本号。

注意到上面的三个方面就可以,运用struts2 架构啦~~~~

一点点废话(适合struts2 初学者):

在<struts></struts>体中,注明action信息,举例如下:

<struts>

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

        <action name="query" class="com.action.Action" method="queryMethod">

        <result name="index">/WEB-INF/pages/index.jsp</result>

       
<result name="add">/WEB-INF/pages/add.jsp</result>

        </action

    </package>

</struts>

这表示,我们提交表单的时候,可以写action=“query”,这样请求就会转到com.action.Action类中queryMethod函数来处理,处理后,return
结果字符串为“query”时 ,就会跳转到/WEB-INF/pages/index.jsp 这个界面。return
结果字符串为“add”时 ,就会跳转到/WEB-INF/pages/add.jsp 这个界面。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息