package jdbc.domain.impl;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import jdbc.domain.User;
import jdbc.domain.dao.DataException;
import jdbc.domain.dao.UserDao;
import test.jdbc.JdbcUtil;
public class UserDaoImpl implements UserDao {
public void addUser(User user) {
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
String sql = "insert into user1(ID, NAME, BIRTHDAY, MONEY) values(?, ?, ?, ?)";
try {
conn = JdbcUtil.getConnection();
ps = conn.prepareStatement(sql);
ps.setInt(1, user.getId());
ps.setString(2, user.getName());
ps.setDate(3, new java.sql.Date(user.getBirthday().getTime()));
ps.setInt(4, user.getMoney());
ps.executeUpdate();
} catch (SQLException e) {
throw new DataException(e.getMessage(), e);
} finally {
JdbcUtil.free(rs, ps, conn);
}
}
public void deleteUser(User user) {
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
String sql = "delete from user1 where id = ?";
try {
conn = JdbcUtil.getConnection();
ps = conn.prepareStatement(sql);
ps.setInt(1, user.getId());
ps.executeUpdate();
} catch (SQLException e) {
throw new DataException(e.getMessage(), e);
} finally {
JdbcUtil.free(rs, ps, conn);
}
}
public User findUser(String loginName, String password) {
String sql = "select id,name,birthday,money from user1 where name=?";
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
User user = null;
try {
conn = JdbcUtil.getConnection();
ps = conn.prepareStatement(sql);
ps.setString(1, loginName);
rs = ps.executeQuery();
while (rs.next()) {
user = mappingUser(rs);
}
} catch (SQLException e) {
throw new DataException(e.getMessage(), e);
} finally {
JdbcUtil.free(rs, ps, conn);
}
return user;
}
public User getUser(int id) {
String sql = "select id,name,birthday,money from user1 where id=?";
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
User user = null;
try {
conn = JdbcUtil.getConnection();
ps = conn.prepareStatement(sql);
ps.setInt(1, id);
rs = ps.executeQuery();
while (rs.next()) {
user = mappingUser(rs);
}
} catch (SQLException e) {
throw new DataException(e.getMessage(), e);
} finally {
JdbcUtil.free(rs, ps, conn);
}
return user;
}
private User mappingUser(ResultSet rs) throws SQLException {
User user;
user = new User();
user.setId(rs.getInt("id"));
user.setName(rs.getString("name"));
user.setBirthday(rs.getDate("birthday"));
user.setMoney(rs.getInt("money"));
return user;
}
public void updateUser(User user) {
String sql = "update user1 set NAME = ?, BIRTHDAY=? WHERE ID=?";
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
try {
conn = JdbcUtil.getConnection();
ps = conn.prepareStatement(sql);
ps.setString(1, user.getName());
ps.setDate(2, new java.sql.Date(user.getBirthday().getTime()));
ps.setInt(3, user.getId());
ps.executeUpdate();
} catch (SQLException e) {
throw new DataException(e.getMessage(), e);
} finally {
JdbcUtil.free(rs, ps, conn);
}
}
}
分享到:
相关推荐
UserDaoImpl.java
Java之JDBC连接数据库实现增删改查(2018 使用Dao层实现 完美封装解决硬编码问题) ...工具类 JDBCUtil.java(抽取...实现接口类 UserDaoImpl.java(实现增删改查功能) 测试类 UserDaoTest.java(做测试增删改查功能使用)
实现类 UserDaoImpl.java(实现增删改查功能 使用预编译对象PreparedStatement 安全、便捷不需要我们去拼接字符串,特别是字段很多的时候 同时效率比Statement更高 ) 测试类 UserDaoTest.java(做测试增删改查功能...
2.数据库设计: 3.项目搭建 二. 登录注销实现 1.登录 2.注销 3.登录拦截 二.密码修改的实现 1.编写dao层用户修改密码的接口UserDao 2.编写UserDao接口实现类UserDaoImpl 3.编写业务层接口 4.编写业务层接口实现类 5....
实现类 UserDaoImpl.java(实现增删改查功能 使用预编译对象PreparedStatement 安全、便捷不需要我们去拼接字符串,特别是字段很多的时候 同时效率比Statement更高 ) 测试类 UserDaoTest.java(做测试增删改查功能...
public class UserDaoImpl implements UserDao { Connection conn=null; public List getUserList() throws Exception { conn = DataSourceUtil.getConnection(); String sql = "select * from user"; ...
UserDaoImpl.class
资源内容:idea项目,数据库sql导出文件,课程设计书word 导入idea后,记得jdbc配置文件设置数据库用户名密码 实现功能如下 第一章 系统概述 1.1 项目研究的背景 1.3项目研究的目标与要求 第二章 第二章 需求分析 ...
Java之JDBC连接数据库实现增删改查(2018 使用Dao层实现 完美封装解决硬编码问题) 配置...user表中的id,username,password) 接口类 IUserDao.java(制定增删改查业务) 实现接口类 UserDaoImpl.java(实现增删改查功
13.7.6 用户DAO实现类UserDAOImpl.java 13.7.7 调查题目DAO实现类SurveyDAOImpl.java 13.7.8 调查项目DAO实现类SurveyOptionDAOImpl.java 13.7.9 调查子项目DAO实现类SurveyChildDAOImpl.java 13.7.10 调查结果DAO...
13.7.6 用户DAO实现类UserDAOImpl.java 13.7.7 调查题目DAO实现类SurveyDAOImpl.java 13.7.8 调查项目DAO实现类SurveyOptionDAOImpl.java 13.7.9 调查子项目DAO实现类SurveyChildDAOImpl.java 13.7.10 调查结果DAO...
13.7.6 用户DAO实现类UserDAOImpl.java 13.7.7 调查题目DAO实现类SurveyDAOImpl.java 13.7.8 调查项目DAO实现类SurveyOptionDAOImpl.java 13.7.9 调查子项目DAO实现类SurveyChildDAOImpl.java 13.7.10 调查结果DAO...
UserDao userDao=new UserDaoImpl(); userService.setUserDao(userDao); request.setCharacterEncoding("utf-8"); int userId=Integer.parseInt(request.getParameter("userId")); String userName = ...
13.7.6 用户DAO实现类UserDAOImpl.java 13.7.7 调查题目DAO实现类SurveyDAOImpl.java 13.7.8 调查项目DAO实现类SurveyOptionDAOImpl.java 13.7.9 调查子项目DAO实现类SurveyChildDAOImpl.java 13.7.10 调查结果DAO...
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 3.0//... <param name="class" value="com.aftvc.dao.UserDaoImpl"> <convert match="com.aftvc.bean.User" converter="bean"> </dwr>
<br>public class UserDaoImpl implements UserDao { <br> public User queryForSignOn(String username) { User user = queryUser(username); if(user.getLocked()) throw new LockException...
Java之JDBC连接数据库实现增删改查(2018 使用Dao层实现) 实体类:User.java 接口类:IUserDao.java 实现接口类:UserDaoImpl.java 使用Junit4测试增删改查类:UserDaoTest.java
梁胜彬等编著的《java web应用开发与实践》结合作者多年的教学与软件开发经验,依据教学大纲,面向技术发展方向,选取主流的java web开发技术和开发工具,内容涵盖了jsp基础、jdbc、setvlet、filter、listener、mvc...
<bean id="iUserDao" class="com.lun.dao.impl.UserDaoImpl"> <!--Service --> <bean id="iUserService" class="com.lun.service.impl.UserServiceImpl"> <!--WebService接口--> ...