📄 memberdaoimpl.java
字号:
package com.webcount.dao;
import com.webcount.bean.Member;
import com.webcount.database.*;
import java.sql.*;
public class MemberDAOImpl implements MemberDAO{
public Member validate(Member instance) { // 验证用户信息
String query = "select * from member where member_username = ? and member_password = ?";
// 取得连接池中的连接
Connection conn = DataConnection.getFreeConnection();
// 取得基于query的PreparedStatement
PreparedStatement pstmt = DataConnection.getPreparedStatement(conn,query);
ResultSet rs = null;
try{ // 设置pstmt的条件的值
pstmt.setString(1,instance.getMemberusername());
pstmt.setString(2,instance.getMemberpassword());
// 取得查询结果
rs = DataConnection.getResult(pstmt);
if(rs.next()){ // 用户信息存在,即验证成功
instance.setMemberid(rs.getLong("member_id"));
System.out.println("success!");
}else{ // 用户信息不存在,即验证失败
instance = null;
System.out.println("failure!");
}
}catch(Exception ex){
ex.printStackTrace();
}
// 返回用户信息
return instance;
}
// 将用户信息插入到数据库中
public synchronized Member insertMember(Member instance){
// 取得用户ID
long maxid = getMaxId();
String query = "insert into member(member_id,member_username,member_password) values(?,?,?)";
// 取得连接池中的连接
Connection conn = DataConnection.getFreeConnection();
// 取得基于query的PreparedStatement
PreparedStatement pstmt = DataConnection.getPreparedStatement(conn,query);
try{ // 设置pstmt的条件的值
pstmt.setLong(1,(maxid+1));
pstmt.setString(2,instance.getMemberusername());
pstmt.setString(3,instance.getMemberpassword());
if(DataConnection.execute(pstmt)){ // 插入成功
instance.setMemberid(maxid+1);
}else{ // 插入失败
instance = null;
}
}catch(Exception ex){
ex.printStackTrace();
}
// 返回用户信息
return instance;
}
private long getMaxId(){ // 取得用户ID
String query = "select max(member_id) as maxid from member";
long maxid = 0;
Connection conn = DataConnection.getFreeConnection();
Statement st = DataConnection.getStatement(conn);
ResultSet rs = DataConnection.getResult(st,query);
try{
if(rs.next()){
maxid = rs.getLong("maxid");
}
}catch(Exception ex){
ex.printStackTrace();
}
return maxid;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -