当前位置: 代码迷 >> Web前端 >> 创造Struts2 Web应用
  详细解决方案

创造Struts2 Web应用

热度:82   发布时间:2012-09-03 09:48:39.0
创建Struts2 Web应用

1、? 打开 MyEclipse ,创建 Web project ,命名 Struts2Demo

2、? Struts2 应用需要的 lib 文件复制到项目的 lib 目录下( Struts2Demo\WebRoot\WEB-INF\lib ),主要有:

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

3、? 在项目的 WEB-INF 目录下的 web.xml 文件中定义过滤器,此过滤器充当 MVC 模式中的核心控制器,对用户的所所有请求进行统一处理:

<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>

4、? 编写 Action 类。

一个 Action 是一段只有特定的 URL 被请求时才会执行的代码。 StrutsPrepareAndExecuteFilter 根据请求的 URL 的不同,来执行对应的 Action

package com.sljliuan.action;

import com.opensymphony.xwork2.Action;

public class HelloWorldAction implements Action {????????

???????? private String message;?

???????? public String getMessage() {

?????????????????? return message;

???????? }

???????? @Override

???????? public String execute() throws Exception {

?????????????????? message = "Hello World";

?????????????????? return SUCCESS;

???????? }

}

?

5、? 编写结果页面

创建 HelloWorld.jsp 文件,

<%@ page language="java" import="java.util.*" pageEncoding="GB18030" %>

<%@ taglib prefix="s" uri="/struts-tags" %>

<html>? <head>??

??? <title> 欢迎页面 ...starting page</title>??? ?????????

? </head>

??? <body>

??? <h2> <s:property value="message" /> </h2>

? </body>

</html>

?

6、? src 目录下,建立文件 struts.xml ,在 struts.xml 文件中配置 action

<?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>

???????? <package name="struts2" extends="struts-default" >

?????????????????? <action name="HelloWorld" class="com.sljliuan.struts.HelloWorldAction" >

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

?????????????????? </action>????????

???????? </package>

</struts>

7、? 发布并测试。

打开 tomcat conf 文件夹中的 server.xml 文件,在 </Host> 的前面加上以下代码,为项目所在的 WebRoot 目录设置虚拟目录 web

<Context path="/web" docBase="E:\MyEclipseworkspace\StrutsDemo\WebRoot" reloadable="true" /> ?? ,启动 tomcat ,在浏览器中输入地址: http://localhost:8080/web/HelloWorld.action ,即可看到显示结果。

?

  相关解决方案