Struts2.0简单配置教程:

在Eclipse中配置Struts2

步骤一:首先打开java ee并建立一个动态网站项目,我建立的项目名为TestDemo,如下图:

建立之后可在左侧发现工程,展开如下:

步骤二:配置struts2

想要运用struts2的框架需要借助一些jar包,对于新手来说,一下简单的jar包是必须的且能满足大多数的需求(下载地址自行百度):

注意:web.xml文件(默认是自动生成的,如果没有请自行在lib目录下新建,是整个工程的关键)

至此,我们的基本环节已经初始化完毕,接下来是向工程中添加自己真正的东西。

步骤三:配置web.xml文件(即整个工程的拦截器,至于拦截器的具体作用查看别处)。

一般的配置如下:

  1. <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
  2. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  3. <display-name>struts2</display-name>
  4. <welcome-file-list>
  5. <welcome-file>login.jsp</welcome-file>  <!--设置起始页-->
  6. </welcome-file-list>
  7. <!--设置相关的过滤器-->
  8. <filter>
  9. <filter-name>struts-prepare</filter-name>
  10. <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareFilter</filter-class>
  11. </filter>
  12. <filter>
  13. <filter-name>struts-execute</filter-name>
  14. <filter-class>org.apache.struts2.dispatcher.filter.StrutsExecuteFilter</filter-class>
  15. </filter>
  16. <filter-mapping>
  17. <filter-name>struts-prepare</filter-name>
  18. <url-pattern>/*</url-pattern>
  19. </filter-mapping>
  20. <filter-mapping>
  21. <filter-name>struts-execute</filter-name>
  22. <url-pattern>/*</url-pattern>
  23. </filter-mapping>
  24. </web-app>

步骤四:编写自己相关的程序(至于前端后端的顺序自己定):

编写login.jsp与welcome.jsp页面:在WebContent目录下新建.jsp(web的起始页)文件。

login.jsp:

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <%@ taglib prefix="s" uri="/struts-tags" %>
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=GBK">
  7. <title>test</title>
  8. </head>
  9. <body>
  10. <s:form action="login">
  11. <s:textfield name="username" key="user"/>
  12. <s:textfield name="password" key="pass"/>
  13. <s:submit key="login"/>
  14. </s:form>
  15. </body>
  16. </html>

welcome.jsp

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <%@ taglib prefix="s" uri="/struts-tags" %>
  4. <html>
  5. <head>
  6. <title><s:text name="succPage"/></title>
  7. <meta http-equiv="Content-Type" content="text/html; charset=GBK">
  8. </head>
  9. <body>
  10. <h1>恭喜你,你成功了</h1>
  11. </body>
  12. </html>

编写action处理函数:Login_action

处理类函数写在java Resources目录下的src文件夹下。我们通常以包的方式对不同工能的函数进行分类包装

  1. package action;
  2. import com.opensymphony.xwork2.ActionContext;
  3. public class Action_Login {
  4. private String username;
  5. private String password;
  6. public String getUsername() {
  7. return username;
  8. }
  9. public void setUsername(String username) {
  10. this.username = username;
  11. }
  12. public String getPassword() {
  13. return password;
  14. }
  15. public void setPassword(String password) {
  16. this.password = password;
  17. }
  18. public String execute() throws Exception {
  19. return "SUCCESS";
  20. }
  21. }

注意:set函数与get函数的设置,在处理类函数中应该有与前台相对应的变量名,struts框架会直接通过set,get函数来进行参数的传递。

接下来是我认为最关键的一步:

前端与后台的交互,Struts.xml的配置:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE struts PUBLIC
  3. "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
  4. "http://struts.apache.org/dtds/struts-2.0.dtd">
  5. <struts>
  6. <package name="test" extends="struts-default">
  7. <action name="login" class="action.Action_Login" method="execute">
  8. <result name="SUCCESS">/welcome.jsp</result>
  9. </action>
  10. </package>
  11. </struts>

说明:action name是处理请求的名字,class对应的是处理函数所在的包-类,method对应的是处理的方法。

步骤五:启动本地服务器,访问web程序,访问的结果如下所示:

后言:

上面所述纯属个人理解,如有错误之处请谅解,欢迎指出!

struts2.0简单教程的更多相关文章

  1. 1.0、Struts2的简单搭建方法

    一.Struts2:是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet:用于jsp页面与Java代码之间的交互. 1.核心:Filter拦截器,对所有的请求进行拦截. 2.工作 ...

  2. JXLS 2.4.0系列教程(一)——最简单的模板导出

    Java中实现excel根据模板导出数据的方法有很多,一般简单的可以通过操作POI进行.还可以使用一些工具很轻松的实现模板导出.这些工具现在还在维护,而且做得比较好的国内的有easyPOI,国外的就是 ...

  3. struts2官方 中文教程 系列七:消息资源文件

    介绍 在本教程中,我们将探索使用Struts 2消息资源功能(也称为 resource bundles 资源绑定).消息资源提供了一种简单的方法,可以将文本放在一个视图页面中,通过应用程序,创建表单字 ...

  4. Git和Github简单教程

    原文链接:Git和Github简单教程 网络上关于Git和GitHub的教程不少,但是这些教程有的命令太少不够用,有的命令太多,使得初期学习的时候需要额外花不少时间在一些当前用不到的命令上. 这篇文章 ...

  5. 入门struts2.0

    框架是什么? 1.应用程序的半成品. 2.可重用行公共的结构. 3.按一定规则组织的一组组件. model2 其实并不是一种全新的概念,很对人指出model2其实正好是经典的"模型(mode ...

  6. FusionCharts简单教程(三)-----如何自定义图表上的工具提示

    最近有蛮多人总是问我这个FusionCharts制表的问题,帮助他们解决之后,在昨晚发现以前整理的笔记中有这个简单教程,而且以前也发表了几篇这个博文,所以就将其全部上传上来供别人参考.如有不正确之处望 ...

  7. Windows环境下Android Studio v1.0安装教程

    Windows环境下Android Studio v1.0安装教程 准备工具 JDK安装包. 要求:JDK 7以及以上版本. Android Studio安装文件. Windows: exe(包含SD ...

  8. Swift3.0语言教程替换子字符串

    Swift3.0语言教程替换子字符串 Swift3.0语言教程替换子字符串,替换子字符串其实就是将字符串中的子字符串删除,然后再进行添加.为了让这一繁琐的过程变的简单,NSString提供了替换子字符 ...

  9. Android程序开发0基础教程(一)

    程序猿学英语就上视觉英语网 Android程序开发0基础教程(一)   平台简单介绍   令人激动的Google手机操作系统平台-Android在2007年11月13日正式公布了,这是一个开放源码的操 ...

随机推荐

  1. 关于chrom开发者工具priview和respons 数据内容不一致问题

    在昨天晚上2017年8月24日,深夜升级的时候发现你了一个问题:简单的把问题描述一下:新增的一个付款单中的金额为最大值9999999999999999 ,但是保存后返回来的却是100000000000 ...

  2. Math.round(11.5)等于多少? Math.round(-11.5)等于多少?

    1.先说下怎么理解 round()方法可以这样理解: 将括号内的数+0.5之后,向下取值, 比如:round(3.4)就是3.4+0.5=3.9,向下取值是3,所以round(3.4)=3; roun ...

  3. Redis多服务器负载均衡的实现

    集群是一组相互独立的.通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理.一个客户与集群相互作用时,集群像是一个独立的服务器.集群配置是用于提高可用性和可缩放性. 上图是三个主服务 ...

  4. VBR与CBR的区别是什么?

    VBR是动态码率.CBR是静态码率. VBR(Variable Bitrate)动态比特率.也就是没有固定的比特率,压缩软件在压缩时根据音频数据即时确定使用什么比特率,这是以质量为前提兼顾文件大小的方 ...

  5. Action调用Service

    Java Web项目,写到Action的时候,往往会要引入Service,这个是一个常见的操作. 但是,我自认为引入Service需要给它get和set方法,并且这个习惯已经沿用到现在.然而,自从参与 ...

  6. 个性化WinPE封装方法 ----最后实战“制作WinPE3.0图文教程”

    经过前几讲,主要目的就是准备一些"原材料",熟悉一些"命令",实际上是"战前演练准备".下面要进入"实战状态",成败在此 ...

  7. 芝麻HTTP:Python爬虫实战之抓取淘宝MM照片

    本篇目标 1.抓取淘宝MM的姓名,头像,年龄 2.抓取每一个MM的资料简介以及写真图片 3.把每一个MM的写真图片按照文件夹保存到本地 4.熟悉文件保存的过程 1.URL的格式 在这里我们用到的URL ...

  8. 使用pyh生成HTML文档

    title: 使用pyh生成HTML文档 tags: [python3, 爬虫,pyh] date: 2018-03-09 21:01:34 categories: Python keywords: ...

  9. TP5 数组分页

    需要 use think\Page; 我这个是 Page是从tp3.2的移到5.0来用的,如果你的里面没有这个也可以移动过来 PHP代码: $page= $this->request->p ...

  10. css图片的相关操作

    css图片的相关操作 1.案例源码 <!DOCTYPE html><html lang="en"><head> <meta charset ...