代码江湖之勇闯天涯——struts2——环境搭建

少爷,我们之前学会了servlet使用,但是想要在以后代码之路上行走,只会这最最基础的是根本不够的,想一下你做一个项目里边全是使用servlet进行分析各种参数,那样一是会累死,二一个别人接手你代码的时候看到这么多参数也会疯的。
“那福伯,我们应该怎么去开发javaweb项目呢,难道不用servlet?”
放心吧,java发展到现在,已经有很多成熟的框架供我们使用了,像struts2,springMVC,hibernate等。那么现在就让我们开始修炼struts2吧。
“好的,福伯。”

首先,我们来了解一下什么是框架及struts2。

1. 框架概述

把繁琐重复性的代码封装起来,使编码过程中把更多的精力放在业务需求的分析和理解上。

2. 三层架构与Struts2

1. 表现层:M model  V view  C control
2. 业务层:service
3. 持久层:dao(data access object)
代码江湖之勇闯天涯——struts2——环境搭建_第1张图片
01Struts2.png
Struts2在三层架构中处于表现层即MVC,它只是一个表现层框架。

3. MVC与Struts2

控制器:Servlet
过滤器:Filter 它也可以作为控制器
    init(FilterConfig)
    destory()
    doFilter(ServletRequest,ServletResponse,FilterChain)
Servlet能做的Filter也都可以做,并且比Servlet功能更强大,它多了一个放行的功能。

4. 搭建开发环境

1. 下载开发包
2. 搭建环境
    a. 导包
    b. 创建一个配置文件:
        在顶层类路径下,创建一个struts.xml文件
    c. 在web.xml中配置struts2的控制器

5. Struts2的原理###

代码江湖之勇闯天涯——struts2——环境搭建_第2张图片
05strtus2原理图.png

6. Struts2配置文件加载顺序

default.properties-->struts-default.xml-->plugin配置-->struts.xml-->struts.properties-->web.xml
如果遇到重名,后一个覆盖前一个。如图:


代码江湖之勇闯天涯——struts2——环境搭建_第3张图片
Struts2中配置问价加载顺序

你能看到struts2.xml中有很多的元素吗?我们现在开始修行每个元素的各种属性啦,少爷,准备好了么?
“准备好啦,来吧,哈哈哈~”

7. Struts2中配置文件中的各个元素


    
        
        
            
            
            /success.jsp
        
    

对于动作类的创建方法:

/**
 * 创建动作类的第一种方式(简单  但是开发几乎不使用)
 *      创建一个普通的java类
 *      此类就是一个POJO(原始的 老的 Java 对象)
 *      Plain Old Java Object
 */
public class Demo1Action {
    public String doDemo(){
        return "success";
    }
}

import com.opensymphony.xwork2.Action;
/**
 * 创建动作类的第二种方式:
 *      创建一个普通类实现Action接口,实现接口中的方法
 * @author Administrator
 *
 */
public class Demo2Action implements Action {

    @Override
    public String execute() throws Exception {
        return null;
    }

}


import com.opensymphony.xwork2.ActionSupport;
/***
 * 第三种创建动作类
 *      新建一个类继承ActionSupport
 * 在开发中我们采取这样的方式创建我们的动作类
 * @author Administrator
 *
 */
public class Demo3Action extends ActionSupport {
    //在这个类中我们什么都不写,一个动作方法都不提供时,有一个默认的动作方法:execute()
}

8.分文件编写配置文件
建立多个struts.xml(不同名称) 在每个struts.xml中进行编写相对应模块的代码,在struts.xml中使用include进行添加每个模块的struts.xml;例如:


恭喜少爷,已经修炼出了Web基础阶段一啦,再接再厉哟
“我的天,好多属性,好多东西啊,这要记到什么时候a,累死了”
呵呵,少爷,这些不要死记硬背,要会看源码,这些会在以后的修炼中不断磨练的。
“恩,知道了福伯。不行了,我要去后山的温泉泡一会去了,祛除疲劳”
说完就飞一般跑开了。
福伯:“慢点啊,少爷。”

你可能感兴趣的:(代码江湖之勇闯天涯——struts2——环境搭建)