⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 userdaojdbcimpl.java

📁 各种数据保存:字符型
💻 JAVA
字号:
package cn.itcast.dao.impl;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.util.Date;

import cn.itcast.dao.DaoException;
import cn.itcast.dao.UserDao;
import cn.itcast.domain.User;
import cn.itcast.jdbc.JdbcUtils;

public class UserDaoJdbcImpl implements UserDao {

	public User findUserById(int id) {
		Connection conn = null;
		PreparedStatement ps = null;
		ResultSet rs = null;
		try {
			conn = JdbcUtils.getConnection();
			String sql = "select id, name, age, birth_day, account from user where id=?";
			ps = conn.prepareStatement(sql);
			ps.setInt(1, id);
			rs = ps.executeQuery();
			while (rs.next()) {
				return this.mappingUser(rs);
			}
		} catch (SQLException e) {
			throw new DaoException(e.getMessage(), e);
		} finally {
			try {
				JdbcUtils.realse(rs, ps, conn);
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		return null;
	}

	public User findUserByName(String name) {
		Connection conn = null;
		PreparedStatement ps = null;
		ResultSet rs = null;
		try {
			conn = JdbcUtils.getConnection();
			String sql = "select id, name, age, birth_day, account from user where name=?";
			ps = conn.prepareStatement(sql);
			ps.setString(1, name);
			rs = ps.executeQuery();
			while (rs.next()) {
				return this.mappingUser(rs);
			}
		} catch (SQLException e) {
			throw new DaoException(e.getMessage(), e);
		} finally {
			try {
				JdbcUtils.realse(rs, ps, conn);
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		return null;
	}

	private User mappingUser(ResultSet rs) throws SQLException {
		User user = new User();
		user.setId(rs.getInt("id"));
		user.setBirthDay(new Date(rs.getTimestamp("birth_day").getTime()));
		user.setAge(rs.getInt("age"));
		user.setName(rs.getString("name"));
		user.setAccount(rs.getLong("account"));
		return user;
	}

	public void remove(User user) {
		// TODO Auto-generated method stub

	}

	public void saveUser(User user) {
		Connection conn = null;
		PreparedStatement ps = null;
		ResultSet rs = null;
		try {
			conn = JdbcUtils.getConnection();
			String sql = "insert into user(name, age,birth_day, account) values(?,?,?,?)";
			ps = conn.prepareStatement(sql);
			ps.setString(1, user.getName());
			ps.setLong(2, user.getAge());
			ps.setTimestamp(3, new Timestamp(user.getBirthDay().getTime()));
			ps.setLong(4, user.getAccount());
			ps.executeUpdate();

			rs = ps.getGeneratedKeys();
			while (rs.next()) {
				user.setId(rs.getInt(1));
			}
		} catch (SQLException e) {
			throw new DaoException(e.getMessage(), e);
		} finally {
			try {
				JdbcUtils.realse(rs, ps, conn);
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}

	}

	public void updateUser(User user) {
		// TODO Auto-generated method stub

	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -