A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Jack.李 中级黑马   /  2017-11-29 14:28  /  753 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

struts2框架struts2快速入门
用户请求 --> web.xml--struts.xml(通过strutsprepareandexecute过滤器过滤)--> action类
· index.jsp——>HelloServlet——–>hello.jsp web开发流程.
index.jsp——>HelloAction———>hello.jsp struts2流程
struts2的目录结构:
o apps: 该文件夹包含了基于struts2 的示例应用,这些示例应用对于学习者是非常有用的;例子程序war后缀表示web压缩文件
o docs : 该文件夹下包含了struts2 相关文档,包括struts2 快速入门、struts2的文档以及API文档等
o lib : 该文件夹下包含了Struts2框架和核心类库,以及struts2第三方插件类库
§ 开发时没必要将lib目录下jar文件全部复制到项目中
o src : 该文件夹下包含了Struts2框架的全部源代码
§ core 它是struts2的源代码
§ xwork-core struts2底层使用了xwork,xwork的源代码
1.导入jar
o 下载struts2jarstruts-2.3.15.1-all 版本.
· Struts运行必要jar
o struts2-core-2.3.1.1.jarStruts 2框架的核心类库
o xwork-core-2.3.1.1.jarCommand模式框架,WebWorkStruts2都基于xwork
o ognl-3.0.3.jar:对象图导航语言(Object Graph Navigation Language),struts2框架通过其读写对象的属性
o freemarker-2.3.18.jarStruts 2UI标签的模板使用FreeMarker编写
o commons-logging-1.1.x.jarASF出品的日志包,Struts 2框架使用这个日志,包来支持Log4JJDK 1.4+的日志记录。
o commons-fileupload-1.2.2.jar: 文件上传组件,2.1.6版本后需要加入此文件
o commons-io-2.0.1.jar:传文件依赖的jar
o commons-lang-2.5.jar:对java.lang包的增强
o 开发中为了方便导入,可以使用app/struts2-blank.war 携带jar
注意:struts2开发,一般情况下最少导入的jar包,去apps下的struts2-blank示例程序中copy。将war后缀改为rar后解压。
2.创建index.jsphello.jsp页面
o index.jsp (发起请求页面)
§ <a href="${pageContext.request.contextPath}/hello">第一次使用struts2</a>
o hello.jsp (结果页面)
§ <h1>你好,Struts2<h1>
o 结果页面显示 struts2框架访问成功
3.struts2框架进行配置
o 1.web.xml文件中配置前端控制器(核心控制器)—–就是一个Filter
§ 目的:是为了让struts2框架可以运行。
§ 过滤器配置/* , 但是struts2 默认处理.action结尾请求,分发到相应Action
        <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>
* 2.创建一个struts.xml配置文件 ,这个是struts2框架配置文件。
    * 目的:是为了struts2框架流程可以执行。
    * 名称:struts.xml
    * 位置:src(classes)
4.创建一个HelloAction
要求,在HelloAction类中创建一个返回值是String类型的方法,注意,无参数。
public class HelloAction {
    public String say(){
        System.out.println("hello world");
        return "good"; // 结果页面命名
    }
}
struts2 Action类似以前编写的Servlet程序,可以处理用户提交请求,但是Struts2Action可以POJO对象
5.struts.xml文件中配置HelloAction
    <package name="default" namespace="/" extends="struts-default">
        <action name="hello" class="cn.itcast.action.HelloAction"
            method="say">
            <result name="good">/hello.jsp</result>
        </action>
    </package>
6.index.jsp中添加连接,测试
<a href="${pageContext.request.contextPath}/hello">第一次使用struts2</a>
在地址栏中输入:http://localhost/struts2_day01/index.jsp 访问连接,就可以看到
HelloAction类中的say方法执行了,也跳转到了hello.jsp.

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马