java连接mysql的步骤_JDBC连接MySQL操作步骤

news/2025/3/22 1:50:29

@description JDBC 查询数据库示例

*/

public class JDBCdemo1 {

public static void main(String[] args){

Connection conn = null;

Statement statement = null;

ResultSet resultSet = null;

//1.注册数据库驱动

try {

Class.forName("com.mysql.jdbc.Driver");

//加载一个类到内存中,该类中有一静态代码块,该代码块中有注册驱动的代码

//静态代码块伪代码如下:DriverManager.registerDriver( new Driver() )

//2.获取数据库连接

String url = "jdbc:mysql://localhost:3306/" +

"jt_db" +

"?characterEncoding=utf-8";

/**

* jdbc:mysql: 协议名

* localhost:3306 主机地址及端口

* jt_db 数据库名

* ?characterEncoding=utf-8 ?+参数

*/

String user = "root"; //数据库连接用户名

String passWord = "123456"; //数据库连接密码

conn = DriverManager.getConnection(url, user, passWord);

//3.获取传输器

statement = conn.createStatement();

/**

* Statement s = con.createStatement();

* PreparedStatement p = con.preparedStatement();

*

*PreparedStatement是Statement的子类

* 可以使用占位符,是预编译的,批处理比Statement效率高

*

* 例:

* String sql = "update user set password=? where username=?";

* preparedStatement = conn.prepareStatement(sql);

* //preparedStatement.setString(第N个问号,代表的变量);

* preparedStatement.setString(1,password);

* preparedStatement.setString(2,username);

* preparedStatement.executeUpdate();

*

*/

//4.执行sql语句,返回执行结果

String sql = "select * from account";

/**

* executeQuery(); 用于产生单个结果集的语句,被用来执行 SELECT 语句,返回值是一个ResultSet结果集对象,其中包括sql查询的结果

* executeUpdate(); 用于执行 INSERT、UPDATE 或 DELETE 语句以及 SQL DDL(数据定义语言)语句,返回一个int值,记录受影响记录行数

*/

resultSet = statement.executeQuery(sql);

//5.处理结果

/**

* ResultSet 结果集对象

* ResultSet 是执行查询类的sql语句后返回的结果集对象 其中包括sql查询的结果

* a.遍历数据行的方法

* next() – 使指向数据行的索引向下移动一行

* b.获取数据的方法

* getInt(int columnIndex)

* getInt(String columnLable)

* getString(int columnIndex)

* getString(String columnLable)

* getDouble(int columnIndex)

* getDouble(String columnLable)

* getObject(int columnIndex)

* getObject(String columnLable)

*/

while (resultSet.next()) {

int id = resultSet.getInt("id");

String name = resultSet.getString("name");

double money = resultSet.getDouble("money");

System.out.println(id + ":" + name + ":" + money);

}

}catch (Exception e){

e.printStackTrace();

}finally {

//6.释放资源

//越晚获取越先释放!!

//最好将释放资源代码放在finally里

if(resultSet!=null) {

try {

resultSet.close();

} catch (SQLException e) {

e.printStackTrace();

} finally {

resultSet = null;

}

}

if(statement!=null) {

try {

statement.close();

} catch (SQLException e) {

e.printStackTrace();

} finally {

statement = null;

}

}

if(conn!=null) {

try {

conn.close();

} catch (SQLException e) {

e.printStackTrace();

} finally {

conn = null;

}

}

}

}

}


https://dhexx.cn/news/show-996251.html

相关文章

携程一次Redis迁移容器后Slowlog“异常”分析

容器化对于Redis自动化运维效率、资源利用率方面都有巨大提升,携程在对Redis在容器上性能和稳定性进行充分验证后,启动了生产Redis迁移容器化的项目。其中第一批次两台宿主机,第二批次五台宿主机。本次“异常”是第二批次迁移过程中发现的&am…

打破牢笼,展望更高层次的世界

http://www.cnblogs.com/xdesigner/p/6552745.html ************************************************* 打破牢笼,展望更高层次的世界--------------------------------------------------------------笔者袁永福是一个十多年的老程序猿出来创业多年,期…

order by在mysql中位置_获取MySQL'IN'子句中按(ORDER BY)位置排序的返回记录集

要返回记录集顺序,您需要使用FIND_IN_SET()。让我们首先创建一个表-mysql> create table recordSetOrderDemo-> (-> EmployeeId int,-> EmployeeName varchar(30)-> );以下是使用insert命令在表中插入一些记录的查询-mysql> insert into recordSe…

MaxCompute访问TableStore(OTS) 数据

原文链接:http://click.aliyun.com/m/13884/ 免费开通大数据服务:https://www.aliyun.com/product/odps0. 前言MaxCompute作为阿里云大数据平台的核心计算组件,承担了集团内外大部分的分布式计算需求。而MaxCompute SQL作为分布式数据处理的主…

一文弄懂“分布式锁”

关注我们,下载更多资源来源:向南lwww.cnblogs.com/xiangnanl/p/9833965.html多线程情况下对共享资源的操作需要加锁,避免数据被写乱,在分布式系统中,这个问题也是存在的,此时就需要一个分布式锁服务。常见的…

access怎么连接mysql数据库_如何在Java中连接上Access数据库呢?

Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了Microsoft Jet Database Engine和图形用户界面两项特点,是Microsoft Office的系统程序之一。java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。那么我们是如何将这两者联系起来的呢&a…

Linux的10个最危险的命令

Linux命令行佷有用、很高效,也很有趣,但有时候也很危险,尤其是在你不确定你自己在正在做什么时候。这篇文章将会向你介绍十条命令,但你最好不要尝试着去使用。当然,以下命令通常都是在root权限下才能将愚蠢发挥到无可救…

【感恩,回馈,展望】2018 ACOUG 年会盛大来袭!

2018 ACOUG 年会紧张忙碌中要迎来 ACOUG 一年一度的嘉年华年会。作为 2018年最后一场技术分享,我们将对社区过去一年的工作进行回顾和梳理,并且将展望和公布来年的行动计划,同时感恩和回馈一直支持社区工作的技术爱好者、核心会员、嘉宾和合作…

触发器阻止更新表_编程创建一个更新一行而不是所有行的触发器的正确方法是什么?...

触发器是在插入,更新或删除数据时更新同一张表或另一张表的好方法。但是,它们很难正确实现,因为您必须小心确保触发器能够实现预期的效果,并且不会产生意外的副作用。因此,值得花费一些时间来熟悉CREATE TRIGGER命令的…

MySQL 数据库“十宗罪”(十大经典错误案例)

关注我们,获得更多资源来源:张甦blog.51cto.com/sumongodb/1949426各位技术老铁们,福利来了!今天给大家说说《数据库中十大经典错误案例》老张我在刚开始学习数据库的时候,没少走弯路。经常会遇到各种稀奇古怪的 error…