Struts框架介绍
1. 什么是Struts2框架
Struts2 框架是用来替代servlet和jsp。他的功能就是处理访问服务器的请求。
2. Struts2框架的优点
1. 接收参数(自动封装参数)
2. 参数的校验
3. 可以控制页面的跳转
4. 防止表单数据重复提交
5. 现实等待页面
3. 历史
Struts2, Struts1 在技术层面讲他们没有任何关系。技术使用的webwork这个公司的技术
扫描二维码关注公众号,回复:
2628723 查看本文章
Struts2框架搭建
1. 导包
官网下载Struts2
Struts2开发商并没有将这个jar进行分类,所以我们导包很难,所有进入到app文件下,这个文件下是一些war,这些war都是demo。将war包中的包全部复制出来就是我们要用的包。将struts2_blank.war改成.rar文件然后解压,然后将WEB-INFO下面的lib包全部导入到项目中。就完成了导包
2. 创建Action类
public class HelloAction {
public String hello(){
System.out.println("hello struts2");
return "success";
}
}
3. 创建配置文件 struts.xml
(1)文件位置 必须在src目录下 名字也必须是struts.xml
导入约束
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
然后在引入struts标签。
(2)去配置sction
<?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>
<package name="hello" namespace="/hello" extends="struts-default">
<action name="helloAction" class="cn.hd.hello.HelloAction" method="hello">
<result name="success">/hello.html</result>
</action>
</package>
</stru
(3)创建一个hello.html
配置过滤器的类名比较长,打开编译器的全局搜索,输入StrutsP就可以了,复制这个类的相对路径
<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)测试
在浏览器中输入
http://localhost:8080/hello/helloAction
页面上显示内容为hello.xml中内容,控制台打印hello struts2 内容
总结:404错误
1. struts.xml 文件位置放错了
2. struts.xml 文件名字写错了
3. hello.html 文件位置放错了
4. Tomcat 启动失败——
5. Struts.xml 中配置写错了
一个package中的namespace 和地址中不一致,Action中的name和地址中的helloAction不一致,Result 里面name字段和action 中的返回值不一致
reulst中值不是/hello.xml写错了