关闭

JDBC连接数据库

44人阅读 评论(0) 收藏 举报
JDBC能够完成下列三件事:
           与一个数据库建立连接(connection)。
           向数据库发送SQL语句(statement)。

           处理数据库返回的结果(resultset)。





/**
	 * 数据库连接
	 * @author lixiyu
	 */
	public class ConnectDB {
		/**
		 * 获取数据库连接
		 * @return Connection对象
		 */
		public static Connection getConnection(){
			Connection conn = null;
			try {
				// 加载驱动
				Class.forName("com.mysql.jdbc.Driver");
				// 数据库连接url
				String url = "jdbc:mysql://127.0.0.1:3306/test";
				// 获取数据库连接
				conn = DriverManager.getConnection(url, "root", "123456");
			} catch (Exception e) {
				e.printStackTrace();
			}
			return conn;
		}
		/**
		 * 关闭数据库连接
		 * @param conn Connection对象
		 */
		public static void closeConnection(Connection conn){
			// 判断conn是否为空
			if(conn != null){
				try {
					conn.close();	// 关闭数据库连接
				} catch (SQLException e) {
					e.printStackTrace();
				}
			}
		}
	}



/**
	 * 添加用户
	 * @param user 用户对象
	 */
	public void saveUser(User user){
		// 获取数据库连接Connection对象
		Connection conn = ConnectDB.getConnection();
		// 插入用户注册信息的SQL语句
		String sql = "insert into tb_user(username,password,sex,tel,photo,email) values(?,?,?,?,?,?)";
		try {
			// 获取PreparedStatement对象
			PreparedStatement ps = conn.prepareStatement(sql);
			// 对SQL语句的占位符参数进行动态赋值
			ps.setString(1, user.getUsername());
			ps.setString(2, user.getPassword());
			ps.setString(3, user.getSex());
			ps.setString(4, user.getTel());
			ps.setString(5, user.getPhoto());
			ps.setString(6, user.getEmail());
			// 执行更新操作
			ps.executeUpdate();
			// 释放此 PreparedStatement 对象的数据库和 JDBC 资源
			ps.close();
		} catch (Exception e) {
			e.printStackTrace();
		}finally{
			// 关闭数据库连接
			ConnectDB.closeConnection(conn);
		}
	}


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:5055次
    • 积分:410
    • 等级:
    • 排名:千里之外
    • 原创:36篇
    • 转载:14篇
    • 译文:0篇
    • 评论:0条