服务器之家

服务器之家 > 正文

struts2框架入门

时间:2020-08-28 10:12     来源/作者:雨点的名字

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

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

struts2框架入门

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

        (1)创建WEB 工程

        (2)导入必要jar包

        (3) 编写JSP 页面

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

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

        (6)运行测试

(1)创建WEB 工程

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

struts2框架入门

(2)导入必要jar包

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

struts2框架入门

Struts运行必要jar包介绍:

struts2框架入门

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

(3) 编写JSP 页面

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

struts2框架入门

start.jsp界面:

?
1
2
3
4
5
6
7
8
9
10
11
<%@ 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界面

?
1
2
3
4
5
6
7
8
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
 <head>
 </head>
 <body>
  <h1>处理完成的结果页面</h1
 </body>
</html>

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

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

?
1
2
3
4
5
6
7
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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?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下面而不是包下面

?
1
2
3
4
5
6
7
8
9
10
11
12
13
<?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框架入门

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

运行结果:

struts2框架入门

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

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

原文链接:http://www.cnblogs.com/qdhxhz/p/6538727.html

标签:

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
最新idea2020注册码永久激活(激活到2100年)
最新idea2020注册码永久激活(激活到2100年) 2020-07-29
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
返回顶部