基础篇-三大框架之一(struts2框架的搭建)

Struts2是一种基于MVC的轻量级的WEB应用框架。

1.web应用框架,也就是说struts2的运行环境是一个web容器,运行于Web容器中的程序就必须遵循基本开发标准和规范:servlet标准和JSP标准(不同的Web服务器对于servlet标准和JSP的标准是不一样的),对于struts2而言,它支持的Servlet标准最低版本要求是2.4,相对于JSP的最低版本要求是2.0。struts2作为开发框架的运行环境提出了要求,要求其必须运行在JDK1.5版本以上。

2.轻量级,相对于重量级而言,指的是struts2在运行时,对web服务器的资源相对消耗较少,但是运行速度会相对快一些。

3.基于MVC,Struts2着力于在MVC的各个部分为我们的开发提供了相应的帮助。基于Struts2框架的WEB应用的流程图如下:

Contoller-FilterDispatcher

  用户请求首先到达前端控制器FilterDispatcher。FilterDispatcher负责根据用户提交的url和struts.xml中配置,来选择适合的动作(Action),让Action来处理用户请求。FilterDispacher其实是一个过滤器,它是Struts2核心包里的类,不需要我们去开发,只要在web.xml中配置一下。

Model-Action

  Action负责把用户请求中的参数组成合适的数据模型。Struts2中的Action实现了ServeltAPI的解耦,所以在Action里面就不需要再去直接使用HttpServletRequest与HttpServletResponse的接口。

View-Result

  视图结果是用来把动作中获取到的数据展现给用户。

Struts2项目资源

  在Struts的官方网站 http://struts.apache.org可以找到Struts项目的相关资料信息。

Struts2项目的开发

  前面我们已经对struts2有了一定的了解,现在我们就来编写一个简单的Hello World的应用程序,来展示我们基本的struts2项目搭建。

  1.添加Struts2的依赖库

    使用eclipse创建一个动态的Web工程,为了让该工程具有Struts2支持功能,我们必须将Struts2框架的核心类库添加到Web应用中。将Struts2框架lib路径下的jar包导入我们Web应用的lib路径下,也就是我们工程目录下的" WebCOntentent\WEB-INF\lib"路径下,如图所示

  如图表明我们的项目已经导入了Struts2所必须的类库,我们还需要修改web.xml 文件,让该文件负责加载Struts2的框架。

2.在web.xml配置文件中添加Filter

  Struts2的入口点就是一个过滤器(用我们老师的话来说,过滤器相当于是一条看门狗),Struts2就需要按过滤器的方式来配置。在web.xml中配置Struts2的代码如下:

    <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>

3.我们需要一个Jsp页面来显示信息

struts2的标签库,也是框架的一部分,是为了解决页面显示数据,封装简单页面逻辑而产生类似于HTML标记的组件(也可以用jstl来写)。

使用struts2标签,需要在页面添加如下的定义:

<% taglib prefix="s" uri="/struts-tags" %>

  页面代码如下所示:

<% taglib prefix="s" uri="/struts-tags" %>
<html>
     <head>
          <title>Hello World!</title>
    </head>
    <body>
         <h2><s:property value="message"/></h2>
  </body> 

</html>

4.编写我们的action类

  为了让用户开发的Action更加规范,Struts2为我们提供了一个Action的接口,是为了使我们的Action处理类更加的规范。

public class IndexAction extends ActionSupport {//定义一个常量 给HW赋值
    public static final String HW="Struts is up and running!";
    private String message;
    public void setMessage(String message){
      this.message=message;
    }
  public String getmassage(String message){
    return message
   }
   public String execute(){   //给message添加一个字符串
       setMassage(HW);  //2.返回的字符串,要跟配置文件一一对应,用于跳转到指定的jsp页面
       return "success";
    }

}    

Struts2还为Action提供了一个实现类:ActionSupport。为了方便实现action一般情况下都会继承ActionSupport类,并重载execute方法。

5.创建struts.xml的配置文件(必须要创建在src的目录下):

<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
    "http://struts.apache.org/dtds/struts-2.5.dtd">
<struts>
    <!-- 第1步:先定义一个包 ( 包名自定义)-->
    <package name="mypck" extends="struts-default">
  <!-- 第2步:定义一个action,用于配置我们的跳转信息  class对应我们创建的action类(包名.类名)method默认调用的是action类的默认方法execute方法-->
        <action name="index" class="ssh.IndexAction" method="execute">
            <result name="success">WEB-INF/jsp/HelloWord.jsp</result>
        </action>
    </package>

</struts>

基本的Struts2的框架就已经搭建好了。

时间: 2024-10-16 00:32:56

基础篇-三大框架之一(struts2框架的搭建)的相关文章

3.高并发教程-基础篇-之分布式全文搜索引擎elasticsearch的搭建

高并发教程-基础篇-之分布式全文搜索引擎elasticsearch的搭建 如果大家看了我的上一篇<2.高并发教程-基础篇-之nginx+mysql实现负载均衡和读写分离>文章,如果能很好的利用,那么其实已经可以轻松日抗千万级别的访问量了,但是如果业务涉及查询比较多,查询条件比较丰富,又或者我就想要查询的响应更快点,那么在mysql上面去做优化,其实比较辛苦,有没有更好的解决方案呢?答案是肯定的!它就是我们今天的主角,分布式全文搜索引擎elasticsearch. 技巧提示:mysql集群层主要

Java_Web三大框架之Struts2

今天正式接触Java_Web三大框架之Struts2框架.对于初学者来说,先来了解什么是框架技术: 一.“框架技术”帮我们更快更好地构建程序: 1.是一个应用程序的半成品 2.提供可重用的公共结构 3.按一定规则组织的一组组件 二.优势: 1.不用再考虑公共问题 2.专心在业务实现上 3.结构统一,易于学习.维护 4.新手也可写出好程序 介绍一下主流框架Struts 目前Struts框架有俩个版本,分别是Struts和Struts2,对于初学者来说,可能会认为Struts2是Struts的升级版

struts2框架 转载 精华帖

一.Struts2简介 参考<JavaEE 轻量级框架应用与开发-S2SH> Struts框架是流行广泛的一个MVC开源实现,而Struts2是Struts框架的新一代产品,是将Struts1和WebWork两种技术进行兼容.合并的全新的MVC框架.Struts2框架充分发挥了Struts1和WebWork这两种技术的优势,抛弃原来Struts1的缺点,使得Web开发更加容易. Struts1运行原理:  Struts1工作流程: (1)客户端向Web应用发送请求,请求被核心控制器Action

Struts2框架概述

Struts2-day01 一. 框架概述 什么是框架,为什么使用框架,框架优点 框架(framework)是一个基本概念上的结构,用于去解决或者处理复杂的问题 框架,即framework.其实就是某种应用的半成品,就是一组组件,供你选用完成你自己的系统.简单说就是使用别人搭好的舞台,你来做表演. 框架是在特定的领域内解决问题. 优点 重用代码大大增加,软件生产效率和质量也得到了提高 使用框架开发,它提供统一的标准,大大降低了我们的后期维护. 学习框架重点:了解框架做了什么,我们要在这个基础上在

Struts2框架学习(一)

Struts2框架学习(一) 1,Struts2框架介绍 Struts2框架是MVC流程框架,适合分层开发.框架应用实现不依赖于Servlet,使用大量的拦截器来处理用户请求,属于无侵入式的设计. 2,Struts2框架的流程原理 1)请求先到达Filter中央控制器 2)然后为Action创建代理类 3)将各个服务存放在拦截器中,执行完拦截器后再去执行action类行action类,action类调用service,再调用dao 4)得到结果字符串,创建result对象 5)转向相应的视图.

java web 框架之struts2

简介:struts2是一个典型的mvc架构.利用它可是方便的实现某些功能. struts2 的工作流程图以及动态的action: 浏览器请求经过web容器,进入到struts2过滤器,然后搜索匹配,如果有与之对应的action对象,就会调用action对象的execut()方法,并根据处理的结果返回相应的值.通过创建多个action对象可以实现动态的action.也就是为了解决业务请求的多样性. 园长第一次接触框架,对于struts2框架的配置并不是很熟悉,对于初学者来说,很有必要讲讲strut

Spring框架+Struts2框架第一次整合

1:Spring框架和Struts2框架如何整合??? Spring 负责对象创建 Struts2 用Action处理请求 2:Spring与Struts2框架整合的关键点: 让struts2框架action对象的创建,交给Spring完成 3:Spring框架和Struts2框架开发步骤: (1):引入Struts2框架的相关jar包 (2):引入Spring框架的相关jar包 (3):引入spring-web支持的jar包 spring-web-3.2.5.RELEASE.jar    [去

Struts2框架搭建及实例

Struts2概述 Struts2其实并不是一个陌生的Web框架,Struts2是以Webwork的设计思想为核心,吸收了Struts1的优点,因此,可以认为Struts2是Struts1和 Webwork结合的产物. Struts2是一个兼容Struts1和WebWork的MVC框架.Struts2框架是一个轻量级的MVC流程框架,轻量级是指程序的代码不是 很多,运行时占用的资源不是很多,MVC流程框架就是说它是支持分层开发,控制数据的流程. 框架搭建 (1)首先下载Struts2的包 下载地

如何用Struts2框架来完成登录操作

1. 问题:为什么使用struts2框架?Struts2框架它是一个在web中应用的mvc框架.我们使用strtus2框架来完成web开发有什么优势?2. 问题:怎样使用strtuts2框架首先要上网下载它的jar包.步骤:1.导入相关的jar文件2.需要在web.xml文件中配置一个Filter(只有配置了它才可以使用struts2框架)3.struts.xml配置4.创建Action来完成逻辑操作3. 快速入门我们使用的是struts2 2.3.24版本我们使用strtus2框架不是直接将它