|
|
|
|
@ -12,120 +12,173 @@ import java.util.ArrayList;
|
|
|
|
|
|
|
|
|
|
public class LoginDao implements CommonDao {
|
|
|
|
|
|
|
|
|
|
// 插入数据
|
|
|
|
|
@Override
|
|
|
|
|
public void insertData(Object o) throws SQLException {
|
|
|
|
|
|
|
|
|
|
// 将传入的对象转换为Login对象
|
|
|
|
|
Login login = (Login) o;
|
|
|
|
|
|
|
|
|
|
// 获取数据库连接
|
|
|
|
|
Connection conn = DBUtil.getConnection();
|
|
|
|
|
// 定义插入数据的SQL语句
|
|
|
|
|
String sql = "INSERT INTO login (loginName, loginPwd, loginNickName, loginAdmin) VALUE (?,?,?,?)";
|
|
|
|
|
// 创建PreparedStatement对象
|
|
|
|
|
PreparedStatement pstmt = conn.prepareStatement(sql);
|
|
|
|
|
// 设置SQL语句中的参数
|
|
|
|
|
pstmt.setString(1, login.getLoginName());
|
|
|
|
|
pstmt.setString(2, login.getLoginPwd());
|
|
|
|
|
pstmt.setString(3, login.getLoginNickName());
|
|
|
|
|
pstmt.setInt(4, login.getLoginAdmin());
|
|
|
|
|
|
|
|
|
|
// 执行SQL语句
|
|
|
|
|
pstmt.executeUpdate();
|
|
|
|
|
// 关闭PreparedStatement对象
|
|
|
|
|
pstmt.close();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 删除数据
|
|
|
|
|
@Override
|
|
|
|
|
public void deleteData(Object o) throws SQLException {
|
|
|
|
|
// 将传入的对象转换为Login对象
|
|
|
|
|
Login login = (Login) o;
|
|
|
|
|
|
|
|
|
|
// 获取数据库连接
|
|
|
|
|
Connection conn = DBUtil.getConnection();
|
|
|
|
|
|
|
|
|
|
// 定义删除数据的SQL语句
|
|
|
|
|
String sql = "DELETE FROM login WHERE loginId = ?";
|
|
|
|
|
// 创建PreparedStatement对象
|
|
|
|
|
PreparedStatement pstmt = conn.prepareStatement(sql);
|
|
|
|
|
// 设置SQL语句中的参数
|
|
|
|
|
pstmt.setInt(1, login.getLoginId());
|
|
|
|
|
|
|
|
|
|
// 执行SQL语句
|
|
|
|
|
pstmt.executeUpdate();
|
|
|
|
|
// 关闭PreparedStatement对象
|
|
|
|
|
pstmt.close();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 更新数据
|
|
|
|
|
@Override
|
|
|
|
|
public void updateData(Object o) throws SQLException {
|
|
|
|
|
// 将传入的对象转换为Login对象
|
|
|
|
|
Login login = (Login) o;
|
|
|
|
|
|
|
|
|
|
// 获取数据库连接
|
|
|
|
|
Connection conn = DBUtil.getConnection();
|
|
|
|
|
|
|
|
|
|
// 定义更新数据的SQL语句
|
|
|
|
|
String sql = "UPDATE login SET loginName = ? ,loginPwd = ?,loginNickName = ?,loginAdmin = ? WHERE loginId = ?";
|
|
|
|
|
// 创建PreparedStatement对象
|
|
|
|
|
PreparedStatement pstmt = conn.prepareStatement(sql);
|
|
|
|
|
// 设置SQL语句中的参数
|
|
|
|
|
pstmt.setString(1, login.getLoginName());
|
|
|
|
|
pstmt.setString(2, login.getLoginPwd());
|
|
|
|
|
pstmt.setString(3, login.getLoginNickName());
|
|
|
|
|
pstmt.setInt(4, login.getLoginAdmin());
|
|
|
|
|
pstmt.setInt(5, login.getLoginId());
|
|
|
|
|
|
|
|
|
|
// 执行SQL语句
|
|
|
|
|
pstmt.executeUpdate();
|
|
|
|
|
// 关闭PreparedStatement对象
|
|
|
|
|
pstmt.close();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 查询数据数量
|
|
|
|
|
@Override
|
|
|
|
|
public int queryDataNum() throws SQLException {
|
|
|
|
|
|
|
|
|
|
// 获取数据库连接
|
|
|
|
|
Connection conn = DBUtil.getConnection();
|
|
|
|
|
|
|
|
|
|
// 定义查询数据数量的SQL语句
|
|
|
|
|
String sql = "select count(*) from login;";
|
|
|
|
|
// 创建PreparedStatement对象
|
|
|
|
|
PreparedStatement pstmt = conn.prepareStatement(sql);
|
|
|
|
|
// 执行SQL语句,返回结果集
|
|
|
|
|
ResultSet rs = pstmt.executeQuery();
|
|
|
|
|
|
|
|
|
|
int num;
|
|
|
|
|
// 如果结果集中有数据,则获取数据数量
|
|
|
|
|
if (rs.next()) num = rs.getInt("count(*)");
|
|
|
|
|
else num = 0;
|
|
|
|
|
|
|
|
|
|
// 关闭结果集和PreparedStatement对象
|
|
|
|
|
rs.close();
|
|
|
|
|
pstmt.close();
|
|
|
|
|
|
|
|
|
|
// 返回数据数量
|
|
|
|
|
return num;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 查询数据
|
|
|
|
|
@Override
|
|
|
|
|
public ArrayList query(int start, int length) throws SQLException {
|
|
|
|
|
|
|
|
|
|
// 获取数据库连接
|
|
|
|
|
Connection conn = DBUtil.getConnection();
|
|
|
|
|
|
|
|
|
|
// 定义查询数据的SQL语句
|
|
|
|
|
String sql = "select * from login limit ?, ?;";
|
|
|
|
|
// 创建PreparedStatement对象
|
|
|
|
|
PreparedStatement pstmt = conn.prepareStatement(sql);
|
|
|
|
|
// 设置SQL语句中的参数
|
|
|
|
|
pstmt.setInt(1, start - 1);
|
|
|
|
|
pstmt.setInt(2, length);
|
|
|
|
|
// 执行SQL语句,返回结果集
|
|
|
|
|
ResultSet rs = pstmt.executeQuery();
|
|
|
|
|
|
|
|
|
|
// 创建ArrayList对象,用于存储查询结果
|
|
|
|
|
ArrayList<Login> list = new ArrayList<>();
|
|
|
|
|
Login login;
|
|
|
|
|
|
|
|
|
|
// 遍历结果集,将每条数据转换为Login对象,并添加到ArrayList中
|
|
|
|
|
while (rs.next()) {
|
|
|
|
|
login = new Login(rs.getInt(1), rs.getString(2),
|
|
|
|
|
rs.getString(3), rs.getString(4), rs.getInt(5));
|
|
|
|
|
list.add(login);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 关闭结果集和PreparedStatement对象
|
|
|
|
|
rs.close();
|
|
|
|
|
pstmt.close();
|
|
|
|
|
|
|
|
|
|
// 返回ArrayList对象
|
|
|
|
|
return list;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 根据条件查询数据
|
|
|
|
|
@Override
|
|
|
|
|
public Object query(Object o) throws SQLException {
|
|
|
|
|
|
|
|
|
|
// 将传入的对象转换为Login对象
|
|
|
|
|
Login login = (Login) o;
|
|
|
|
|
|
|
|
|
|
// 获取数据库连接
|
|
|
|
|
Connection conn = DBUtil.getConnection();
|
|
|
|
|
// 定义查询数据的SQL语句
|
|
|
|
|
String sql = "SELECT * FROM login WHERE loginName = ?";
|
|
|
|
|
// 创建PreparedStatement对象
|
|
|
|
|
PreparedStatement pstmt = conn.prepareStatement(sql);
|
|
|
|
|
// 设置SQL语句中的参数
|
|
|
|
|
pstmt.setString(1, login.getLoginName());
|
|
|
|
|
// 执行SQL语句,返回结果集
|
|
|
|
|
ResultSet rs = pstmt.executeQuery();
|
|
|
|
|
|
|
|
|
|
// 创建Login对象,用于存储查询结果
|
|
|
|
|
Login loginer = new Login();
|
|
|
|
|
// 如果结果集中有数据,则将数据转换为Login对象
|
|
|
|
|
if (rs.next()) {
|
|
|
|
|
loginer = new Login(rs.getInt(1), rs.getString(2),
|
|
|
|
|
rs.getString(3), rs.getString(4), rs.getInt(5));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 关闭结果集和PreparedStatement对象
|
|
|
|
|
rs.close();
|
|
|
|
|
pstmt.close();
|
|
|
|
|
|
|
|
|
|
// 返回Login对象
|
|
|
|
|
return loginer;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|