添加用户数据库

  • DbUtil.java   封装数据常用操作

package com.jsly.drp.util;

import java.sql.*;
/**
 * 封装数据常用操作
 * @author Administrator
 *
 */
public class DbUtil {
    /**
     * 取得Connection
     * @return
     */
   public static Connection getConnection(){
        
    Connection conn = null;
    try {
        Class.forName("oracle.jdbc.driver.OracleDriver");
           String url = "jdbc:oracle:thin:@localhost:1521:jsly";
           String username = "drp1";
           String password = "drp1";
        conn = DriverManager.getConnection(url, username, password);
       
    } catch (ClassNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    return conn;
   }
   /**
    * 关闭conn
    * @param conn
    */
   public static void close(Connection conn){
       if (conn != null){
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
       }
   }
   /**
    * 关闭pstmt
    * @param pstmt
    */
   public static void close(PreparedStatement pstmt){
       if (pstmt != null){
            try {
                pstmt.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
       }
   }
  
   public static void main(String arg[]){
       System.out.print(DbUtil.getConnection());
   }
  
}

 

 

 

  • User.java       用户实体类

package com.jsly.drp.sysmgr.domain;

import java.util.Date;

/**
 * 用户实体类
 * @author Administrator
 *
 */

public class User {
   
    //用户代码
    private String userId;
  
    //用户姓名
    private String userName;
   
    //密码
    private String password;
   
    //联系电话
    private String contactTel;
   
    //电子邮件
    private String email;
   
    //创建日期
    private Date createDate;

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    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 getContactTel() {
        return contactTel;
    }

    public void setContactTel(String contactTel) {
        this.contactTel = contactTel;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public Date getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }
   
   
}

 

 

  • UserManager.java   采用单例管理用户

package com.jsly.drp.sysmgr.manager;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;

import com.jsly.drp.sysmgr.domain.User;
import com.jsly.drp.util.DbUtil;

/**
 * 采用单例管理用户
 * @author Administrator
 *
 */
public class UserManager {
    
    private static UserManager instance = new UserManager();//私有静态成员变量
    private UserManager(){                                    //私有构造方法    
    }
    public static UserManager getInstance(){                //公共静态入口点方法
        return instance;
    }
    
    /**
     * 添加用户
     * @param user
     */
    public void addUser(User user){
       
        String sql = "insert into t_user (user_id, user_name, password, contact_tel, email, create_date) "+
        " values (?, ?, ?, ?, ?, ?)";
        Connection conn = null;
        PreparedStatement pstmt = null;
       
        try {
            conn = DbUtil.getConnection();
            pstmt = conn.prepareStatement(sql);
           
            pstmt.setString(1, user.getUserId());
            pstmt.setString(2, user.getUserName());
            pstmt.setString(3, user.getPassword());
            pstmt.setString(4, user.getContactTel());
            pstmt.setString(5, user.getEmail());
            //pstmt.setTimestamp(6, new Timestamp(new java.util.Date().getTime()));
            //setDate保存年月日,setTime保存时分秒,setTimestamp保存年月日时分秒
            pstmt.setTimestamp(6, new Timestamp(System.currentTimeMillis()));
           
            pstmt.executeUpdate();
           
        } catch (SQLException e) {
            e.printStackTrace();
        }finally{
            DbUtil.close(pstmt);
            DbUtil.close(conn);
        }
       
    }
    
    /**
     * 根据用户代码进行查询
     * @param user
     * @return
     * 如果存在则返回user对象 不存在则返回null
     */
    
    public User findUserById(String userId){
       
        String sql = "select user_id, user_name, password, contact_tel, email, create_date from t_user where user_id=?";
        Connection conn = null;
        PreparedStatement pstmt = null;
        ResultSet rs = null;
        User user = null;
       
        try{
            conn = DbUtil.getConnection();
            pstmt = conn.prepareStatement(sql);
            pstmt.setString(1, userId);
            rs = pstmt.executeQuery();
           
            if(rs.next()){
                user =new User();
                user.setUserId("userId");
                user.setUserName(rs.getString("user_name"));
                user.setPassword(rs.getString("password"));
                user.setContactTel(rs.getString("contact_tel"));
                user.setEmail(rs.getString("email"));
                user.setCreateDate(rs.getTimestamp("create_date"));
            }
           
        }catch(SQLException e){
            e.printStackTrace();
        }finally{
            DbUtil.close(rs);
            DbUtil.close(pstmt);
            DbUtil.close(conn);
        }
       
        return user;
    }
}

 

 

 

  • user_add.jsp    //

<%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<%@ page import="com.jsly.drp.sysmgr.domain.*"%>
<%@ page import="com.jsly.drp.sysmgr.manager.*" %>
<%
    request.setCharacterEncoding("GB18030");
    String command = request.getParameter("command");
    /**
    *保持页面数据
    **/
    String userId  = "";
    String userName = "";
    String contactTel = "";
    String email = "";
    
    
    if ("add".equals(command)){
     if(UserManager.getInstance().findUserById(request.getParameter("userId")) == null){
          User user = new User();
          user.setUserId(request.getParameter("userId"));
          user.setUserName(request.getParameter("userName"));
          user.setPassword(request.getParameter("password"));
          user.setContactTel(request.getParameter("contactTel"));
          user.setEmail(request.getParameter("email"));
          
          UserManager.getInstance().addUser(user);
          out.print("添加用户成功!");
      }else{
          userId = request.getParameter("userId");
          userName = request.getParameter("userName");
          contactTel = request.getParameter("contactTel");
          email = request.getParameter("email");
          
             out.print("用户代码已经存在,不能添加!");
      }
    }
%>



<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=GB18030">
        <title>添加用户</title>
        <link rel="stylesheet" href="../style/drp.css">
        <script src="../script/client_validate.js"></script>
        <script type="text/javascript">
    function goBack() {
        window.self.location="user_maint.html"
    }
    
    function addUser() {
        var vUseIdElt = document.getElementById("userId");
        //用户代码不能为空
        if(isEmpty(vUseIdElt.value) == true){
          alert("用户代码不能为空!");
          vUseIdElt.focus();
          return;
        }
        //用户代码至少4个字符
        if(trim(vUseIdElt.value).length < 4){
          alert("用户代码不能小于4个字符!");
          vUseIdElt.focus();
          return;
        }
        //用户代码第一个字符是字母
        if(!(trim(vUseIdElt.value).charAt(0) >= "a" && trim(vUseIdElt.value).charAt(0) <= "z")){
          alert("用户代码第一个字符必须是字母!");
          vUseIdElt.focus();
          return;
        }

        //采用正则表达式判断用户代码只能是数字或字母,位数为4-6位
        var re = new RegExp(/^[a-zA-Z0-9]{4,6}$/);
        if (!re.test(trim(vUseIdElt.value))){
          alert("用户代码只能是数字或字母,位数为4-6位");
          vUseIdElt.focus();
          return;
        }
        
        //用户名称不能为空
        if(isEmpty(document.getElementById("userName").value) == true){
          alert("用户名称不能为空!");
          document.getElementById("userName").focus();
          return;
        }
        
        //密码至少6位
        if(document.getElementById("password").value.length < 6){
          alert("密码不能为少于6位!");
          document.getElementById("password").focus();
          return;
        }
        
        //如果联系电话不为空,则都为数字(正则)
        var vContactTelElt = document.getElementById("contactTel");
        if(isEmpty(vContactTelElt.value) == false){
          re.compile(//D/);// /D表示非数字 //把正则表达式编译为内部格式,从而执行得更快。----不明白,暂时理解为改变正则表达式就ok了
          if(re.test(trim(vContactTelElt.value))){
              alert("联系电话格式不正确!");
              vContactTelElt.focus();
              return;
          }
        }
        
        //如果邮箱不为空,则判断格式    
         if(isEmpty(document.getElementById("email").value) == false){
             if(trim(document.getElementById("email").value).search(/@/) < 0){
              alert("邮编格式不正确!");
            }
        }
        
        document.getElementById("userForm").action = "user_add.jsp";
        document.getElementById("userForm").method = "post";
        document.getElementById("userForm").submit();
        
    }
    
    //初始化获取焦点
    function init(){
      document.getElementById("userId").focus();
    }
    
    //只允许输入字母
    function userIdOnKeyPress(){
      if(!(event.keyCode >= 97 && event.keyCode <=122)){
        event.keyCode = 0;
      }
    }
    
    //覆盖document.onkeydown()方法,用回车(13)代替tab(9)键
    function document.onkeydown(){
      if((event.keyCode == 13) && (event.srcElement.type != "button")){
        event.keyCode = 9;
      }
    }
    
</script>
    </head>

    <body class="body1" οnlοad="init()">
        <form name="userForm" target="_self" id="userForm">
           
            i<input type="hidden" name="command" value="add">
            
            <div align="center">
                <table width="95%" border="0" cellspacing="2" cellpadding="2">
                    <tr>
                        <td>&nbsp;
                            
                        </td>
                    </tr>
                </table>
                <table width="95%" border="0" cellspacing="0" cellpadding="0"
                    height="25">
                    <tr>
                        <td width="522" class="p1" height="25" nowrap>
                            <img src="../images/mark_arrow_03.gif" width="14" height="14">
                            &nbsp;
                            <b>系统管理&gt;&gt;用户维护&gt;&gt;添加</b>
                        </td>
                    </tr>
                </table>
                <hr width="97%" align="center" size=0>
                <table width="95%" border="0" cellpadding="0" cellspacing="0">
                    <tr>
                        <td width="22%" height="29">
                            <div align="right">
                                <font color="#FF0000">*</font>用户代码:&nbsp;
                            </div>
                        </td>
                        <td width="78%">
                            <input name="userId" type="text" class="text1" id="userId" value="<%=userId %> "
                                size="10" maxlength="10" OnKeyPress="userIdOnKeyPress()">
                        </td>
                    </tr>
                    <tr>
                        <td height="26">
                            <div align="right">
                                <font color="#FF0000">*</font>用户名称:&nbsp;
                            </div>
                        </td>
                        <td>
                            <input name="userName" type="text" class="text1" id="userName" value="<%=userName %>"
                                size="20" maxlength="20">
                        </td>
                    </tr>
                    <tr>
                        <td height="26">
                            <div align="right">
                                <font color="#FF0000">*</font>密码:&nbsp;
                            </div>
                        </td>
                        <td>
                            <label>
                                <input name="password" type="password" class="text1"
                                    id="password" size="20" maxlength="20">
                            </label>
                        </td>
                    </tr>
                    <tr>
                        <td height="26">
                            <div align="right">
                                联系电话:&nbsp;
                            </div>
                        </td>
                        <td>
                            <input name="contactTel" type="text" class="text1" value="<%=contactTel %>"
                                id="contactTel" size="20" maxlength="20">
                        </td>
                    </tr>
                    <tr>
                        <td height="26">
                            <div align="right">
                                email:&nbsp;
                            </div>
                        </td>
                        <td>
                            <input name="email" type="text" class="text1" id="email" value="<%=email %>"
                                size="20" maxlength="20">
                        </td>
                    </tr>
                </table>
                <hr width="97%" align="center" size=0>
                <div align="center">
                    <input name="btnAdd" class="button1" type="button" id="btnAdd"
                        value="添加" onClick="addUser()">
                    &nbsp;&nbsp;&nbsp;&nbsp;
                    <input name="btnBack" class="button1" type="button" id="btnBack"
                        value="返回" onClick="goBack()" />
                </div>
            </div>
        </form>
    </body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值