7.11java jdbc学习

jdbc七步骤

1.加载驱动
2.创建连接
3.写sql
4.得到statement对象
5.执行sql得到结果集
6.处理结果集
7.关闭资源

对应到代码里

    public List<UserInfo> findAll() {
    ResultSet rs = null;
    PreparedStatement statement = null;
    Connection connection = null;
    List<UserInfo> list = new ArrayList<>();
    try {
        connection = util.connect.connecting();
        if (connection != null) {
            System.out.println("创建连接成功");
        }
        //3.写sql
        String sql = "select * from userinfo";
        //4.得到statement对象
        statement = connection.prepareStatement(sql);
        //5.执行sql得到结果集
        rs = statement.executeQuery();
        //6.处理解果集
         while (rs.next()) {
            UserInfo u = new UserInfo();
            u.setId(rs.getInt(1));
            u.setUsername(rs.getString(2));
            u.setPassword(rs.getString(3));
             list.add(u);
        }
    } catch (Exception e) {
        e.printStackTrace();
    } finally {
    //7.关闭资源
        util.connect.close(rs, statement, connection);
    }
    return list;
}

BEAN类

作用:
1、所有属性为private
2、提供默认构造方法
3、提供getter和setter
4、实现serializable接口
为实体类
1.构造方法
2.属性
3.getset
4.tostring
代码中的使用:

public class UserInfo {
    private int id;
    private String username;
    private String password;

public String getUsername() {
    return username;
}

public void setUsername(String username) {
    this.username = username;
}

public int getId() {
    return id;
}

public void setId(int id) {
    this.id = id;
}

public String getPassword() {
    return password;
}

public void setPassword(String password) {
    this.password = password;
}

@Override
public String toString() {
    return "User{" +
            "id=" + id +
            ", username='" + username + '\'' +
            ", password='" + password + '\'' +
            '}';
}

Dao类

简介:在计算机软件中,数据访问对象(data access object,DAO)是为某种类型的数据库或其他持久性机制提供一个抽象接口的对象。通过映射应用程序对持久层的调用,DAO提供一些特定的数据操作,而无需暴露数据库细节。这种隔离支持单一功能原则。它分离了应用程序需要访问哪些数据,就域特定对象和数据类型(DAO的公共接口),而言,这些需求可以用数据库管理系统(DBMS)、数据库模式等满足(DAO的实现)。
DAO 模式的优势就在于它实现了两次隔离
1、隔离了数据访问代码和业务逻辑代码。业务逻辑代码直接调用DAO方法即可,完全感觉不到数据库表的存在。分工明确,数据访问层代码变化不影响业务逻辑代码,这符合单一职能原则,降低了藕合性,提高了可复用性。
2、隔离了不同数据库实现。采用面向接口编程,如果底层数据库变化,如由 MySQL 变成 Oracle 只要增加 DAO 接口的新实现类即可,原有 MySQ 实现不用修改。这符合 “开-闭” 原则。该原则降低了代码的藕合性,提高了代码扩展性和系统的可移植性。

封装

将数据库操作封装到Dao中,信息封装到bean中
结构如下:在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值