zoukankan      html  css  js  c++  java
  • 【小白日记】JavaEE当中 JDBC通过Dao层实现增删改查 CRUD

    什么是DAO

    Data Access Object 数据访问对象

    DAO层存在的意义

    主要用于封装一些关于 项目当中对数据库访问的接口 实现分层开发,便于维护

    DAO层与DAO的实现类

    DAO层当中封装的接口 需要拿到DAO的实现类当中进行实现 @OVERRIDE

    建立事例项目

    目录结构

    代码整理

    UserDao.java DAO类 接口类

    package com.sky.dao;
    
    /**
     * 定义操作数据库的方法
     * @author WeiHaoLee
     *
     */
    
    public interface UserDao {
    
    	/**
    	 *查询所有 
    	 *
    	 */
    	void findAll();
    }
    
    

    UserDaoImpl.java DAO 的实现类

    package com.sky.dao.impl;
    
    import java.sql.Connection;
    import java.sql.ResultSet;
    import java.sql.Statement;
    
    import com.sky.dao.UserDao;
    import com.sky.util.JDBCUtill;
    
    public class UserDaoImpl implements UserDao {
    
    	@Override
    	public void findAll() {
    		Connection conn = null;
    		Statement st = null;
    		ResultSet rs = null;
    		//可以书写模板代码
    		try {
    			//获取连接对象
    			conn = JDBCUtill.getConn();
    			st = conn.createStatement();
    			String sql = "select * from t_user";
    			rs = st.executeQuery(sql);
    			
    			while(rs.next()) {
    				String username = rs.getString("username");
    				String password = rs.getString("password");
    			
    				System.out.println(username + "   " + password);
    			}
    		} catch (Exception e) {
    			e.printStackTrace();
    		}finally {
    			JDBCUtill.release(conn, st, rs);
    		}
    		
    		
    	}
    
    }
    
    

    TestUserDaoImpl.java junit单元测试类

    package com.sky.test;
    
    import org.junit.Test;
    
    import com.sky.dao.UserDao;
    import com.sky.dao.impl.UserDaoImpl;
    
    public class TestUserDaoImpl {
    
    	@Test
    	public void testFindAll() {
    		
    		UserDao dao = new UserDaoImpl(); //多态
    		dao.findAll();
    	}
    }
    
    

    jdbc.properties properties测试类

    driverClass=com.mysql.jdbc.Driver
    url=jdbc:mysql://localhost/user
    name=root
    password=
    
  • 相关阅读:
    VBA基础四:数据库链接(WPS2019)
    VBA基础三:循环(DO...LOOP,)
    随机多人红包
    概率抽奖
    七步轻松实现大数据库表的数据转储
    SQL Server中的行列倒置技巧
    把对应表的字段跨表赋值
    sql内日期格式化输出
    事务的用法
    女孩,你为什么不沉住气奋斗
  • 原文地址:https://www.cnblogs.com/WeiHaoLee/p/10823378.html
Copyright © 2011-2022 走看看