一、struts入门案例
1.、新建web项目HelloWorld,导入jar包
1.1.导入必备jar包即可,多导入会出错,链接:https://pan.baidu.com/s/1pMEtTj1 密码:9h9b
1.2.必备jar包一般包含一下几个
commons-fileupload-1.3.1.jar commons-io-2.2.jar commons-lang3-3.2.jar commons-logging-1.1.3.jar freemarker-2.3.22.jar javassist-3.11.0.GA.jar ognl-3.0.6.jar struts2-core-2.3.24.jar xwork-core-2.3.24.jar
2.配置web.xml
<?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"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <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>
3.新建包com.myz.action,在包下新建一个Action类
package com.myz.action; import com.opensymphony.xwork2.ActionSupport; public class HelloWorldAction extends ActionSupport { @Override public String execute() throws Exception { // TODO Auto-generated method stub System.out.println("执行action"); return SUCCESS; } }
4.在src目录下新建struts.xml,用于配置action
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd"> <struts> <!-- include节点是struts2组件化的方式,可以将每个功能模块独立到一个xml配置文件中,然后用include节点引用 --> <!-- 没有要引入的文件的话,可以不写这句话 --> <include file="struts-default.xml"></include> <!-- 1.package提供了将多个action组织为一个模块的方式 2.package的名字必须是唯一的 3.package可以扩展,当一个package扩展自另一个package时,该package会在本身配置的基础上加入父package的配置 name:package的名称 extends:继承的父package的名称 abstract:设置package的属性为抽象的,值为true的package不能定义action namespace:定义package命名空间,该命名空间影响到url的地址,默认为namespace="/",例如namespace="/test",那么访问的地址为http://localhost:8080/项目名/test/xx.action --> <package name="default" namespace="/" extends="struts-default"> <!-- name:action名字 class:action类路径 method:调用Action中的方法名 --> <action name="helloworld" class="com.myz.action.HelloWorldAction"> <result>/result.jsp</result> </action> </package> </struts>
5.在WebRoot目录下,新建result.jsp
6.发布项目到tomcat,地址栏输入http://localhost:8080/HelloWorld/helloworld.action,发现跳转到result.jsp,控制台打出”执行action“