JDBC 基础用法学习,2024年最新再不了解你就out啦

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
img

正文

先创建一个包,然后建立一个类

编辑代码

package cn.study.test;

import org.junit.Test;

public class TestJunit {

/**

  • @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

}

@Test

public void testJunit(){

System.out.println(“hello junit”);

}

}

右击 @Test 点击运行

修改代码

package cn.study.test;

import org.junit.After;

import org.junit.Before;

import org.junit.Test;

public class TestJunit {

/**

  • @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

}

@Test

public void testJunit(){

System.out.println(“hello junit”);

}

@Before

public void testBefore() {

System.out.println(“before!”);

}

@After

public void testAfter() {

System.out.println(“after!”);

}

}

JDBC开发步骤


1. 注册驱动

2. 获得链接

3. 获得语句执行者

4. 执行 sql 语句

5. 处理结果

6. 释放资源

API详解:注册驱动


代码:

class.forName(“com.mysql.jdbc.Driver”)

分析步骤1 :

JDBC规范定义驱动接口:java.sql.Driver

mysql 驱动包提供了实现类:com.mysql.jdbc.Driver

分析步骤2:

DriverManager工具类提供注册驱动的方法

方法的参数是 java.sql.Driver 所以我们可以通过如下语句进行注册

DriverManager.registerDriver(new com.mysql.jdbc.Driver());

以上代码不推荐使用,存在两方面不足

1. 硬编码,后期不易于拓展和维护

2. 驱动被注册两次

分析步骤3:

通常开发我们使用 Class.forName() 加载一个使用字符串描述的驱动类。

如果使用Class.forName() 将类加载到内存,该类的静态代码将自动执行。

通过查询 com.mysql.jdbc.Driver 源码,我们发现Driver类主动将自己进行注册。

API 详解:获取链接


代码:

Connection con=DriverManager.getConnection{“jdbc:mysql://localhost:3306/mydb1”,“root”,“123456”};

获取链接需要使用方法 DriverManager.getConnection(url , username , password)

URL 表示链接数据库的位置(网址)

user 表示用户名

password :表示数据库密码

jdbc:mysql://localhost:3306/mydb1

URL由三部分组成,每部分用逗号隔开

第一部分 jdbc 为固定的

第二部分是数据库名称

第三部分为数据库厂商制定:数据库服务地址ip、端口、数据库名称。

拓展参数:

jdbc:mysql://localhost:3306/mydb1?useUnicode=true&characterEncoding=UTF8

API 详解:获取语句执行


String sql = “insert into category(cid,cname) value ( ‘c107’ , ‘分类’ )”

Statemet 语句执行代码:

Statement stmt = con.createStatement();

执行sql语句:

执行  insert   update   delete 语句

int executeUpdate(string sql);

执行select语句

ResultSet executeQuery( string sql );

执行 select 语句返回 true ,执行其他语句返回 false

boolean execute(string sql);

如果返回true 需要使用 getResultSet() 获取查询结果。

如果返回 false 需要使用 getUpdateCount() 获取影响行数。

执行批处理:

addBatch(string sql);

clearBath();

executeBatch();

如果有参数需要在sqql语句中进行拼凑,存在sql注入问题。

API 详解:处理结果集


ResultSet 实际上就是一张二维表格,内部有一个行光标,光标默认位置在第一行上方,我们可以调用 rs 对象的 next() 方法把 行光标向下移动一行,当第一次调用 next() 的时候,行光标就到了第一行记录的位置,这时候就可以使用 resultSet 提供的 getXXX(int col)方法来获取指定的列数据了。

光标移动到第一行

rs.next();

获取第一行第一列数据

rs.getInt(1);

常用的方法有:

获取任意对象

object getObject(int col)

获取字符串

string getString(inr col)

获取整形

int getInt(int col) ;

获取双精度浮点数

double getDouble(int col);

API 详解:释放资源


与IO流一样,使用后的东西都需要关闭!关闭的顺序是先得到的后关闭,后得到的先关闭!

rs.close();

stmt.close();

con.close();

案例代码:

package cn.study.test;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Connection;

import java.sql.Statement;

import org.junit.Test;

/**

  • 测试sql注入问题

  • @author Administrator

*/

public class TestLogin {

@Test

public void testLogin() {

try {

login(“wjw”, “20”);

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

/**

  • 用户登录方法

最后

好了,这就是整理的前端从入门到放弃的学习笔记,还有很多没有整理到,我也算是边学边去整理,后续还会慢慢完善,这些相信够你学一阵子了。

做程序员,做前端工程师,真的是一个学习就会有回报的职业,不看出身高低,不看学历强弱,只要你的技术达到应有的水准,就能够得到对应的回报。

学习从来没有一蹴而就,都是持之以恒的,正所谓活到老学到老,真正懂得学习的人,才不会被这个时代的洪流所淘汰。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
testLogin() {

try {

login(“wjw”, “20”);

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

/**

  • 用户登录方法

最后

好了,这就是整理的前端从入门到放弃的学习笔记,还有很多没有整理到,我也算是边学边去整理,后续还会慢慢完善,这些相信够你学一阵子了。

做程序员,做前端工程师,真的是一个学习就会有回报的职业,不看出身高低,不看学历强弱,只要你的技术达到应有的水准,就能够得到对应的回报。

学习从来没有一蹴而就,都是持之以恒的,正所谓活到老学到老,真正懂得学习的人,才不会被这个时代的洪流所淘汰。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
[外链图片转存中…(img-UDtQX6wU-1713315140513)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 21
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值