struts2框架入门

 更新时间:2017年03月13日 15:37:42   作者:雨点的名字  
本文主要介绍了struts2框架的基础入门知识。具有很好的参考价值。下面跟着小编一起来看下吧

如果你之前在MVC模式的时候一直都是通过servlet,获取和返回数据,那么现在开始学习struts2框架,Struts是一个实现MVC设计模式的优秀的框架。它的许多优点我就不说了。

我用自己做的一张图说明servlet和struts2的区别。

写一个最基本的开发步骤,完成开发。

        (1)创建WEB 工程

        (2)导入必要jar包

        (3) 编写JSP 页面

        (4)编写Action 服务器端处理逻辑

        (5)进行框架配置web.xml、struts.xml

        (6)运行测试

(1)创建WEB 工程

这步还是很正常一样,创建一个普通web工程。如图:

(2)导入必要jar包

首先我要告诉你到哪里去下载这个框架:在apache官网,你百度struts2下载就可以找到了。

Struts运行必要jar包介绍:

开发中为了方便导入,可以使用app/struts2-blank.war 携带jar包

(3) 编写JSP 页面

在webRoot下新建一个Demo文件,网页先访问start.jsp之后通过框架返回到result页面

start.jsp界面:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
 <head>
 </head>
 <body>
  <h1>请求发起的页面</h1>
  <!-- 发起一个请求 访问Struts2框架 -->
  <!-- Struts2请求 默认是以.action结尾 -->
  <a href="${pageContext.request.contextPath }/hello.action" rel="external nofollow" >访问Struts2入门程序</a>
 </body>
</html>

result.jsp界面

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
 <head>
 </head> 
 <body>
  <h1>处理完成的结果页面</h1>  
 </body>
</html>

(4)编写Action 服务器端处理逻辑

这里就是通过java创建一个类,该类可以说是action最普通的一个类

package com.yudian.struts;
public class HelloAction {
   public String execute() throws Exception{ //这里取execute代表默认执行这个方法
      System.out.println("我是执行的内容...");
       return "excutesuccess";  //有返回值,我们用来跳转页面
    }
}

(5)进行框架配置web.xml、struts.xml

配置文件才是核心关键,先配置web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
  xmlns="http://java.sun.com/xml/ns/javaee" 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://java.sun.com/xml/ns/javaeehttp://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
 <display-name></display-name>  
 <!-- 配置Struts2的前端控制器 --><!--filter-class里面很关键,固定 -->
  <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>
 <welcome-file-list>
  <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>
</web-app>

在配置struts.xml,注意了这个是放在src下面而不是包下面

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
  "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
  "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
  <package name="default" extends="struts-default">
   <!-- 3.默认Action 和Action的默认处理类 -->
    <!-- 1.初步认识Struts2 --><!-- 这里hello一定要和jsp中hello。action一致才能找到 -->
    <action name="hello" class="com.yudian.struts.HelloAction">
      <result name="excutesuccess">/demo/result.jsp</result>
    </action> <!-- result代表如果返回值为 excutesuccess则跳转页面-->      
  </package>
</struts>

(6)运行测试

先通过浏览器访问start界面:

当点击:访问Struts2入门程序连接直接跳转到了result.jsp

运行结果:

这上面是一个最基本的struts框架的运用,很简单,主要是供大家理解,关于每一个细节我会在接下面慢慢补充.

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!

相关文章

  • Spring AOP定义AfterReturning增加实例分析

    Spring AOP定义AfterReturning增加实例分析

    这篇文章主要介绍了Spring AOP定义AfterReturning增加,结合实例形式分析了Spring面相切面AOP定义AfterReturning增加相关操作技巧与使用注意事项,需要的朋友可以参考下
    2020-01-01
  • java发送内嵌图片邮件

    java发送内嵌图片邮件

    这篇文章主要介绍了java发送内嵌图片邮件,在博客系统中需要邮件服务的功能,仅仅是发送文本内容,现在尝试一下发送内嵌图片邮件,感兴趣的小伙伴们可以参考一下
    2016-01-01
  • Presto自定义函数@SqlNullable引发问题详解

    Presto自定义函数@SqlNullable引发问题详解

    这篇文章主要为大家介绍了Presto自定义函数@SqlNullable引发问题详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • springboot 如何使用jedis连接Redis数据库

    springboot 如何使用jedis连接Redis数据库

    这篇文章主要介绍了springboot 使用jedis连接Redis数据库的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • Java 根据网址查询DNS/IP地址的方法

    Java 根据网址查询DNS/IP地址的方法

    这篇文章主要介绍了Java 根据网址查询DNS/IP地址的方法,具体实现代码,大家参考下本文
    2017-12-12
  • 通过源代码分析Mybatis的功能流程详解

    通过源代码分析Mybatis的功能流程详解

    这篇文章主要介绍了通过源代码分析Mybatis的功能,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • SpringBoot业务逻辑异常的处理方法介绍

    SpringBoot业务逻辑异常的处理方法介绍

    本篇文章为大家展示了如何在SpringBoot中统一处理逻辑异常,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获
    2022-09-09
  • java实现简单TCP聊天程序

    java实现简单TCP聊天程序

    这篇文章主要为大家详细介绍了java实现简单TCP聊天程,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • Java模拟QQ实现聊天互动程序

    Java模拟QQ实现聊天互动程序

    这篇文章主要介绍了如何利用Java语言模拟QQ实现一个简易的聊天互动程序,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2022-06-06
  • 通过FeignClient如何获取文件流steam is close问题

    通过FeignClient如何获取文件流steam is close问题

    这篇文章主要介绍了通过FeignClient如何获取文件流steam is close问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06

最新评论