package com.chen.dao.impl;
import com.chen.dao.UserDao;
import com.chen.entity.*;
import com.chen.util.DButil;
import com.chen.util.Stringutil;
import java.lang.reflect.Field;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.LinkedList;
import java.util.List;
public class UserDaoImpl implements UserDao {
@Override
public User findByAccountAndPassword(String account, String password) throws SQLException {
String sql="select * from user where account=? and password=?";
Connection con = DButil.getCon();
PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setObject(1,account);
preparedStatement.setObject(2,password);
ResultSet resultSet = preparedStatement.executeQuery();
User user=new User();
while (resultSet.next()) {
user.setId(resultSet.getInt("id"));
user.setAccount(resultSet.getString("account"));
user.setPassword(resultSet.getString("password"));
user.setWages(resultSet.getDouble("wages"));
user.setNumber(resultSet.getString("number"));
user.setName(resultSet.getString("name"));
user.setDeptId(resultSet.getInt("dept_id"));
user.setRoleId(resultSet.getInt("role_id"));
user.setGender(resultSet.getInt("gender"));
user.setPhone(resultSet.getString("phone"));
user.setAddress(resultSet.getString("address"));
user.setIdCardNo(resultSet.getString("id_card_no"));
user.setNationalId(resultSet.getInt("national_id"));
user.setEducationId(resultSet.getInt("education_id"));
user.setInstitute(resultSet.getString("institute"));
user.setMajor(resultSet.getString("major"));
user.setProjectId(resultSet.getInt("project_id"));
}
DButil.getClose(con,preparedStatement);
resultSet.close();
return user;
}
@Override
public User findByAccountAndPasswordAndRoleId(String account, String password, Integer roleId) throws SQLException {
String sql="select * from user where account=? and password=? and role_id=? ";
Connection con = DButil.getCon();
PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setObject(1,account);
preparedStatement.setObject(2,password);
preparedStatement.setObject(3,roleId);
ResultSet resultSet = preparedStatement.executeQuery();
while (resultSet.next()) {
User user=new User();
user.setId(resultSet.getInt("id"));
user.setAccount(resultSet.getString("account"));
user.setPassword(resultSet.getString("password"));
user.setWages(resultSet.getDouble("wages"));
user.setNumber(resultSet.getString("number"));
user.setName(resultSet.getString("name"));
user.setDeptId(resultSet.getInt("dept_id"));
user.setRoleId(resultSet.getInt("role_id"));
user.setGender(resultSet.getInt("gender"));
user.setPhone(resultSet.getString("phone"));
user.setAddress(resultSet.getString("address"));
user.setIdCardNo(resultSet.getString("id_card_no"));
user.setNationalId(resultSet.getInt("national_id"));
user.setEducationId(resultSet.getInt("education_id"));
user.setInstitute(resultSet.getString("institute"));
user.setMajor(resultSet.getString("major"));
user.setProjectId(resultSet.getInt("project_id"));
return user;
}
DButil.getClose(con,preparedStatement);
resultSet.close();
return null;
}
@Override
public Boolean addOne(User user){
try {
StringBuilder sql=new StringBuilder("insert into user (");
Class clazz=user.getClass();
Field[] declaredFields = clazz.getDeclaredFields();
for (Field declaredField : declaredFields) {
declaredField.setAccessible(true);
String key = Stringutil.strToSql(declaredField.getName());
Object value = declaredField.get(user);
if (value!=null&&value!=""){
sql.append(key+",");
}
}
sql=sql.deleteCharAt(sql.length()-1);
sql.append(") values(");
for (Field declaredField : declaredFields) {
declaredField.setAccessible(true);
String key = declaredField.getName();
Object value = declaredField.get(user);
if (value!=null&&value!=""){
sql.append("'"+value+"',");
}
}
sql=sql.deleteCharAt(sql.length()-1);
sql.append(")");
System.out.println(sql);
Connection con = DButil.getCon();
PreparedStatement preparedStatement = con.prepareStatement(sql.toString());
int i = preparedStatement.executeUpdate();
DButil.getClose(con,preparedStatement);
return i==1;
}catch (Exception e){
// e.printStackTrace();
return false;
}
}
@Override
public Boolean deleteById(Integer id) throws SQLException {
String sql="delete from user where id=?";
Connection con = DButil.getCon();
PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setObject(1,id);
int i = preparedStatement.executeUpdate();
DButil.getClose(con,preparedStatement);
return i==1;
}
@Override
public User getById(Integer id) throws SQLException {
//String sql="select u.*,d.name as `dept_name`,p.name as `pro_name` from user u left join project p on p.id=u.project_id left join dept d on d.id=u.dept_id where u.id=?";
String sql="select u.*,d.name as `dept_name`,p.name as `pro_name`,n.name as `national_name`,e.name as `education_name` from user u left join project p on p.id=u.project_id left join dept d on d.id=u.dept_id left join national n on u.national_id=n.id left join education e on u.education_id=e.id where u.id=?";
Connection con = DButil.getCon();
PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setObject(1,id);
User user=new User();
Project project=new Project();
Dept dept=new Dept();
National national=new National();
Education education=new Education();
user.setProject(project);
user.setDept(dept);
user.setNational(national);
user.setEducation(education);
ResultSet resultSet = preparedStatement.executeQuery();
while (resultSet.next()) {
user.setId(resultSet.getInt("id"));
user.setImages(resultSet.getString("images"));
user.setAccount(resultSet.getString("account"));
user.setPassword(resultSet.getString("password"));
user.setWages(resultSet.getDouble("wages"));
user.setNumber(resultSet.getString("number"));
user.setName(resultSet.getString("name"));
user.setDeptId(resultSet.getInt("dept_id"));
user.setRoleId(resultSet.getInt("role_id"));
user.setGender(resultSet.getInt("gender"));
user.setPhone(resultSet.getString("phone"));
user.setAddress(resultSet.getString("address"));
user.setIdCardNo(resultSet.getString("id_card_no"));
user.setNationalId(resultSet.getInt("national_id"));
user.setEducationId(resultSet.getInt("education_id"));
user.setInstitute(resultSet.getString("institute"));
user.setMajor(resultSet.getStr
没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
收起资源包目录
开源的Java web员工管理系统 (569个子文件)
UserDaoImpl.class 18KB
UserDaoImpl.class 18KB
DeptScheduleDaoImpl.class 7KB
DeptScheduleDaoImpl.class 7KB
User.class 7KB
User.class 7KB
NewsDaoImpl.class 7KB
NewsDaoImpl.class 7KB
AttendanceDaoImpl.class 7KB
AttendanceDaoImpl.class 7KB
ProjectDaoImpl.class 7KB
ProjectDaoImpl.class 7KB
DeptDaoImpl.class 7KB
DeptDaoImpl.class 7KB
UserScheduleDaoImpl.class 7KB
UserScheduleDaoImpl.class 7KB
UpdateUser.class 6KB
UpdateUser.class 6KB
CreateUserServlet.class 6KB
CreateUserServlet.class 6KB
UserServiceImpl.class 5KB
UserServiceImpl.class 5KB
UpdateAttendance.class 4KB
UpdateAttendance.class 4KB
UpdateDeptSchedule.class 4KB
UpdateDeptSchedule.class 4KB
CreateAttendance.class 4KB
CreateAttendance.class 4KB
UpdateProject.class 3KB
UpdateProject.class 3KB
CreateDeptSchedule.class 3KB
CreateDeptSchedule.class 3KB
UpdateUserSchedule.class 3KB
UpdateUserSchedule.class 3KB
LoginServlet.class 3KB
LoginServlet.class 3KB
Attendance.class 3KB
Attendance.class 3KB
CreateUserSchedule.class 3KB
CreateUserSchedule.class 3KB
CreateNews.class 3KB
CreateNews.class 3KB
SearchUser.class 3KB
SearchUser.class 3KB
UpdateNews.class 3KB
UpdateNews.class 3KB
UpdateDept.class 3KB
UpdateDept.class 3KB
DeptSchedule.class 3KB
DeptSchedule.class 3KB
CreateProject.class 3KB
CreateProject.class 3KB
UserSchedule.class 3KB
UserSchedule.class 3KB
Page.class 3KB
Page.class 3KB
DeptServiceImpl.class 3KB
DeptServiceImpl.class 3KB
Project.class 3KB
Project.class 3KB
LoginErrorFilter.class 3KB
LoginErrorFilter.class 3KB
R.class 2KB
R.class 2KB
CreateDept.class 2KB
CreateDept.class 2KB
LoginFilter.class 2KB
LoginFilter.class 2KB
UpdateUserWages.class 2KB
UpdateUserWages.class 2KB
News.class 2KB
News.class 2KB
SearchDeptSchedule.class 2KB
SearchDeptSchedule.class 2KB
SearchDept.class 2KB
SearchDept.class 2KB
SearchUserSchedule.class 2KB
SearchUserSchedule.class 2KB
ProjectServiceImpl.class 2KB
ProjectServiceImpl.class 2KB
SearchAttendance.class 2KB
SearchAttendance.class 2KB
SearchProject.class 2KB
SearchProject.class 2KB
SearchUserWages.class 2KB
SearchUserWages.class 2KB
SearchUserDoc.class 2KB
SearchUserDoc.class 2KB
NewsServiceImpl.class 2KB
NewsServiceImpl.class 2KB
DeleteServlet.class 2KB
DeleteServlet.class 2KB
UserScheduleServiceImpl.class 2KB
UserScheduleServiceImpl.class 2KB
AttendanceServiceImpl.class 2KB
AttendanceServiceImpl.class 2KB
UserDao.class 2KB
DeleteDeptSchedule.class 2KB
UserDao.class 2KB
DeleteDeptSchedule.class 2KB
共 569 条
- 1
- 2
- 3
- 4
- 5
- 6
想踢球考研的java
- 粉丝: 21
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论5