📄 defaultuserdaoimpl.java
字号:
package examonline.service.impl;
import examonline.service.UserDAO;
import examonline.beans.User;
import examonline.exceptions.UserAreadyExistException;
import examonline.service.*;
import java.sql.*;
import java.util.*;
public class DefaultUserDAOImpl
implements UserDAO {
DBManager dm = ManagerFactory.getDBManager();
private String findAllSql = "select * from userinfo";
private String findNameLikeSql = "select * from userinfo where realname like ?";
private String findByIdSql = "select * from userinfo where id =?";
private String updateSql =
"update userinfo set realname = ?, phone =?,address=?,email=? where id=?";
private String deleteSql = "delete from userinfo where id =?";
private String saveSql =
"insert into userinfo(id,realname,phone,address,email) values(?,?,?,?,?)";
public DefaultUserDAOImpl() {
}
/**
* saveUser
*
* @param user User
* @return int
* @throws UserAreadyExistException
* @todo Implement this examonline.models.UserManager method
*/
public int saveUser(User user) throws UserAreadyExistException {
Connection conn = dm.openConnection();
int result = 0;
try {
User tempuser =findUserById(user.getId());
if(tempuser!=null) throw new UserAreadyExistException();
PreparedStatement stat = conn.prepareStatement(saveSql);
stat.setString(1, user.getId());
stat.setString(2, user.getName());
stat.setString(3, user.getTelephone());
stat.setString(4, user.getAddress());
stat.setString(5, user.getEmail());
result = stat.executeUpdate();
}
catch (SQLException ex) {
ex.printStackTrace();
}
finally {
try {
if (conn != null)
conn.close();
}
catch (SQLException ex1) {
}
}
return result;
}
/**
* deleteUserById
*
* @param id String
* @return int
* @todo Implement this examonline.models.UserManager method
*/
public int deleteUserById(String id) {
Connection conn = dm.openConnection();
int result = 0;
try {
PreparedStatement stat = conn.prepareStatement(deleteSql);
stat.setString(1, id);
result = stat.executeUpdate();
conn.commit();
}
catch (SQLException ex) {
ex.printStackTrace();
}
finally {
try {
if (conn != null)
conn.close();
}
catch (SQLException ex1) {
}
}
return result;
}
/**
* findUserById
*
* @param id String
* @return User
* @todo Implement this examonline.models.UserManager method
*/
public User findUserById(String id) {
Connection conn = dm.openConnection();
User user = null;
try {
PreparedStatement stat = conn.prepareStatement(findByIdSql);
stat.setString(1, id);
ResultSet rs = stat.executeQuery();
if (rs.next()) {
user = new User();
user.setId(rs.getString("id"));
user.setAddress(rs.getString("address"));
user.setEmail(rs.getString("email"));
user.setTelephone(rs.getString("phone"));
user.setName(rs.getString("realname"));
}
}
catch (Exception ex) {
ex.printStackTrace();
}
finally {
try {
if (conn != null)
conn.close();
}
catch (SQLException ex1) {
}
}
return user;
}
/**
* findAllUsers
*
* @return List
* @todo Implement this examonline.models.UserManager method
*/
public List findAllUsers() {
List list = new ArrayList();
Connection conn = dm.openConnection();
User user = null;
try {
Statement stat = conn.createStatement();
ResultSet rs = stat.executeQuery(findAllSql);
while (rs.next()) {
user = new User();
user.setId(rs.getString("id"));
user.setAddress(rs.getString("address"));
user.setEmail(rs.getString("email"));
user.setTelephone(rs.getString("phone"));
user.setName(rs.getString("realname"));
list.add(user);
}
}
catch (SQLException ex) {
ex.printStackTrace();
}
finally {
try {
if (conn != null)
conn.close();
}
catch (SQLException ex1) {
}
}
return list;
}
/**
* updateUser
*
* @param user User
* @return int
* @todo Implement this examonline.models.UserManager method
*/
public int updateUser(User user) {
Connection conn = dm.openConnection();
int result = 0;
try {
PreparedStatement stat = conn.prepareStatement(updateSql);
stat.setString(1, user.getName());
stat.setString(2, user.getTelephone());
stat.setString(3, user.getAddress());
stat.setString(4, user.getEmail());
stat.setString(5, user.getId());
result = stat.executeUpdate();
}
catch (SQLException ex) {
ex.printStackTrace();
}
finally {
try {
if (conn != null)
conn.close();
}
catch (SQLException ex1) {
}
}
return result;
}
public boolean validateUser(String name, String password) {
Connection conn = dm.openConnection();
try {
String sql = "select * from admin where username ='" + name + "' and password ='" +
password + "'";
Statement stat = conn.createStatement();
ResultSet result = stat.executeQuery(sql);
if (result.next())
return true;
}
catch (Exception e) {
e.printStackTrace();
}
finally {
try {
if (conn != null)
conn.close();
}
catch (SQLException ex1) {
}
}
return false;
}
public List findUserByName(String namelike)
{
List list = new ArrayList();
Connection conn = dm.openConnection();
User user = null;
try {
PreparedStatement stat = conn.prepareStatement(findNameLikeSql);
stat.setString(1,"%"+namelike+"%");
ResultSet rs = stat.executeQuery();
while (rs.next()) {
user = new User();
user.setId(rs.getString("id"));
user.setAddress(rs.getString("address"));
user.setEmail(rs.getString("email"));
user.setTelephone(rs.getString("phone"));
user.setName(rs.getString("realname"));
list.add(user);
}
}
catch (SQLException ex) {
ex.printStackTrace();
}
finally {
try {
if (conn != null)
conn.close();
}
catch (SQLException ex1) {
}
}
return list;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -