Struts1.x 基本原理及注册模块的实现

1、编写JavaBean:User,必须继承于ActionForm类

 1 package myuser;
 2
 3 import org.apache.struts.action.ActionForm;
 4
 5 public class User extends ActionForm{
 6
 7     //不加这个 eclipse 有警告
 8     private static final long serialVersionUID = 5599822869891501922L;
 9
10     private Integer id;
11
12     private String userName;
13
14     private String pwd;
15
16     public Integer getId() {
17         return id;
18     }
19
20     public void setId(Integer id) {
21         this.id = id;
22     }
23
24     public String getUserName() {
25         return userName;
26     }
27
28     public void setUserName(String userName) {
29         this.userName = userName;
30     }
31
32     public String getPwd() {
33         return pwd;
34     }
35
36     public void setPwd(String pwd) {
37         this.pwd = pwd;
38     }
39 }

2、在struts-config.xml中注册User的对象user

FormBean的概念,顾名思义,Form中的bean,表单中的数据,在Struts1.x由专门的ActionForm类负责接收,配置在 struts-config.xml中

1      <form-beans>
2          <form-bean name="user" type="myuser.User"/>
3      </form-beans>

一些反复编写的,没有任何技术含量的代码,都有框架来实现,比如:
     User user = new User();
     getParameter 等。
     FormBean的作用,为操作(action)提供数据。
3、编写UserDao类的方法 addUser(User user)

 1     public void addUser(User user){
 2         String sql = "insert into users(userName,pwd) values(?,?)";
 3         //获取连接
 4         Connection conn = DBLib.getConn();
 5         //创建数据库操作对象
 6         PreparedStatement pstmt;
 7         try {
 8             pstmt = conn.prepareStatement(sql);
 9             pstmt.setString(1, user.getUserName());
10             pstmt.setString(2, user.getPwd());
11             //执行数据库操作
12             pstmt.execute();
13             pstmt.close();
14         } catch (SQLException e) {
15             e.printStackTrace();
16         } finally{
17             try {
18                 //关闭数据库连接
19                 conn.close();
20             } catch (SQLException e) {
21                 e.printStackTrace();
22             }
23         }
24
25     }

4、编写AddUserAction,调用UserDAO类中的addUser方法,添加用户,此类必须继承于Action。

 1 package action;
 2
 3 import javax.servlet.http.HttpServletRequest;
 4 import javax.servlet.http.HttpServletResponse;
 5
 6 import org.apache.struts.action.Action;
 7 import org.apache.struts.action.ActionForm;
 8 import org.apache.struts.action.ActionForward;
 9 import org.apache.struts.action.ActionMapping;
10
11 import dao.UserDAO;
12 import myuser.User;
13
14 public class AddUserAction extends Action {
15
16     public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request,
17             HttpServletResponse response) throws Exception {
18         User user = (User)form;
19         UserDAO dao = new UserDAO();
20         dao.addUser(user);
21         return mapping.findForward("list");//跳转到userlist.jsp页面
22     }
23
24 }

5、配置AddUserAction, path,name,scope,forward,添加成功后转向userlist.jsp

 1 <?xml version="1.0" encoding="UTF-8"?>
 2
 3  <!DOCTYPE struts-config PUBLIC
 4      "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
 5      "http://struts.apache.org/dtds/struts-config_1_3.dtd">
 6  <struts-config>
 7      <form-beans>
 8          <form-bean name="user" type="myuser.User"/>
 9      </form-beans>
10
11      <action-mappings>
12          <action path="/addUser" type="action.AddUserAction" name="user">
13              <forward name="list" path="/userlist.jsp" />
14          </action>
15      </action-mappings>
16  </struts-config>

配置说明:

form-beans:用来放置多个formbean

from-bean:单个的formbean

| name:from-bean的名字,用于下面action标签的引用

| type:所对应的类,该类一定要继承 ActionForm

action-mappings:用来放置多个action

action:单个的action

| path:通过*.do(一般是,这要看web.xml url-pattern的配置)过滤后的路径名称,必须加"/"

| type:所对应的类,该类一定要继承 Action(或者其子类,后面会有例子)

| name:form-beans中的某个form-bean

| scope:该formbean的有效范围,两个值:request、session

| attribute:formbean在该有效范围中的名字,如果没有设置该属性默认就是name的值,一般不用设置该属性

forward:action 处理完成之后跳转到哪个页面

| name:给action中的 mapping.findForward(name) 用的

| path:页面路径,以前一定要加"/"

5、JSP页面代码

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 4 <html>
 5 <head>
 6 <meta http-equiv="Content-Type" content="text/html; charset==UTF-8">
 7 <title>Insert title here</title>
 8 </head>
 9 <body>
10 用户注册<br/>
11
12 <form method="post" action="addUser.do">
13     <table>
14         <tr>
15             <td>用户名:</td>
16             <td><input type="text" name="userName"/></td>
17         </tr>
18         <tr>
19             <td>密码:</td>
20             <td><input type="password" name="pwd"/></td>
21         </tr>
22         <tr>
23             <td colspan="2">
24                 <input type="submit" value="提 交"/>
25             </td>
26         </tr>
27     </table>
28 </form>
29 <div id="msg"></div>
30 <br/>
31 <br/>
32 <a href="main.jsp">返回主页面</a>
33 </body>
34 </html>

代码链接:http://pan.baidu.com/s/1qY4PEOW 提取码:gy0n

时间: 2024-10-17 05:28:45

Struts1.x 基本原理及注册模块的实现的相关文章

PHP+jQuery 注册模块的改进之二

接<PHP+jQuery 注册模块的改进之一>继续修改: ①在注册成功后返回登录邮件页面( maillogin.php ),在页面中用户可以点击链接跳转到自己注册邮箱的登录页面,可以再次发送激活链接: ②给激活链接设置有效期,过了有效期点击激活连接,会跳转页面让用户选择再次发送邮件或者返回注册页:再次发送邮件后,进邮箱点击链接激活: ③点击重新发送激活连接,不跳转页面,在当前页无刷新弹出通知:已重新发送链接,几秒钟之后通知消失: ④点击更换收件邮箱,跳转至注册页 1.点击邮箱链接跳转至相应邮箱

登录及注册模块设置与流程图

原文地址:http://www.cocoachina.com/design/20170320/18918.html 一.登录/注册模块流程图 1.电商&O2O类产品下单注册逻辑 2.类似于简书&知乎等内容型社区产品 二.关于注册流程 1.同一页面中完成注册 较适合填写信息较少(往往不包含关于用户个人信息的设置),注册流程简洁的产品,这类产品的注册所需的信息往往只包含:手机号.验证码.密码等最简单的信息. 在同一页面中完成注册,能够能够让用户对整个注册流程有个心理预期,对填写的信息能够进行预

PHP+jQuery 简单注册模块

/* ******* 环境: Apache2.2.8 + PHP5.2.6 + MySQL5.0.51b + jQuery-1.8.3.min.js ************** 其他组件:Zend_mail( Zend_framework 1.11.11 )******* Date:2014-09-25******* Author:小dee******* Blog:http://www.cnblogs.com/dee0912/*/ 写了一个简单的PHP+jQuery注册模块,需要填写的栏目包括

百思不得姐之立即登录注册模块(五)

一 功能图和实现思路 具体功能图: 实现思路: --> 1 关注控制器模块搭建(xib) --> 2 登录和注册界面的总体模块数量(三个模块),可以用三个view来装各自的子控件 --> 2.2 先做上面的view->中间的view->底部的view(顺序自定) --> 2.3 创建两个xib,用同一个类来管理两个xib --> 2.4 将中间的view的宽度改为屏幕的两倍 --> 2.5 用拖线的方式修改约束,达到app的整体效果 二 关注控制器模块搭建

WinForm应用程序之注册模块的设计与实现

Posted on 2012-11-13 10:21 星星之火116 阅读(3260) 评论(4) 编辑 收藏 我们在安装一些桌面应用程序的时候,往往在会有提示当前用户使用的是试用版,要进行注册.刚好最近做了一个关于应用程序注册的小demo(这里只是一个思路),在这里和大家分享一下. 项目的要求是这样的: 1. 能获取主机硬盘序列号.网卡MAC地址.CPU编号,并按照一定的算法由此生成机器码 2. 能根据机器码按照一定的算法生成注册码 3. 未注册时,不能使用会员管理功能 好的废话不多说,马上进

Java入门:用户登录与注册模块1(实践项目)——分析

任务描述:用户登录与注册是大多数软件都拥有的一个模块.请编写一个控制台程序,实现用户的登录与注册功能,并且用户能够修改自己信息. [需求分析]由于本程序是一个演示程序,用户的信息我们做简化处理,仅包括:用户名.密码和EMAIL. 1.系统功能分析 分析一个系统或一个模块,我们首先需要了解系统需要实现哪些功能,通常可采用用例图来描述分析结果.对于本任务,用例图为: 对于每个用例,可以使用用例描述表来详细阐述用例内容.用户登录注册模块的三个用例描述表如下: (1)登录用例描述表 用例名称 登录 标识

3、应用注册模块、监控模块 -功能详细设计 --短信平台

三.功能详细设计 系统包括下行短信发送WebService.下行短信发送服务.提交报告获取服务.状态报告获取服务.上行短信获取服务.上行短信获取守护服务.上行短信处理服务.状态监控服务.以及应用注册模块. 1.  应用注册模块 由于本系统为公共性短信发送平台,需要对接并服务于若干第三方系统,需要对所有发送和接收的短信统一管理并分别处理. 应用注册模块的具体功能有: A)应用注册:只有注册过的应用才能够发送短信. B)扩展码分配:云MAS系统的号码为12位,并预留8位共我们扩展使用,此8位扩展码,

06.HTTP编程实战:高校信息查询平台之注册模块

转载请标明出处:http://blog.csdn.net/u012637501 一.注册模块服务端   1.(MyEclipse)src/../DBUtil.java:数据库工具类(JDBC,链接数据库) 在数据库工具类中,添加sql语句插入数据具体实现方法. package com.jiangdongguo.login; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException

第三方支付框架需求文档:注册模块

返回主目录 注册模块 1.注册验证码 防止恶意刷号,此处验证码不限于图形文字/滑块/交互点击等验证码类型,根据项目需要后期决定. 2.注册模块只对应商户用户开放,其他用户的账号由管理员或部门管理员分配 原文地址:https://www.cnblogs.com/aclmin/p/9829449.html