package com.books.model;
import java.sql.*;
import com.books.model.UserBean;
public class PersonalUserInfoHandle {
enum ModifyExceptionType {NONE_EXCEPTON, USERBEAN_NULL, CONNECTION_FAIL, MODIFY_FAIL, TEL_EXIST};
enum ModifyPasswordExceptionType {NONE_EXCEPTION, PASSWORD_INCORRECT, MODIFY_FAIL};
int modifyResult = 0;
Connection ct = null;
PreparedStatement ps = null;
ResultSet rs = null;
int updateReturnResult = 0;
String sql = null;
/**
* 此函数用于获取用户信息,传递通过用户ID参数,获取数据库中对应的用户记录
* @param usrid Int型,用户ID
* @return UserBean类型,存放用户信息
*/
public UserBean getUserBean(String usrid){
UserBean ub = new UserBean();
sql = "SELECT * FROM userinfo WHERE usrid='" + usrid + "'";
try{
ct = Tools.getConnection();
if(ct == null) {
close_DB();
return null;
}
ps = ct.prepareStatement(sql);
rs = ps.executeQuery();
if(rs.next()){
ub.setUsrid(rs.getString(1));
ub.setUsrname(rs.getString(2));
ub.setUsrsex(rs.getString(3));
ub.setUsrage(rs.getInt(4));
ub.setVocation(rs.getString(5));
ub.setUsrtel(rs.getString(6));
ub.setEmail(rs.getString(7));
ub.setAddress(rs.getString(8));
ub.setUsrcredit(rs.getInt(9));
} else {
close_DB();
return null;
}
} catch(Exception e) {
e.printStackTrace();
}
return ub;
}
/**
* 此函数用于修改用户信息,传递UserBean类型参数,修改数据库中的对应记录
* @param userBean UserBean类型,存放用户信息
* @return Int类型:0 无异常, 1 UserBean参数为空, 2 数据库连接为空, 3 修改记录失败, 4手机号已存在
*/
public int setUserBean(UserBean userBean){
if(userBean != null){
//生成查询相同手机号语句
String sql_tel_query = "SELECT usrtel FROM userinfo WHERE usrid!='" + userBean.getUsrid() + "' AND usrtel='" + userBean.getUsrtel() + "'";
//生成更新数据库语句
sql = "UPDATE userinfo SET"
+ " usrname='" + userBean.getUsrname() + "',"
+ " usrsex='" + userBean.getUsrsex() + "',"
+ " usrage='" + userBean.getUsrage() + "',"
+ " vocation='" + userBean.getVocation() + "',"
+ " usrtel='" + userBean.getUsrtel() + "',"
+ " email='" + userBean.getEmail() + "',"
+ " address='" + userBean.getAddress() + "'"
+ " WHERE usrid='" + userBean.getUsrid() + "'";
try{
ct = Tools.getConnection();
//如果ct为空则返回2
if(ct == null) {
modifyResult = ModifyExceptionType.CONNECTION_FAIL.ordinal();
close_DB();
return modifyResult;
}
ps = ct.prepareStatement(sql_tel_query);
rs = ps.executeQuery();
//如果有相同手机号则返回4
if(rs.next()){
modifyResult = ModifyExceptionType.TEL_EXIST.ordinal();
close_DB();
return modifyResult;
} else {
ps.close();
ps = null;
}
ps = ct.prepareStatement(sql);
updateReturnResult = ps.executeUpdate();
//如果更新失败则返回3,正常则返回0
if(updateReturnResult == 0) {
modifyResult = ModifyExceptionType.MODIFY_FAIL.ordinal();
close_DB();
return modifyResult;
} else {
modifyResult = ModifyExceptionType.NONE_EXCEPTON.ordinal();
close_DB();
return modifyResult;
}
} catch(Exception e) {
e.printStackTrace();
}
} else {
modifyResult = ModifyExceptionType.USERBEAN_NULL.ordinal();
close_DB();
return modifyResult;
}
close_DB();
return modifyResult;
}
/**
* 此函数用于修改用户密码
* @param usrid 用户ID
* @param oldPass 用户旧密码
* @param newPass 用户新密码
* @return 返回Int型,0: 修改正常,1: 旧密码不正确,2: 修改出错
*/
public int setUserPassword(String usrid, String oldPass, String newPass){
int setResult = 0;
String sql_match_old_pass = "SELECT usrpassword FROM useraccount WHERE usrid='" + usrid + "' AND usrpassword='" + oldPass + "'";
try{
ct = Tools.getConnection();
ps = ct.prepareStatement(sql_match_old_pass);
rs = ps.executeQuery();
if(rs.next()){
rs.close();rs = null;
ps.close();ps = null;
sql = "UPDATE useraccount SET usrpassword='" + newPass + "' WHERE usrid='" + usrid + "'";
ps = ct.prepareStatement(sql);
int updateResult = ps.executeUpdate();
if(updateResult == 0) {
setResult = ModifyPasswordExceptionType.MODIFY_FAIL.ordinal();
}
rs.close();rs = null;
ps.close();ps = null;
} else {
setResult = ModifyPasswordExceptionType.PASSWORD_INCORRECT.ordinal();
}
} catch(Exception e) {
e.printStackTrace();
}
return setResult;
}
/**
* 此函数用于通过用户账号获取用户ID
* @param usraccount String类型用户账号
* @return 返回Int型用户ID
*/
public int getUserID(String usraccount){
int usrid = -1;
try{
ct = Tools.getConnection();
String sql_get_userid = "SELECT usrid FROM useraccount WHERE usraccount='" + usraccount + "'";
ps = ct.prepareStatement(sql_get_userid);
rs = ps.executeQuery();
if(rs.next()){
usrid = rs.getInt(1);
}
} catch(Exception e) {
e.printStackTrace();
}
return usrid;
}
//关闭数据库连接函数
private void close_DB(){
if(rs != null){
try{
rs.close();
rs = null;
} catch(Exception e){
e.printStackTrace();
}
}
if(ps != null){
try{
ps.close();
ps = null;
} catch(Exception e){
e.printStackTrace();
}
}
if(ct != null){
try{
ct.close();
ct = null;
} catch(Exception e){
e.printStackTrace();
}
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
本资源中的源码都是经过本地编译过可运行的,下载后按照文档配置好环境就可以运行。资源项目的难度比较适中,内容都是经过助教老师审定过的,应该能够满足学习、使用需求,如果有需要的话可以放心下载使用。有任何问题也可以随时私信博主,博主会第一时间给您解答!!! 本资源中的源码都是经过本地编译过可运行的,下载后按照文档配置好环境就可以运行。资源项目的难度比较适中,内容都是经过助教老师审定过的,应该能够满足学习、使用需求,如果有需要的话可以放心下载使用。有任何问题也可以随时私信博主,博主会第一时间给您解答!!! 本资源中的源码都是经过本地编译过可运行的,下载后按照文档配置好环境就可以运行。资源项目的难度比较适中,内容都是经过助教老师审定过的,应该能够满足学习、使用需求,如果有需要的话可以放心下载使用。有任何问题也可以随时私信博主,博主会第一时间给您解答!!!
资源推荐
资源详情
资源评论
收起资源包目录
基于Servlet的图书管理系统.zip (119个子文件)
.classpath 1KB
org.eclipse.wst.common.component 474B
org.eclipse.wst.jsdt.ui.superType.container 49B
index.min.css 50KB
style.css 4KB
css.css 1KB
login-bg.gif 97KB
search.gif 45KB
wel_bk.gif 34KB
index-logo.gif 7KB
index_mid.gif 7KB
index_bg.gif 5KB
login-btn.gif 3KB
login-input.gif 2KB
index_top.gif 2KB
index-menu-title.gif 2KB
index-menu-bg.gif 2KB
index-submenu-bg.gif 1KB
index-subnav-right.gif 422B
index-subnav-left.gif 419B
Login.gif 349B
page-thead-bg.gif 285B
index-header-bg.gif 274B
page-bg.gif 190B
sidebar-on.gif 177B
index-subnav-bg.gif 153B
index-footer-bg.gif 152B
page-pageTitle-bg.gif 152B
index-menu-bg2.gif 73B
.gitignore 5B
mysql-connector-java-5.1.26-bin.jar 836KB
PersonalUserInfoHandle.java 6KB
BooksBorrowHandle.java 6KB
UserBeanCl.java 5KB
AdminInfoHandle.java 5KB
CheckCodeServlet.java 4KB
Tools.java 4KB
UserClServlet.java 4KB
PersonalUserInfoServlet.java 3KB
AdminInfoModifyServlet.java 3KB
BookReturnCl.java 3KB
BooksQuery.java 3KB
BooksQueryServlet.java 3KB
PersonalUserInfoModifyServlet.java 2KB
UserLoginServlet.java 2KB
CHServlet.java 2KB
BorrowReturnServlet.java 2KB
UserRegisterServlet.java 2KB
UserRegisterCl.java 2KB
Return.java 2KB
biCL.java 2KB
ManagerLoginServlet.java 2KB
InsertServlet.java 2KB
BooksBorrowSevlet.java 2KB
UserBean.java 2KB
miCL.java 2KB
BookReturnServlet.java 2KB
PersonalUserPasswordModifyServlet.java 1KB
AdminInfoServlet.java 1KB
BookReturn.java 1KB
DLServlet.java 1KB
UserLoginCl.java 1KB
MICLServlet.java 1KB
bookbean.java 1KB
BICLServlet.java 1KB
ManagerLoginCl.java 1KB
UserModifyServlet.java 1KB
Reborrow.java 1KB
DeleteServlet.java 1016B
chCL.java 816B
AdminBean.java 751B
inCL.java 735B
managerbean.java 730B
deCL.java 673B
wel_bk.jpg 77KB
bg-login.jpg 66KB
Welcome.jpg 25KB
bg-register.jpg 16KB
jquery-3.2.1.min.js 85KB
userInfoModifyCheck.js 748B
.jsdtscope 522B
booksQuery.jsp 8KB
Register.jsp 7KB
Login.jsp 4KB
Admin.jsp 4KB
UserManagement.jsp 4KB
Main.jsp 4KB
Success.jsp 4KB
AdminLogin.jsp 3KB
bookInfo.jsp 3KB
UserModify.jsp 3KB
change.jsp 3KB
Error.jsp 3KB
PersonalUserInfoModify.jsp 3KB
BookReturn.jsp 3KB
PersonalUserInfo.jsp 3KB
managerInfo.jsp 3KB
AdminPassModify.jsp 2KB
insert.jsp 2KB
PersonalUserPasswordModify.jsp 2KB
共 119 条
- 1
- 2
资源评论
白话机器学习
- 粉丝: 9241
- 资源: 7681
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功