初识 Struts2 - 先来生成一个登录页面体验一下

原创 2017年03月31日 18:10:43

1.首先下载Struts2 必要的包(大家可以到我的云盘直接下载 struts2 必要包 如果失效了,大家也可以自行下载,我会在下面放一张所需包的图片)

这里写图片描述


2.然后在 eclipse 中创建一个 动态web工程

3.然后大家把之前的下载的包全部拷贝到 WEBContent/WEB-INF/lib/ 这个目录下面。(注意:如果你是在我云盘中下载的,其中有两个文件web.xml 和 struts.xml 不用拷贝到 lib目录下面,这两个文件后面会用到

4.然后在 WEB-INF 目录下面生成一个 web.xml 文件(当然你也可以直接将我的文件拷贝到该目录下),如果你是自己生成的,那么你就将下面的代码拷贝到这个文件中



<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
<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>
</web-app>

当启动一个web项目时,web容器(这里指tomcat)会去读取他的配置文件 web.xml,上面的代码表示可以拦截到所有的 url 请求。

5.在 java Resources/src/ 目录下生成一个 struts.xml文件,文件代码如下:

““

loginForm.jsp


<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title><s:text name="loginPage"/></title>
</head>
<body>
<s:form action="login">
<s:textfield name="username" key="user" />
<s:textfield name="password" key="pass" />
<s:submit key="login" value="submit" />
</s:form>
</body>
</html>

不用管 <s:textfield.../>这个标签是什么意思,为什么与 html 标签不同,因为这时 struts2 特有的标签

error.jsp


<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
wow something wrong
</body>
</html>

success.jsp

““
<%@ page language=”java” contentType=”text/html; charset=ISO-8859-1”
pageEncoding=”ISO-8859-1”%>




Insert title here


this is successful page

““

8.在 src 目录下生成一个 han包(这个包名随便,只是我这个例子中使用的是这个包而已,大家可以自行取名,但是相应在 struts 中 action 的class 也要改变),在这个包下面新建一个 LoginAction 类,这个类继承自 ActionSupport,并且重写 execute方法,代码如下;

““
package han;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class LoginAction extends ActionSupport {

//定义封装请求参数的用户名和密码
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 LoginAction() {

}


//定义处理用户请求的 execute方法,这个方法会被程序自动调用
public String execute() throws Exception {
    //当用户名与密码都为 123 的时候,返回成功字符串,否则返回 错误字符串
    if(getUsername().equals("123") && getPassword().equals("123")){
        System.out.println(5656);
        ActionContext.getContext().getSession().put("user", getUsername());
        System.out.println(3344);
        return SUCCESS;
    }
    return ERROR;
}

}
““

9.这时基本上已经完成了,然后右键 loginForm.jsp,运行run as命令,启动服务器,进入 登录页面,如果用户名和密码都输入 123,那么进入 success.jsp 页面,否则进入error.jsp页面。

版权声明:本文为博主原创文章,未经博主允许不得转载。

struts2页面中的标签调用类的方法

或     func是类com.common.Constant里面的一个静态方法 str是动态的参数   方法二: func是类com.common.StrutsHelper...
  • sarck3
  • sarck3
  • 2013年12月04日 14:41
  • 1267

Struts2:前后台的数据交互

Struts2:前后台的数据交互 2016-07-18 11:08 ...
  • qq_33786631
  • qq_33786631
  • 2017年08月01日 14:47
  • 130

使用Struts2创建一个登录实例

Struts2事实上并不是Struts 1的升级版,而是WebWork的升级版。因为Struts2是WebWork的升级,而不是一个全新的框架,因此稳定性、性能等各方面都有很好的保证:而且吸收了Str...
  • lipingqingqing
  • lipingqingqing
  • 2010年08月02日 20:48
  • 21756

【Struts】Struts2简介及实现用户登录代码示例

Struts2是由传统的Struts1和WebWork两个经典的MVC框架发展起来的,无论是从Struts2设计的角度来看,还是从Struts2在实际项目中的易用性来看,Struts2都堪称是一个非常...
  • u010929604
  • u010929604
  • 2016年04月30日 15:53
  • 3250

【Struts实现页面验证码】

第一步,获取随机的字符串: public class SecurityCode { public enum SecurityCodeLevel { Simple, Medium, Hard ...
  • bear_huangzhen
  • bear_huangzhen
  • 2016年04月19日 08:59
  • 2331

在Struts2中实现登陆后跳转到登录前页面

很常见的一个应用就是访问某个页面,因为权限不够,进入登陆页面。人性化的设计是能够在登陆之后,系统跳转到用户原本需要访问的页面。这可以借助拦截器来实现。 在我们验证用户登陆的拦截器里面获取请求地址,并...
  • jingquanliang
  • jingquanliang
  • 2013年11月30日 16:11
  • 610

struts2登录拦截器代码实例

struts.xml 拦截器配置,创建package: com.beyond.kqxt.web.struts.action.login.MyIntercept"> ...
  • xiaofei0195
  • xiaofei0195
  • 2015年09月11日 09:32
  • 632

Struts2中自定义拦截器

1:login.jsp     pageEncoding="UTF-8"%> 登录页面 请登录: 用户名: 密    ...
  • pangqiandou
  • pangqiandou
  • 2017年07月14日 10:54
  • 257

struts2总结

struts2了解 1.到Apache下载Struts 2.0包  http://people.apache.org/builds/struts/2.0.10/ 2.将Struts 2.0 lib下...
  • mike_caoyong
  • mike_caoyong
  • 2011年04月28日 18:21
  • 2464
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:初识 Struts2 - 先来生成一个登录页面体验一下
举报原因:
原因补充:

(最多只允许输入30个字)