服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服务器之家 - 编程语言 - JAVA教程 - java中struts配置

java中struts配置

2019-12-23 14:12hebedich JAVA教程

本文给大家详细分析了在java项目中配置Struts的方法和示例,十分的简单实用,有需要的小伙伴可以参考下。

1.了解struts

Struts2框架中核心组件就是Action、拦截器等,Struts2框架使用包来管理Action和拦截器等。每个包就是多个Action、多个拦截器、多个拦截器引用的集合。
在struts.xml文件中package元素用于定义包配置,每个package元素定义了一个包配置。它的常用属性有:
l name:必填属性,用来指定包的名字。
l extends:可选属性,用来指定该包继承其他包。继承其它包,可以继承其它包中的Action定义、拦截器定义等。
l namespace:可选属性,用来指定该包的命名空间。

2.配置struts

  首先新建一个web项目,在右击一个项目,选择myeclipse下add struts
在选择 struts2.1 单击下一步在选择自己所需要的包 在保存

3.修改用户登录验证示例,多增加一个注册用户功能。

1.       修改Action类:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
package org.qiujy.web.struts2.action;
 
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
 
/**
*@authorqiujy
*@version1.0
*/
publicclass LoginAction extends ActionSupport{
  private String userName;
  private String password;
  
  private String msg; //结果信息属性
  
  /**
   *@returnthemsg
   */
  public String getMsg() {
    returnmsg;
  }
  /**
   *@parammsgthemsgtoset
   */
  publicvoid setMsg(String msg) {
    this.msg = msg;
  }
  /**
   *@returntheuserName
   */
  public String getUserName() {
    returnuserName;
  }
  /**
   *@paramuserNametheuserNametoset
   */
  publicvoid setUserName(String userName) {
    this.userName = userName;
  }
  /**
   *@returnthepassword
   */
  public String getPassword() {
    returnpassword;
  }
  /**
   *@parampasswordthepasswordtoset
   */
  publicvoid setPassword(String password) {
    this.password = password;
  }
  
  /**
   *处理用户请求的login()方法
   *@return结果导航字符串
   *@throwsException
   */
  public String login() throws Exception{
    if("test".equals(123) && "test".equals(123)){
      msg = "登录成功,欢迎" + 123;
      //获取ActionContext实例,通过它来访问Servlet API
      ActionContext context = ActionContext.getContext();
      //看session中是否已经存放了用户名,如果存放了:说明已经登录了;
//否则说明是第一次登录成功
      if(null != context.getSession().get("uName")){
        msg = this.userName + ":你已经登录过了!!!";
      }else{
        context.getSession().put("uName", this.userName);
      }
      
      returnthis.SUCCESS;
    }else{
      msg = "登录失败,用户名或密码错";
      returnthis.ERROR;
    }
  }
  
  public String regist() throws Exception{
    //将用户名,密码添加到数据库中
    //...
    msg = "注册成功。";
    returnthis.SUCCESS;
  }
}

2.       struts.xml文件:没有什么变化,跟以前一样配置

?
1
2
3
4
5
6
7
8
9
10
11
12
13
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
  <package name="my" extends="struts-default" namespace="/manage">
  <!-- 定义处理请求URL为login.action的Action -->
    <action name="userOpt" class="org.qiujy.web.struts2.action.LoginAction">
    <!-- 定义处理结果字符串和资源之间的映射关系 -->
      <result name="success">/success.jsp</result>
      <result name="error">/error.jsp</result>
    </action>
  </package>
</struts>

3.       页面:
index.jsp

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<%@ page language="java" pageEncoding="UTF-8"%>
<html>
<head>
  <title>用户登录页面</title>
</head>
 
<body>
 <h2>用户入口</h2>
 <hr>
  <form action="manage/userOpt!login.action" method="post">
  <table border="1">
     <tr>
       <td>用户名:</td>
       <td><input type="text" name="userName"/></td>
     </tr>
     <tr>
       <td>密码:</td>
       <td><input type="password" name="password"/></td>
     </tr>
     <tr>
       <td colspan="2">
         <input type="submit" value=" 确定 "/>
       </td>
     </tr>
  </table>
  </form>
</body>
</html>

regist.jsp

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<%@ page language="java" pageEncoding="UTF-8"%>
<html>
<head>
  <title>用户注册页面</title>
</head>
 
<body>
 <h2>用户注册</h2>
 <hr>
  <form action="manage/userOpt!regist.action" method="post">
  <table border="1">
     <tr>
       <td>用户名:</td>
       <td><input type="text" name="userName"/></td>
     </tr>
     <tr>
       <td>密码:</td>
       <td><input type="password" name="password"/></td>
     </tr>
     <tr>
       <td colspan="2">
         <input type="submit" value=" 注册 "/>
       </td>
     </tr>
  </table>
  </form>
</body>
</html>

现在就可以使用sturts。

以上所述就是本文的全部内容了,希望大家能够喜欢。

延伸 · 阅读

精彩推荐