javaweb之DAO开发模式实现JDBCD的增删改查操作案例

DAO开发模式
Database Access Object 数据库访问对象

把对数据库进行的JDBC操作(增、删、改、查) 都放在一个类中,用不同的方法分别来完成增、删、改、查。

一张数据库表做一个类 例如 student表 ----> StudentDao StudentDaoImpl
数据库表----------------------实体类(JavaBean)
数据库中列 ------------------------------------------ 实体类的属性
数据库中的一条数据 ---------------------------- 实体类的一个对象
项目概述图:
在这里插入图片描述
数据库示意图:
在这里插入图片描述

一、导包

  1. 在工程中创建libs文件夹
  2. 将所需要的jar包粘贴到libs
  3. 然后右键该jar包build path–>add build path

二、所需类及文件
1、把字符串转日期的工具类DateUtil

package com.henu.util;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class DateUtil {
   
	private DateUtil() {
   

	}
	static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
	// 字符串转日期
	public static Date stringToDate(String str) {
   
		Date date = null;
		try {
   
			date = sdf.parse(str);
		} catch (ParseException e) {
   
			e.printStackTrace();
		}
		return date;
	}

	public static String dateToString(Date date) {
   
		return sdf.format(date);
	}

	public static java.util.Date stringToDate(java.util.Date huigui1) {
   
		return null;
	}

}

2、注册启动获取数据库连接的JDBCUtils工具类

package com.henu.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ResourceBundle;

public class JDBCUtils {
   
	private static final String driverClass;
	private static final String url;// 指的是数据库名称也就是说第三个'/'代表 'localhost:3306/'
	private static final String username;
	private static final String password;

	// 用static代码块是为了率先加载且只加载一次
	static {
   
		// 用ResourceBundle将db.properties传入
		ResourceBundle rb = ResourceBundle.getBundle("db");
		driverClass = rb.getString("driver_class");
		url = rb.getString("url");
		username = rb.getString("username");
		password = rb.getString("password");
		try {
   
			// 1.注册驱动
			Class.forName(driverClass);
		} catch (ClassNotFoundException e) {
   
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	// 2.获取连接
	public static Connection getConnnection() {
   
		try {
   
			// DriverManger借助 ServiceLoader 找到驱动 并注册
			return DriverManager.getConnection(url, username, password);
		} catch (SQLException e) {
   
			// TODO Auto-generated catch block
			e.printStackTrace();
			return null;
		}

	}

	// 3.关闭资源
	public static void closeAll(ResultSet rs, Statement st, Connection conn) {
   
		if (rs != null) {
   
			try {
   
				rs.close();
			} catch (SQLException e) {
   
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		if (st != null) {
   
			try {
   
				st.close();
			} catch (SQLException e) {
   
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		if (conn != null) {
   
			try {
   
				conn.close();
			} catch (
  • 0
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我来回答你的问题。 JDBC是Java Database Connectivity的缩写,Java数据库连接。它是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口(API)。下面我将介绍如何使用JDBC实现对数据的增删。 1. 加载数据库驱动 在使用JDBC之前,需要加载相应的数据库驱动。可以通过Class.forName()方法来加载驱动。例如加载MySQL数据库驱动: ``` Class.forName("com.mysql.jdbc.Driver"); ``` 2. 建立数据库连接 使用JDBC连接数据库需要指定数据库的URL、用户名和密码。例如: ``` String url = "jdbc:mysql://localhost:3306/test"; String user = "root"; String password = "root"; Connection conn = DriverManager.getConnection(url, user, password); ``` 3. 执行SQL语句 使用JDBC执行SQL语句需要使用Statement对象或PreparedStatement对象。Statement对象用于执行静态SQL语句,PreparedStatement对象用于执行动态SQL语句。例如: ``` Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("select * from user"); ``` 4. 处理结果集 执行SQL语句后,需要处理返回的结果集。可以使用ResultSet对象来处理结果集。例如: ``` while(rs.next()){ String name = rs.getString("name"); int age = rs.getInt("age"); System.out.println(name + " " + age); } ``` 5. 关闭资源 使用完JDBC连接后,需要关闭相关的资源。例如: ``` rs.close(); stmt.close(); conn.close(); ``` 以上就是使用JDBC实现对数据的增删的基本步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值