ibcadmin 发表于 2019-10-24 09:49:22

1、Struts2基本入门

<h1>一、了解了这几个重要的优点,会促使你思量利用Struts2 :</h1>

<p><strong>    1、POJO表单及POJO操纵</strong> - Struts2 去除掉了Struts框架中的Action Forms部分。在Struts2框架下,你可以用任何一POJO来吸收表单输入,同样的,你可以把任一POJO视为一个Action类。</p>
<p><strong>    2、标签支持</strong> - Struts2 改进了标签表单,而新的标签可让开发职员镌汰代码编写量。</p>
<p><strong>    3、AJAX支持</strong> - Struts2 被认可吸收进Web 2.0技能,并创建了功能非常类似于标准的Struts2 标签的AJAX标签,把AJAX支持整合进其结果中。</p>
<p><strong>    4、易于整合</strong> - Struts有多种整合方式可利用,如今与其他范例的框架,如Spring、Tiles、SiteMesh之类的,整合更为容易了。</p>
<p><strong>    5、模板支持</strong> - 支持利用模板天生视图。</p>
<p><strong>    6、插件支持</strong> - 有大量的插件可用于Struts2,而利用插件可以加强和扩大Struts2 核心举动。</p>
<p><strong>    7、促进镌汰设置</strong> - Struts2 利用各种设置的默认值促进镌汰设置,而你不必要再设置什么除非是偏离了Struts2 设定的默认设置。</p>
<p><strong>    8、视图技能</strong> - Struts2 为多种视图选项(JSP、Freemarker、Velocity、XSLT等)提供支持。</p>
<h1>二、三层开发模子 MVC</h1>
<p>模子(Model)-视图(View)-控制器(Controller),通常简称MVC,是一种开发web应用程序的软件计划模式。该软件计划模式由以下三部分组成:  </p>
<p><strong>        模子</strong>——属于软件计划模式的底层基础,重要负责数据维护。  </p>
<p><strong>        视图</strong>——这部分是负责向用户呈现全部或部分数据。 </p>
<p><strong>        控制器</strong>——通过软件代码控制模子和视图之间的交互。</p>
<p>                                                                                                          <div align="center"></div></p>
<p> </p>
<h1>三、Struts2的根本组件、架构</h1>
<p>从一个高水平角度看,Struts2 是一个MVC拉动的(或MVC2)框架,Struts2 的模子-视图-控制器模式是通过以下五个核心部分进行实现的:</p>
<ul>
<li>操纵(Actions)</li>
<li>拦截器(Interceptors)</li>
<li>值栈(Value Stack)/OGNL</li>
<li>结果(Result)/结果范例</li>
<li>视图技能</li>
</ul>
<p> </p>
而Struts2 与传统的MVC框架略有不同,因为它由Action饰演模子的角色,而不是控制器,固然这样会有一些重叠。
                                                                                          <div align="center"></div>


<h1>四、一个请求的生命周期</h1>
通过上述图片的形貌,我们可以依照下面几点表明在Struts2 中用户的请求生命周期:

<p>    1、用户发送一个资源需求的请求到服务器(例如:页面)。</p>
<p>    核心控制器查看请求后确定适当的动作。</p>
<p>    利用验证、文件上传等设置拦截器功能。</p>
<p>    实验选择的动作来完成请求的操纵。</p>
<p>    另外,假如必要的话,设置的拦截器可做任何后期处理。</p>
<p>    末了,由视图显示结果并返回给用户</p>
<p> </p>
<p><strong>                                                                                                                   【备注:以上的概念性东西摘用自W3School内里的内容】</strong></p>
<h1>五、创建一个入门项目,开端了解Struts2:</h1>
<h2>1、利用IDEA创建Struts2的前期准备:</h2>
<p>                                                       <div align="center"></div></p>
<p> </p>
<p> </p>
<p>                                                                                                      <div align="center"></div></p>
<p> </p>
<h3>2、手动导入lib文件夹中的jar包大概无法被辨认,这个时候必要手动设置一下就没标题了。</h3>
<p>                                                            <div align="center"></div></p>
<p> </p>
<h3>3、创建对应的目录结构:</h3>
<p>    【假如,extends中报错了,可以按照下面的方法来记性办理。】</p>
<p>                                                            <div align="center"></div></p>
<p> </p>
<h3>具体代码目录如下:</h3>
<p>                                                                                                                         <div align="center"></div></p>
<p> </p>
<h2> 2、假如上面的准备工作完成,我们就可以按照需求来开始写代码了</h2>
<p>背景的Action层,也就是和前端交互的入口java程序:Demo1Action.java</p>

package com.turtle.demo1;

      import com.opensymphony.xwork2.ActionSupport;

/**
* 测试:这个是测试的背景Action,用来处理前端的操纵流程
*/
public class Demo1Actionextends ActionSupport {

    @Override
    public String execute() throws Exception {
      System.out.println("哈嘛批,你倒是跳啊!!!");
      return "success";
    }
}

<p> </p>
<p>Struts的设置文件,用来设置路径映射对应的java类和方法:Struts.xml</p>

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts PUBLIC
      "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
      "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
    <package name="demo1" extends="struts-default" namespace="/">
      <action name="demo1Action" class="com.turtle.demo1.Demo1Action">
            <result name="success">/demo1/success.jsp</result>
      </action>
    </package>
</struts>

<p> </p>
<p>前端界面,一个是首页、一个是从背景重定向到新的界面:index.jspsuccess.jsp</p>

<%--
Created by IntelliJ IDEA.
User: szwb174
Date: 2019/10/23
Time: 10:21
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Struts2的入门测试</title>
</head>
<body>
    <h1>Struts2的入门测试</h1>
    <h2><a href="demo1Action.action">去Demo1Action中的Struts2的入门测试execute方法了</a></h2>
</body>
</html>


<%--
Created by IntelliJ IDEA.
User: szwb174
Date: 2019/10/23
Time: 10:29
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>demo1Action处理乐成</title>
</head>
<body>
    <h1>乐成跳转过来了</h1>
</body>
</html>

<p> </p>
<p>web项目的核心设置文件,重要是设置前端过滤器: web.xml</p>

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <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>

<h2>3、末了还必要 设置对应的服务器,就可以完成测试了:</h2>
<p>                                                                                    <div align="center"></div></p>
<p> </p>
<h2>4、测试结果:</h2>
<p>                                                                                                <div align="center"></div></p>
<p> </p>
<p> </p>
<h1> 六、总结:</h1>
<p><strong>  1、这是第一篇入门的文章,不涉及太多概念,只夸大操纵。搭建好环境,为了下面的深入学习做好铺垫,假如没有搭建好环境,不能本身去尝试的写代码,学习服从会很低。</strong></p>
<p><strong>  2、知道怎么跑通这个程序。对Struts2有一个大概的了解,能知道运行的流程。从前端颠末前端控制器,然后再到Action处理器进行处理。</strong></p>
<p><strong>  3、能够对几个设置文件的位置、内里的内容有肯定的明确。</strong></p>
<p><strong>  4、背面的文章会具体深入,对内里的知识点会一点一点的理顺。</strong></p>
<p><strong>  5、难度系数慢慢的提升,先会用,再去了解内里的小知识点即可。</strong></p>
<p> </p>


<p> </p><br><br/><br/><br/><br/><br/>来源:<a href="https://www.cnblogs.com/zhh19981104/p/11724899.html" target="_blank">https://www.cnblogs.com/zhh19981104/p/11724899.html</a>
页: [1]
查看完整版本: 1、Struts2基本入门