-
概念 :
Java数据库连接,Java语言操作数据库
-
本质 :
官方(sun公司)定义的操作所有关系型数据库的规则(接口)。各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。
public class JdbcDemo {
public static void main(String[]args) {
Connection conn=null;
Statement stmt=null;
PreparedStatement pstm=null;
ResultSet rs=null;
try {
//1.导入驱动jar包
//2.注册驱动
//DriverManager.registerDriver(new com.mysql.cj.jdbc.Driver());
Class.forName(“com.mysql.cj.jdbc.Driver”);
//3.获取数据库连接对象
conn=DriverManager.getConnection(
“jdbc:mysql://localhost:3306/mydb?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf-8”,
“root”,
“123456”);
//4.使用Statement执行操作
// //4.1定义SQL语句
// String sql=“select * from student”;
// //4.2获取SQL的对象
// stmt=conn.createStatement();
// //4.3执行SQL
// rs=stmt.executeQuery(sql);
//4.使用PreparedStatement执行操作
//4.1获取SQL的对象
pstm =conn.prepareStatement(“select * from student”);
//4.2执行SQL,得到结果
rs=pstm.executeQuery();
//5.处理结果
while(rs.next()){
System.out.print(rs.getString(“name”)+" ");
}
}catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
try {
//6.释放资源
if(rs!=null)rs.close();
if(stmt!=null)stmt.close();
if(pstm!=null)stmt.close();
if(conn!=null)conn.close();
}catch(Exception e) {
e.printStackTrace();
}
}
}
}
Output:
张三 李四 王五 马六
1. DriverManager:驱动管理对象
功能:
- 注册驱动:
告诉程序该使用哪一个注册驱动jar包
static void registerDriver(Driver driver)
:注册与给定的驱动程序 DriverManager
写代码时使用:Class.forName("com.mysql.cj.jdbc.Driver");
在com.mysql.cj.jdbc.Driver类中存在静态代码块。
static {
try {
java.sql.DriverManager.registerDriver(new Driver());
} catch (SQLException E) {
throw new RuntimeException(“Can’t register driver!”);
}
}
- 获取数据库连接:
方法:static Connection getConnection(String url, String user, String password)
参数:
url:指定连接的路径
(如果连接的是本机mysql服务器,且默认端口是3306,则url可以简写为:jdbc:mysql:///数据库名称)
user:用户名
password:密码
2. Connection:数据库连接对象
功能:
- 获取执行sql 的对象
Statement createStatement()
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
Ending
Tip:由于文章篇幅有限制,下面还有20个关于MySQL的问题,我都复盘整理成一份pdf文档了,后面的内容我就把剩下的问题的目录展示给大家看一下
如果觉得有帮助不妨【转发+点赞+关注】支持我,后续会为大家带来更多的技术类文章以及学习类文章!(阿里对MySQL底层实现以及索引实现问的很多)
吃透后这份pdf,你同样可以跟面试官侃侃而谈MySQL。其实像阿里p7岗位的需求也没那么难(但也不简单),扎实的Java基础+无短板知识面+对某几个开源技术有深度学习+阅读过源码+算法刷题,这一套下来p7岗差不多没什么问题,还是希望大家都能拿到高薪offer吧。
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
像阿里p7岗位的需求也没那么难(但也不简单),扎实的Java基础+无短板知识面+对某几个开源技术有深度学习+阅读过源码+算法刷题,这一套下来p7岗差不多没什么问题,还是希望大家都能拿到高薪offer吧。
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!