1.3 struts入门案例和执行流程

index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%--设置浏览器的页面编码 --%>
    <%--设置JSP编译成Servlet时使用的编码,可以只写这一句 --%>



<%--规定 HTML 文档的字符编码 --%>


Struct2的入门案例


    访问第一个struts2应用


success.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%--设置浏览器的页面编码 --%>
    <%--设置JSP编译成Servlet时使用的编码,可以只写这一句 --%>



<%--规定 HTML 文档的字符编码 --%>


执行结果


执行成功


HelloAction.java

package com.itheima.web.action;

/*
 * 我们的第一个动作类
 * 
 * 动作类:就是一个概念,它就是struts2框架中用于处理请求的类
 *      我们处理请求都用动作类
 * */

public class HelloAction {
    
    /*
     * 我们第一个动作方法
     *      动作类中用于处理动作请求的方法
     * 
     * 编写规范
     * 1.访问修饰符都是public
     * 2.方法的返回值一般都是String,可以是void,return null就可以替代void
     * 3.方法没有参数
     * */
    public String sayHello() {
        System.out.println("sayhello已执行");
        return "success";
    }
    
    
}

struts.xml




    
    
        
            /success.jsp
        
    

web.xml



    day59_01struts
    
    
        struts2
        org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
    

    
        struts2
        /*
    
    
    
        index.html
        index.htm
        index.jsp
        default.html
        default.htm
        default.jsp
    

注意struts.xml中映射文件的路径是.
赋值的路径是/
导致白忙一小时


1.3 struts入门案例和执行流程_第1张图片

执行流程

starUML时序图

  1. struts的核心控制器默认会处理以.action为后缀的url,或者是没有后缀的url
访问第一个struts2应用
    访问第一个struts2应用
1.3 struts入门案例和执行流程_第2张图片

每个线程任何实例都会重新初始化,不会有线程安全,但是servlet是单例,不可以这么定义

执行时序


1.3 struts入门案例和执行流程_第3张图片

执行流程


1.3 struts入门案例和执行流程_第4张图片

你可能感兴趣的:(1.3 struts入门案例和执行流程)