Struts初始--环境搭建

来源:互联网 发布:剑倚天下灵骑进阶数据 编辑:程序博客网 时间:2024/05/21 22:33

一、搭建Struts2的开发环境:

1、建立一个JavaWeb应用

2、获取Struts2的开发包

比如已经下载好的struts-2.3.7-all.zip版本,也可以去官网struts.apache.org下载最新版本

3、拷贝运行Struts2必要的jar包(参考发行包\apps\struts2_blank.war

 

4、在classpath下建立一个名为struts.xml的配置文件(暂时只要根元素即可)


<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN""http://struts.apache.org/dtds/struts-2.3.dtd"><struts> </struts>

5、配置核心过滤器

 

<?xml version="1.0" encoding="UTF-8"?><web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  <display-name></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>  <welcome-file-list>    <welcome-file>index.jsp</welcome-file>  </welcome-file-list></web-app>

启动Tomcat,没有报错,能成功启动,则struts环境配置成功。

二:编写第一个struts项目:HelloWorld

注意的事项:

在没有联网的情况下,编写struts.xml文件时,没有代码提示信息:

解决方法:

首先将dtd文件拷贝到项目中去(一般我们在项目中建立目录WEB-INF/dtd)

寻找struts-2.3.dtd文件方法如下:


然后拷贝struts.xml目录中dtd的路径

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

最后在MyEclipse中设置:

Windows-->preferences-->MyEclipse-->XML-->XML Ctatlog-->add

 

包结构:


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><package name="p1"><action name="helloAction" class="cn.xbmu.action.HelloAction" method="sayHello"></action></package></struts>

HelloAction.java

package cn.xbmu.action;import java.io.IOException;import javax.servlet.http.HttpServletResponse;import org.apache.struts2.ServletActionContext;//普通的JavaBean:POJO//动作类与ServeltAPI解耦了//每次都会由框架实例化,没有线程安全问题public class HelloAction {public HelloAction(){  System.out.println("实例化了。。。。");}public String sayHello() throws IOException{//输出Hello World到页面HttpServletResponse response = ServletActionContext.getResponse();response.getWriter().write("Hello World");return null;}}

index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>第一个struts案例</title></head><body><!--  <c:url    value 属性值   var 属性名></c:url>--><c:url value="/helloAction" var="url"></c:url><a href="${url}">sayHello</a> </body></html>


0 0
原创粉丝点击