⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 userauthentication.java

📁 基本设计思路: 协同编辑开始
💻 JAVA
字号:
package userauthentication;

import java.io.*;
import java.lang.*;
import java.sql.*;
import java.util.*;

/**
 * <p>Title: </p>
 * <p>Description: </p>
 * <p>Copyright: Copyright (c) 2004</p>
 * <p>Company: zhhz</p>
 * @dgdu,2004-12-14
 * @version 1.0
 */

/**
 * 类:UserAuthentication
 * 功能:用户认证
 * 属性:String userName
 *      String userPassword
 *      int userID
 * 方法:void UserAuthentication()
 *      string getUserName(int userID)
 *      void setUserName(String user_name)
 *      String getPassword(int userID)
 *      void setPassword(String user_password)
 *      boolean ISlegalUser(String userName, String userPassword)
 *      boolean searchForRepeat(String userName)
 *      void insertNewUser(String userName, String userPassword)
 *      void delOldUser(String userName)
 *      void main(String[] args)
 */
public class UserAuthentication {

  public void UserAuthentication() {
  }

  public Connection getConnection() {
    Connection con = null;
    try {
      Properties conProps = new Properties();
      conProps.put("user", "sys");
      conProps.put("password", "sys");
      conProps.put("internal_logon", "sysdba");
      Class.forName("oracle.jdbc.driver.OracleDriver");
      con = DriverManager.getConnection(
          "jdbc:oracle:thin:@210.29.175.35:1521:ZHHZ", conProps);
    }
    catch (Exception e) {}
    return con;
  }

  /**
   * 方法:getUserName
   * 类型:String
   * 功能:获得用户名
   * 输入变量:int userID
   * 输出变量:String userName
   */
  public String getUserName(int userID) {
    String userName = "";
    try {
      Connection con = getConnection();
      String query = "SELECT USER_NAME FROM ZHHZ436.USER_LIST WHERE USER_ID=" +
          userID +
          "";
      Statement stmt = con.createStatement();
      ResultSet results = stmt.executeQuery(query);
      boolean more = results.next();
      while (more) {
        userName = results.getString("USER_NAME");
        more = results.next();
      }
    }
    catch (Exception e) {
    }
    return userName;
  }

  /**
   * 方法:setUserName
   * 类型:void
   * 功能:设置用户名
   * 输入变量:string user_name
   * 输出变量:无
   */
  public void setUserName(String user_name) {
    String userName = "";
    userName = user_name;
  }

  /**
   * 方法:getPassword
   * 类型:String
   * 功能:获取用户密码
   * 输入变量:int userID
   * 输出变量:String userPassword
   */
  public String getPassword(int userID) {
    String userPassword = "";
    try {
      Connection con = getConnection();
      String query = "SELECT PASSWORD FROM ZHHZ436.USER_LIST WHERE USER_ID=" +
          userID +
          "";
      Statement stmt = con.createStatement();
      ResultSet results = stmt.executeQuery(query);
      boolean more = results.next();
      while (more) {
        userPassword = results.getString("PASSWORD");
        more = results.next();
      }

    }
    catch (Exception e) {
      //return null;
    }
    return userPassword;
  }

  /**
   * 方法:setPassword
   * 类型:void
   * 功能:设置用户密码
   * 输入变量:String user_password
   * 输出变量:无
   */
  public void setPassword(String user_password) {
    String userPassword = "";
    userPassword = user_password;
  }

  /**
   * 方法:ISlegalUser
   * 类型:boolean
   * 功能:检查登录用户是否合法
   * 输入变量:String userName,String userPassword
   * 输出变量:返回布尔值
   */
  public boolean ISlegalUser(String userName, String userPassword) {
    int flag = 0;
    try {
      Connection con = getConnection();
      String query = "SELECT * FROM ZHHZ436.USER_LIST WHERE USER_NAME='" +
          userName +
          "'";
      Statement stmt = con.createStatement();
      ResultSet results = stmt.executeQuery(query);
      boolean more = results.next();
      while (more) {
        if (userPassword.equals(results.getString("PASSWORD"))) {
          flag = 1; //用户合法
        }
        more = results.next();
      }
    }
    catch (Exception e) {
      //System.out.print("sql error!");
    }
    try {
      if (flag == 1) {
        return true; //用户合法
      }
      else {
        return false; //用户非法
      }
    }
    catch (Exception e) {
      return false; //sql异常
    }
  }

  /**
   * 方法:searchForRepeat
   * 类型:boolean
   * 功能:检查新建用户名是否与老用户名重复
   * 输入变量:String userName
   * 输出变量:返回布尔值
   */
  private boolean searchForRepeat(String userName) {
    try {
      Connection con = getConnection();
      String query = "SELECT USER_NAME FROM ZHHZ436.USER_LIST";
      Statement stmt = con.createStatement();
      ResultSet results = stmt.executeQuery(query);
      boolean more = results.next();
      while (more) {
        if (userName.equals(results.getString("USER_NAME"))) {
          return false; //与老用户名重复
        }
        more = results.next();
      }
      return true; //与老用户名不重复
    }
    catch (Exception e) {
      return false; //sql异常
    }
  }

  /**
   * 方法:insertNewUser
   * 类型:void
   * 功能:添加一个新用户
   * 输入变量:String userName,String userPassword
   * 输出变量:无
   */
  public void insertNewUser(String userName, String userPassword) {
    int i = 0, id = 0, new_userID = 0;
    try {
      Connection con = getConnection();
      //获取数据库的元数据
      String query1 = "SELECT * FROM ZHHZ436.USER_LIST";
      Statement stmt = con.createStatement(); //获取用户ID
      //System.out.println("createStatement success!");
      ResultSet results = stmt.executeQuery(query1);
      //System.out.println("execute select success!");
      boolean more = results.next();
      //id = 0;
      while (more) {
        i = results.getInt("USER_ID");
        if (i > id) {
          id = i;
        }
        more = results.next();
      }
    }
    catch (Exception e) {
      //System.out.println("select failed");
    }
    try {
      Connection con = getConnection();
      new_userID = id + 1;
      String query2 = "INSERT INTO ZHHZ436.USER_LIST VALUES(" + new_userID +
          ",'" +
          userName + "','" + userPassword + "')";
      Statement stmt = con.createStatement();
      stmt.executeQuery(query2);
    }
    catch (Exception e) {
      //System.out.println("insert into failed");
    }
  }

  /**
   * 方法:delOldUser
   * 类型:void
   * 功能:删除一个用户
   * 输入变量:String userName
   * 输出变量:无
   */
  public void delOldUser(String userName) {
    try {
      Connection con = getConnection();
      String query = "DELETE FROM ZHHZ436.USER_LIST WHERE USER_NAME='" +
          userName + "'";
      Statement stmt = con.createStatement();
      stmt.executeQuery(query); //执行删除操作
    }
    catch (Exception e) {
      //System.out.println("del failed!");
    }
  }

  /**
   * 方法:main
   * 类型:void
   * 功能:测试以上各方法
   * 输入变量:无
   * 输出变量:无
   */
  public static void main(String[] args) {
    UserAuthentication t = new UserAuthentication(); //新建一个类
    System.out.print(t.getUserName(43)); //测试方法
    //System.out.print(t.getPassword(43));
    //System.out.print(t.ISlegalUser("DGDU", "0000"));
    //System.out.print(t.searchForRepeat("DGDU"));
    //t.insertNewUser("YYSHI", "0000");
    //t.delOldUser("YYSHI");
  }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -