mysql 驱动包 mysql-connect-java
mysql的驱动包 mysql-connect-java
- 内部封装了jdbc:
- jdbc(java database connectivity):本身是由一组接口组成 , 可以使得Java编译来访问各种数据库
- 无需自己实现接口,这些接口的实现类由第三方数据库厂商实现
jdbc的核心
接口或类 | 作用 |
---|---|
DriverManager类 | 创建数据库的连接 |
Connection 接口 | 创建一个连接对象 |
Statement 接口 | 代表一条发送给服务器的sql语句 |
ResultSet接口 | 代表从服务器返回的查询结果集 |
- jdbc四个参数
- 用户名
- 密码
- 驱动类的全名 : com.mysql.jdbc.Driver
- 连接字符串的url : mysql8.0以前 jdbc:mysql://真实ip:3306/database_name mysql8.0以后:jdbc:mysql://真实ip:3306/database_name?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=true
DriverManager 类 ,Connection接口 ,Statement接口
DriverManager类
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;
/**
运行这一段要求:
1.导入对应数据库版本的mysql-connector-java 包
2.url要对应数据库版本的书写
**/
public class Demo01Jdbc {public static void main(String[] args) throws SQLException {//mysql8.0以后使用的urlString url = "jdbc:mysql://localhost:3306/database_name?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=true";Connection connection = DriverManager.getConnection(url, "root", "root");System.out.println(connection);//DriverManager内部静态方法
// public static Connection getConnection(String url, java.util.Properties info)
// public static Connection getConnection(String url,String user, String password)
// public static Connection getConnection(String url)
//properties方式连接
//之所以可以使用properties是因为在DriverManager.getConnection()中也是创建properties对象
//只这里的properties对象通过setProperties()重新设置的键值对元素
//而getConnection()中设置好了键元素,只要求用户传入值即可Properties properties = new Properties();properties.setProperty("user","root");properties.setProperty("password","root");Connection connection1 = DriverManager.getConnection(url, properties);System.out.println(connection1);}
}
- 为了切合java思想可以将封装为:
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;public class JDBCLink {//连接本地jdbc:mysql://localhost:3306/database_name?... 可以省略为jdbc:mysql:///database_name?...private static final String url = "jdbc:mysql:///database_name?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=true";private static final String user = "root";private static final String password = "root";public static Connection connection;public static Connection getConnection() {return connection;}/**开始连接**/public static void startLink(){try {connection = DriverManager.getConnection(url, user, password);System.out.println(connection);} catch (SQLException throwables) {throwables.printStackTrace();}}/**结束释放资源**/public static void end(){try {connection.close();} catch (SQLException throwables) {throwables.printStackTrace();}}
}
Statement接口
接口中的方法 | 描述 |
---|---|
boolean execute(String sql) | 执行任意sql语句,如果返回一个resultSet对象,则表示true,如果返回更新数或不存在任何结果,则为false |
int executeUpdate(String sql) | 用于执行增删改,返回受影响的行数 |
ResultSet executeQuery(String sql) | 用于执行查询操作,查询到的结果集 |
创建表格:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;public class Demo2DDL {public static void main(String[] args) throws SQLException {String sql = "create table stu(id int primary key auto_increment,name varchar(20) not null,sex boolean,birthday date)";JDBCLink.startLink();Connection connection = JDBCLink.getConnection();Statement statement = connection.createStatement();statement.execute(sql);statement.close();JDBCLink.end();System.out.println("创建表成功");}
}
插入数据:
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class Demo02Insert {public static void main(String[] args) throws SQLException {JDBCLink.startLink();Connection connection = JDBCLink.getConnection();Statement statement = connection.createStatement();//更新和删除同样在这里操作int row = statement.executeUpdate("insert into stu (name,sex,birthday) values ('张三',1,'1999-2-10')," +"('李四',1,'1999-2-10'),('王五',1,'1999-2-10'),('赵六',1,'1999-2-10')");System.out.println(row);statement.close();JDBCLink.end();}
}
对应stu表的实体类:
import java.util.Date;
public class Stu {private int id;private String name;private boolean sex;private Date birthday;public Stu() {}public Stu(int id, String name, boolean sex, Date birthday) {this.id = id;this.name = name;this.sex = sex;this.birthday = birthday;}public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public boolean isSex() {return sex;}public void setSex(boolean sex) {this.sex = sex;}public Date getBirthday() {return birthday;}public void setBirthday(Date birthday) {this.birthday = birthday;}@Overridepublic String toString() {return "Stu{" +"id=" + id +", name='" + name + '\'' +", sex=" + sex +", birthday=" + birthday +'}';}
}
查询:
import com.pojo.Stu;import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.LinkedList;public class Demo03Select {public static void main(String[] args) throws SQLException {JDBCLink.startLink();Connection connection = JDBCLink.getConnection();Statement statement = connection.createStatement();ResultSet resultSet = statement.executeQuery("select * from stu");LinkedList<Stu> stus = new LinkedList<>();Stu stu = new Stu();while (resultSet.next()){stu.setId(resultSet.getInt("id"));stu.setName(resultSet.getString("name"));stu.setSex(resultSet.getBoolean("sex"));stu.setBirthday(resultSet.getDate("birthday"));stus.add(stu);}for (Stu stus1 : stus) {System.out.println(stus1);}statement.close();JDBCLink.end();}
}
mysql 驱动包 mysql-connect-java相关推荐
- java jdbc(mysql)驱动源码分析,JAVA JDBC(MySQL)驱动源码分析(四)
connect方法是java.sql.Driver接口中定义的方法,如果连接的数据库不同,那么为不同的数据库编写JDBC驱动将变得很灵活,实现Driver接口即可.连接数据库时首先得装载JDBC驱动, ...
- Java中使用mysql驱动连接mysql以及mysql的安装
好久不见,随着Java课程的推进小编其实也在不断的学习之中,同时也遇到很多问题,下面就由小编为大伙们详细的说一下Java中使用mysql驱动连接mysql数据库以及mysql的安装以及使用数据库连接池 ...
- 引入MySQL驱动包进行JDBC编程
文章目录 1.什么是JDBC 2.创建JDBC项目的步骤-MySQL版本 1.什么是JDBC 每个数据库都会提供一组API来支持程序员实现自己客户端,自己根据需求来完成一些具体的增删查改的功能.但数据 ...
- 下载MySQL驱动包,并导进idea
操作MySQL就需要下载Mysq 驱动包 Mysql驱动包可以去"中央仓库"下载: 打开"中央仓库",可能会等待+验证是否为人机: 进行搜索,找到[MySQL ...
- 关于javaweb连接mysql数据库mysql驱动包存放路径的问题
首先,先看看别人怎么解释的:https://www.cnblogs.com/guoxh/p/6550234.html 初学JAVA,很多都不懂,开始听老师说导入数据库驱动包的时候是: 右键项目 -&g ...
- eclipse中导入mysql 驱动包 jar包
鼠标选中项目名→右键→新建→文件夹(文件夹名称:lib)→将下载好的mysql驱动包粘贴到lib文件夹中→鼠标选中lib文件夹下的mysql驱动包→右键→构建路径→添加至构建路径. 完成以上操作后会发 ...
- mysql 驱动包 bin 的意思_mysql连接数据库,用下面代码,为什么找不到驱动呢?? lib下是mysql-connector-java-5.1.15-bin.jar...
//你的头文件中有什32313133353236313431303231363533e59b9ee7ad9431333433626435么我不知道,我在调试的是下面4行import java.sql. ...
- jdbc连接mysql驱动包_jdbc连接数据库驱动包
FineReport如何用JDBC连接阿里云ADS数据库 在使用FineReport连接阿里云的ADS(AnalyticDB)数据库,很多时候在测试连接时就失败了.此时,该如何连接ADS数据库呢? 我 ...
- 在eclipse上连接mysql数据库时mysql驱动包的路径问题
今天在学习使用eclipse连接mysql数据库时,发现下载的mysql-connector-java-8.0.20.jar在测试的过程中无法连接数据库,这个问题我觉得主要是jar存放的路径问题,于是 ...
- spoon mysql驱动包下载_spoon(kettle)基本配置(连接Mysql和Oracle)
1.下载spoon包和驱动 可以去spoon官网下载需要的spoon版本 我所使用的spoon包,包括spoon7.1.Mysql驱动和Oracle驱动,链接:https://pan.baidu.co ...
最新文章
- 《强化学习周刊》第35期:强化学习在智能交通中的最新应用
- Spring Boot 数据库连接池入门
- 为什么我不信任通配符,以及为什么我们仍然需要通配符
- AndroidStudio_开发工具的设置_快捷键设置_编辑器设置---Android原生开发工作笔记72
- 西门子S7-1200的PID应用(恒温热水器)
- 自动采集小说程序源码
- Rhadoop的安装
- cad等比例缩放快捷键_终于领会CAD缩放(放大与缩小)快捷键
- ORA-01045 :user 用户名 lacks create session privilege; logon denied
- 测试apk-异常管控NetTraffic攻击者开发
- 计算机二级oracle,关于计算机考试
- Vue3中watch和watchEffect监听的用法
- 基于Linux+ARM的远程视频监控--系列开题
- android 蓝牙无法连接,无法通过蓝牙连接
- 易用CAD看图软件怎么进行切换建筑图纸的三维导航模式?
- DDD 兴起的原因以及与微服务的关系
- Android Studio NKD开发之 FFmpeg库的引入--简单播放器(主要验证是否正确引入ffmpeg库)
- 微信公众号之微信支付(V3版)jsp页面jsapi统一下单调启支付(java版)
- python 绘图类_关于创建自定义绘图对象-python中的类,有很好的教程吗? - python...
- 在CodeBlocks中完美使用WTL进行开发