📄 opersqldaoimpl.java
字号:
package unicom.dao;
import unicom.bean.Operator;
import unicom.util.*;
import java.sql.*;
/**
* @author xiaogang
* 日期:Apr 16, 2008
* 功能:实现接口IOperatorDAO,封装具体的业务操作
* 优点:降低耦合,容易控制
* 缺点:
* 建议:<1>最好把sql语句写全,容易维护
* <2>尽量用PreparedStatement
*/
public class OperSqlDaoImpl implements IOperatorDao {
public boolean addOperator(Operator oper) {
//具体实现与数据库的访问,增加管理员
boolean flag = false;
String name = oper.getName();
String pwd = oper.getPwd();
String isAdmin = oper.getIsAdmin();
String sql = "insert into toperator values(null,'" + name + "','" + pwd
+ "','" + isAdmin + "')";
//调用isExist(TOperator oper)判断被添加的管理员是否在数据库中存在
if (isExist(oper)) {
return flag;
} else {
Connection conn = DBUtil.getConn();
Statement stmt = DBUtil.getStatement(conn);
DBUtil.executeUpdate(stmt, sql);
flag = true;
return flag;
}
}
public boolean checkOperator(Operator oper) {
// 具体实现与数据库的访问,验证是否为合法的管理员
boolean flag = false;
String name = oper.getName();
String pwd = oper.getPwd();
String sql = "select * from toperator where name = '" + name
+ "' and pwd = '" + pwd + "'";
int index = 0;
Connection conn = DBUtil.getConn();
Statement stmt = DBUtil.getStatement(conn);
ResultSet rs = DBUtil.getResultSet(stmt, sql);
try {
while (rs.next()) {
index++;
}
if (index != 0) {
flag = true;
}
} catch (SQLException e) {
System.out.println(e);
} finally {
//释放数据库资源
DBUtil.close(rs);
DBUtil.close(stmt);
DBUtil.close(conn);
}
return flag;
}
//判断是否已经存在数据库管理员
public boolean isExist(Operator oper) {
boolean flag = false;
int index = 0;
String name = oper.getName();
String pwd = oper.getPwd();
String isAdmin = oper.getIsAdmin();
String sql = "select * from toperator where name = '" + name + "'";
Connection conn = DBUtil.getConn();
Statement stmt = DBUtil.getStatement(conn);
ResultSet rs = DBUtil.getResultSet(stmt, sql);
try {
while (rs.next()) {
index++;
}
if (index != 0) {
flag = true;
}
} catch (SQLException e) {
System.out.println(e);
} finally {
//释放数据库资源
DBUtil.close(rs);
DBUtil.close(stmt);
DBUtil.close(conn);
}
return flag;
}
//验证该操作用户是否具有管理员权限
public boolean isAdmin(Operator oper) {
String name = oper.getName();
String pwd = oper.getPwd();
boolean flag = false;
String sql = "select isAdmin from Toperator where name = '" + name + "' and pwd = '" + pwd + "'";
String temp = "";
Connection conn = DBUtil.getConn();
Statement stmt = DBUtil.getStatement(conn);
ResultSet rs = DBUtil.getResultSet(stmt, sql);
try {
if(rs.next())
{
temp = rs.getString(1);
}
if(temp.equals("Y"))
flag = true;
else
flag = false;
} catch (SQLException e) {
e.printStackTrace();
flag = false;
}finally{
//释放资源
DBUtil.close(conn);
DBUtil.close(stmt);
DBUtil.close(rs);
}
return flag;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -