配置Struts2(以登录为例)

2024-08-26 05:48
文章标签 配置 登录 struts2 为例

本文主要是介绍配置Struts2(以登录为例),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

引言

      在了解Struts2的基础上,对Struts2做一次配置。以登录为例。

步骤

 引jar包(最常用的共8个)

commons-fileupload-1.2.1.jar        文件上传
commons-io-1.3.2.jar                       被fileupload所用,上面依赖下面
commons-logging-1.0.4.jar               日志处理
ognl-3.0.jar  (全程object graph notation  languag)          表达式语言
struts2-core-2.2.1.1.jar
Javassist-3.7.ga.jar
xwork-core-2.2.1.1.jar
Freemarker-2.3.16.jar

     下载jar包地址:http://struts.apache.org/download.cgi#struts251

      将jar包引用到lib文件夹下。做一个登录的例子。


新建jsp

       新建一个jsp,写一个表单

<span style="font-size:18px;"> <form action = "login">username:<input type="text" name="username"><br>password:<input type="password" name="password"><br>
</form></span>

配置struts2的核心过滤器

      修改web.xml,配置struts2的核心过滤器

<span style="font-size:18px;"><!-- 配置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></span>

新建struts.xml

      在src新建一个struts.xml,并引入文档类型(struts-2.0.dtd)。

<span style="font-size:18px;"><!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN""http://struts.apache.org/dtds/struts-2.0.dtd"></span>
     dtd下载地址:http://struts.apache.org/dtds/struts-2.0.dtd

     按照dtd里面的规则在里面配置。

<span style="font-size:18px;"><struts><package name="struts2" extends="struts-default"><action name="login" class="com.tgb.struts2.LoginAction">		<result name="success">/result.jsp</result>	</action>   
</package>
</struts>      </span>


新建action

       在src文件夹下新建包:com.tgb.struts2,然后在包下新建类:LoginAction.java。

<span style="font-size:18px;">package com.tgb.struts2;
public class LoginAction{private String username;
private String password;
public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public String execute(){return "success";}
}
</span>

新建result.jsp

      在WebRoot下新建一个result.jsp页面,在body内接收返回数据。

<span style="font-size:18px;">username: ${requestScope.username }<br>
password: ${requestScope.password }<br></span>

运行

       到此登录配置完成。运行,输入用户名和密码。点击提交。显示结果。

    

执行流程说明

      首先在login.jsp页面中请求资源(action="login"),请求路径匹配了web.xml中的url-pattern(<url-pattern>/*</url-pattern>),纳入到过滤器<filter-class>管辖范围之内(<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>),然后寻找struts.xml.开始寻找里面的action,然后和login匹配(name="login")。然后实例化后面类(class="com.tgb.struts2.LoginAction")的一个对象,调用LoginAction.java中的set方法,将表单提交过来的信息set到我们的成员变量。紧接着调execute方法,调完之后返回“success”字符串。然后传到struts.xml的一个结果。匹配名字,然后定位到相应的jsp(<result name="success">/result.jsp</result>),然后在request中获取信息,至此完成。


     

这篇关于配置Struts2(以登录为例)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1107718

相关文章

MySQL数据库双机热备的配置方法详解

《MySQL数据库双机热备的配置方法详解》在企业级应用中,数据库的高可用性和数据的安全性是至关重要的,MySQL作为最流行的开源关系型数据库管理系统之一,提供了多种方式来实现高可用性,其中双机热备(M... 目录1. 环境准备1.1 安装mysql1.2 配置MySQL1.2.1 主服务器配置1.2.2 从

Linux云服务器手动配置DNS的方法步骤

《Linux云服务器手动配置DNS的方法步骤》在Linux云服务器上手动配置DNS(域名系统)是确保服务器能够正常解析域名的重要步骤,以下是详细的配置方法,包括系统文件的修改和常见问题的解决方案,需要... 目录1. 为什么需要手动配置 DNS?2. 手动配置 DNS 的方法方法 1:修改 /etc/res

mysql8.0.43使用InnoDB Cluster配置主从复制

《mysql8.0.43使用InnoDBCluster配置主从复制》本文主要介绍了mysql8.0.43使用InnoDBCluster配置主从复制,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录1、配置Hosts解析(所有服务器都要执行)2、安装mysql shell(所有服务器都要执行)3、

Spring Boot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)

《SpringBoot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)》本文将以一个实际案例(用户管理系统)为例,详细解析SpringBoot中Co... 目录引言:为什么学习Spring Boot分层架构?第一部分:Spring Boot的整体架构1.1

java程序远程debug原理与配置全过程

《java程序远程debug原理与配置全过程》文章介绍了Java远程调试的JPDA体系,包含JVMTI监控JVM、JDWP传输调试命令、JDI提供调试接口,通过-Xdebug、-Xrunjdwp参数配... 目录背景组成模块间联系IBM对三个模块的详细介绍编程使用总结背景日常工作中,每个程序员都会遇到bu

90%的人第一步就错了! 顺利登录wifi路由器后台的技巧

《90%的人第一步就错了!顺利登录wifi路由器后台的技巧》登录Wi-Fi路由器,其实就是进入它的后台管理页面,很多朋友不知道该怎么进入路由器后台设置,感兴趣的朋友可以花3分钟了解一下... 你是不是也遇到过这种情况:家里网速突然变慢、想改WiFi密码却不知道从哪进路由器、新装宽带后完全不知道怎么设置?别慌

JDK8(Java Development kit)的安装与配置全过程

《JDK8(JavaDevelopmentkit)的安装与配置全过程》文章简要介绍了Java的核心特点(如跨平台、JVM机制)及JDK/JRE的区别,重点讲解了如何通过配置环境变量(PATH和JA... 目录Java特点JDKJREJDK的下载,安装配置环境变量总结Java特点说起 Java,大家肯定都

linux配置podman阿里云容器镜像加速器详解

《linux配置podman阿里云容器镜像加速器详解》本文指导如何配置Podman使用阿里云容器镜像加速器:登录阿里云获取专属加速地址,修改Podman配置文件并移除https://前缀,最后拉取镜像... 目录1.下载podman2.获取阿里云个人容器镜像加速器地址3.更改podman配置文件4.使用po

Vue3 如何通过json配置生成查询表单

《Vue3如何通过json配置生成查询表单》本文给大家介绍Vue3如何通过json配置生成查询表单,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录功能实现背景项目代码案例功能实现背景通过vue3实现后台管理项目一定含有表格功能,通常离不开表单

mybatis映射器配置小结

《mybatis映射器配置小结》本文详解MyBatis映射器配置,重点讲解字段映射的三种解决方案(别名、自动驼峰映射、resultMap),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定... 目录select中字段的映射问题使用SQL语句中的别名功能使用mapUnderscoreToCame