javaweb实训第四天上午——JDBC入门(3)

简介: 3.6 查询对象(返回一条数据)增,删,改已经完成,接下来完成查询,在完成查询之前,需要了解一个查询对象代码:

javaweb实训第四天上午——JDBC入门(2)https://developer.aliyun.com/article/1414843

3.6 查询对象(返回一条数据)

增,删,改已经完成,接下来完成查询,在完成查询之前,需要了解一个查询对象

代码:

20210602094242589.png

20210602094246864.png


20210602094251195.png

拿到结果集:statement.executeQuery(String sql) 结果集:ResultSet

移动ResultSet的光标(指到光标的每一行) resultSet.getXxx(int/String); 拿到这一行的这一列的数据

3.7 返回多条数据

20210602094308105.png

3.8小结

1.使用JDBC完成CRUD

2. 贾(加载注册驱动) Class.forName(“com.mysql.jdbc.Driver”)

 琏(获取连接) DriverManager.getConnection(url,username,password)

 欲(获取语句对象) Statement st = conn.createStatement();

 执(执行) st.executeUpdate/executeQuery(sql)

 事(释放资源) st.close()/rs.close()/conn.close()

4 .DAO层的实现-实现登录

4.1 DAO层介绍(Data Access Object)

接下来 完成DAO层,什么是DAO层?

以后做开发,我们会把我们代码分成很多层,比较经典的是三层(也可能5层,7层)

哪三层: 界面层 — 业务层 – 数据层(DAO层

DAO : 主要是用来做数据库的操作

  模块化,分工明确,解耦(责任分离)

4.2 Domain的认识

刚才已经说到要分层,各层之间相互调用,现在数据层 调用 数据库,需要传什么内容?

比如 要添加一个用户,怎么添加?

界面层:收集数据; name,password,age…等等 需要传递很多东西;

业务层:界面层收集之后,传到业务层;

一般会把传过去的东西封装成对象,这个对象叫做域对象(domain)

20210602094821249.png

4.3 完善DAO层结构

完善DAO层:

步骤:

分层的目的:解耦,方便维护,责任分离;

分层需要一个媒介来进行传输:它就是domain(域对象)

先创建一个domain包 ,在包里面创建相应的实体类

这个包: == cn.itsource.domain==

这里面写域对象(Student)


在domain包的同一级,建一个dao包,这个包里面写接口:

cn.itsource.dao

接口名称: IXxxDAO / IXxxDao


在dao这个包里面再建一个包: impl 包 cn.itsource.dao.impl

这个包里面实现dao包里面的接口,这个impl包在dao包里面一层

这个包类的名称:XxxDAOImpl/XxxDaoImpl

4.4 完成dao的crud

添加功能(create)

保存代码:

20210602095108381.png


测试保存代码

修改代码(update):

20210602095115905.png

删除代码:

20210602095119434.png

查询代码:

20210602095122643.png

查询多条数据:

20210602095127125.png

4.5小结

1.DAO层介绍

2.Domain认识

3.完成DAO层

4.完成DAO层CRUD操作

javaweb实训第四天上午——JDBC入门(4)https://developer.aliyun.com/article/1414845?spm=a2c6h.13148508.setting.44.6e1a4f0eQzpjQW

目录
相关文章
|
4天前
|
JSON NoSQL Java
Redis入门到通关之Java客户端SpringDataRedis(RedisTemplate)
Redis入门到通关之Java客户端SpringDataRedis(RedisTemplate)
35 0
|
2天前
|
算法 Java C++
刷题两个月,从入门到字节跳动offer丨GitHub标星16k+,美团Java面试题
刷题两个月,从入门到字节跳动offer丨GitHub标星16k+,美团Java面试题
|
3天前
|
算法 Java Python
保姆级Java入门练习教程,附代码讲解,小白零基础入门必备
保姆级Java入门练习教程,附代码讲解,小白零基础入门必备
|
4天前
|
SQL Java 数据库连接
Java一分钟之-JDBC:Java数据库连接基础
【5月更文挑战第14天】JDBC是Java与关系数据库交互的API,常见问题包括资源管理、SQL注入和性能优化。易错点涉及驱动加载、空指针异常和事务管理。避免这些问题的方法有使用try-with-resources自动关闭资源、预编译PreparedStatement以防止SQL注入,以及正确管理事务。示例代码展示了基本的JDBC连接和查询。在实际开发中,推荐使用ORM框架如Hibernate或JPA来简化数据库操作。
13 1
|
4天前
|
SQL Java 关系型数据库
零基础轻松入门Java数据库连接(JDBC)
零基础轻松入门Java数据库连接(JDBC)
13 0
|
4天前
|
存储 安全 算法
Java一分钟之-Java集合框架入门:List接口与ArrayList
【5月更文挑战第10天】本文介绍了Java集合框架中的`List`接口和`ArrayList`实现类。`List`是有序集合,支持元素重复并能按索引访问。核心方法包括添加、删除、获取和设置元素。`ArrayList`基于动态数组,提供高效随机访问和自动扩容,但非线程安全。文章讨论了三个常见问题:索引越界、遍历时修改集合和并发修改,并给出避免策略。通过示例代码展示了基本操作和安全遍历删除。理解并正确使用`List`和`ArrayList`能提升程序效率和稳定性。
11 0
|
4天前
|
SQL Java 数据库连接
JDBC Java标准库提供的一些api(类+方法) 统一各种数据库提供的api
JDBC Java标准库提供的一些api(类+方法) 统一各种数据库提供的api
12 0
|
4天前
|
Java API 开发工具
java与Android开发入门指南
java与Android开发入门指南
16 0
|
4天前
|
Java
Java一分钟之-类与对象:面向对象编程入门
【5月更文挑战第8天】本文为Java面向对象编程的入门指南,介绍了类与对象的基础概念、常见问题及规避策略。文章通过代码示例展示了如何定义类,包括访问修饰符的适当使用、构造器的设计以及方法的封装。同时,讨论了对象创建与使用时可能遇到的内存泄漏、空指针异常和数据不一致等问题,并提供了相应的解决建议。学习OOP需注重理论与实践相结合,不断编写和优化代码。
30 1
|
4天前
|
Java 编译器 对象存储
java一分钟之Java入门:认识JDK与JVM
【5月更文挑战第7天】本文介绍了Java编程的基础——JDK和JVM。JDK是包含编译器、运行时环境、类库等的开发工具包,而JVM是Java平台的核心,负责执行字节码并实现跨平台运行。常见问题包括版本不匹配、环境变量配置错误、内存溢出和线程死锁。解决办法包括选择合适JDK版本、正确配置环境变量、调整JVM内存参数和避免线程死锁。通过代码示例展示了JVM内存管理和基本Java程序结构,帮助初学者更好地理解JDK和JVM在Java编程中的作用。
22 0