当前位置: 首页 > wzjs >正文

哪里买到纯净网站模板怎样在网上推广自己的产品

哪里买到纯净网站模板,怎样在网上推广自己的产品,哪个网站可以做效果图赚钱,wordpress 百秀主题文章目录 基本流程注册驱动的两种方法DriverManagerDriverManager 的核心作用核心原理自动注册驱动的机制关键方法 示例代码: 连接Mysql数据库StatementPreparedStatement JDBC全称Java DataBase Connectivity。 定义: JDBC 是 Java 语言中用于连接和执行 SQL 操作的标准接口。…

文章目录

    • 基本流程
    • 注册驱动的两种方法
    • DriverManager
      • DriverManager 的核心作用
      • 核心原理
      • 自动注册驱动的机制
      • 关键方法
    • 示例代码: 连接Mysql数据库
      • Statement
      • PreparedStatement

JDBC全称Java DataBase Connectivity。

定义: JDBC 是 Java 语言中用于连接和执行 SQL 操作的标准接口。

功能: 提供统一的方式访问关系型数据库(如 MySQL、Oracle、PostgreSQL 等)。

核心包: java.sql 和 javax.sql。

基本流程

  1. 加载并注册驱动
  2. 建立数据库连接
  3. 创建 Statement 对象
  4. 执行sql语句
  5. 处理结果集 (ResultSet)
  6. 释放资源 (直接close)

注册驱动的两种方法

以mysql为例

第一种:

DriverManager.registerDriver(new com.mysql.cj.jdbc.Driver());
  • 手动创建一个驱动实例,并显式注册到 DriverManager
  • DriverManager 会将这个驱动添加到它的驱动列表中,以便后续用 getConnection() 建立数据库连接。

第二种(推荐)

Class.forName("com.mysql.cj.jdbc.Driver")
  • 利用 Java 的反射机制加载这个类,并执行它的静态代码块
  • com.mysql.cj.jdbc.Driver 的静态代码块中已经调用了
DriverManager.registerDriver(new Driver());
所以自动完成了驱动注册。  

DriverManager

DriverManager 是 Java JDBC(Java Database Connectivity)API 的核心类之一,它负责管理数据库驱动并协调应用程序与数据库之间的连接。

DriverManager 的核心作用

功能说明
驱动注册接受驱动类注册(DriverManager.registerDriver()
驱动管理内部维护一个已注册驱动的列表
获取连接通过 getConnection() 方法,找到能处理特定 JDBC URL 的驱动并返回连接

核心原理

驱动注册机制

  • JDBC 驱动类实现了 java.sql.Driver 接口
  • 驱动类的静态代码块中通常会调用:
DriverManager.registerDriver(new Driver());

这就把该驱动对象注册到 DriverManager 的内部驱动列表中。

  • 也可以手动注册:
DriverManager.registerDriver(new com.mysql.cj.jdbc.Driver());

驱动列表

  • DriverManager 内部维护了一个 List<Driver>,用于存储所有注册的 JDBC 驱动
  • 这个列表是线程安全的(使用了同步机制)

获取连接

getConnection() 的调用

Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db", "user", "pass");

执行流程如下:

    1. 遍历内部注册的驱动列表
    2. 每个驱动调用 acceptsURL(url) 判断是否支持这个 URL
    3. 找到支持的驱动后,调用它的 connect() 方法返回一个 Connection 对象
    4. 如果没有任何驱动支持这个 URL,会抛出 SQLException

自动注册驱动的机制

从 JDBC 4.0 开始(Java 6 起),支持SPI 自动注册机制

  • 驱动 JAR 包中包含 META-INF/services/java.sql.Driver 文件
  • 文件内容为驱动的全限定类名,如:com.mysql.cj.jdbc.Driver
  • 当类加载器加载驱动 jar 时,JDK 会自动加载并注册驱动类,无需显式写 Class.forName(...)

所以可以直接写:

Connection conn = DriverManager.getConnection(...);

关键方法

方法说明
getConnection(String url, String user, String password)根据 URL、用户名、密码获取数据库连接
getDrivers()获取当前已注册的所有驱动
registerDriver(Driver driver)手动注册驱动(通常不需要直接调用)
deregisterDriver(Driver driver)从注册列表中移除驱动
getDrivers()获取所有已注册的驱动实例
setLogWriter(PrintWriter)设置日志输出流
setLoginTimeout(int seconds)设置连接超时时间

示例代码: 连接Mysql数据库

package JDBC;import java.sql.*;public class demo1 {public static void main(String[] args) {String url="jdbc:mysql://localhost:3307/test";String user="root";String password="root";try{//1.加载驱动Class.forName("com.mysql.cj.jdbc.Driver");//2.建立连接Connection conn= DriverManager.getConnection(url,user,password);//3.创建StatementStatement stmt = conn.createStatement();//4.执行sql语句ResultSet rs = stmt.executeQuery("select * from users");//5.处理结果集while(rs.next()){String username = rs.getString("user");//列名的方式String pass = rs.getString(2);//列下标的方式System.out.println("username:"+username+" password:"+pass);}//6.关闭资源rs.close();stmt.close();conn.close();}catch (Exception e){e.printStackTrace();System.out.println(e.getMessage());}}
}

在这里插入图片描述

Statement

Statement sql语句的主要操作函数有三个

executeQuery() //执行select查询语句
executrupdate() //可以执行insert,update,delect,CREATE 之类的
execute() //执行任意语句

PreparedStatement

PreparedStatement其sql语句是在其获取命令执行对象时就以及写入了预编译语句。其要进行sql执行只要对其参数进行传入即可

PreparedStatement pstmt = conn.prepareStatement("select * from users where user=?");
pstmt.setString(1,"xpw");
ResultSet rs2 = pstmt.executeQuery();
rs2.next();
System.out.println("预编译查询\t用户名:"+rs2.getString("user")+" 密码:"+rs2.getString("password"));//预编译查询	用户名:xpw 密码:123

需要注意的是所得到的ResultSet类的实例,其初始的索引是不在第一行的,我们想获取内容需要先使用next使得索引内移

http://www.dtcms.com/wzjs/40823.html

相关文章:

  • 企业网站建设pptseo引擎优化是做什么的
  • 学校网站建设策划怎么做网站教程视频
  • cms的意思宁波专业seo外包
  • 网站建设与管理量化考细则济南网站优化排名推广
  • 杭州网站seo公司免费建网站最新视频教程
  • 做网站字体格式用锐利吗产品营销
  • 怎么做二次元网站源码北京seo做排名
  • 网站多大够用电商seo名词解释
  • 网站产品二级分类推广软件排行榜前十名
  • 网站备案有哪些资料seo网站诊断分析报告
  • 做网站公司怎么找盐城seo营销
  • 在中筹网站上做众筹seo营销外包公司
  • 网站制作公司转型数据扬州百度seo
  • 外国做挂的网站是多少百度商家怎么入驻
  • 做网站赚广告费多么网络营销的四种形式
  • 沧州做网站价格汕头网站制作设计
  • 行业网站制作企业关键词优化专业公司
  • 手机网站logo关键词优化如何
  • 做的网站怎么发网上合肥网站建设公司
  • 自己可以进行网站建设吗移动营销
  • 网站建设后期修改景区营销案例100例
  • 小工厂如何接外贸订单武汉seo首页优化技巧
  • 有哪些推广的网站网络营销的八大职能
  • 南京做网站需要多少钱网站交换链接的常见形式
  • 中国城市建设网南京市网站seo整站优化
  • 做网站还是做游戏北京seo学校
  • 网站建设都需要什么文案百度总部投诉电话
  • 合肥市网站建设公司网络营销包括
  • 情公司做的网站文件外链生成网站
  • 设计一套网站多少钱经典软文案例100例