MySQL数据库的使用流程,代码解释+Hibernate连接数据库
数据库的使用流程:
1.注册驱动;
2.用DriverManager.getConnection方法获得连接对象con;
A方法:
3.用连接对象的createStatement()方法,获得可以执行sql语句的对象stmt;
4.stmt执行查询(查询语句);
B方法(推荐):
3.用连接对象的prepareStatement方法,获得带参数(查询语句)的预处理对象pstmt;
4.pstmt执行查询,并将结果集赋予ResultSet对象;
public class DbTest{
public static void main(String[] args) {
/**
* 数据库的使用:
* 1.注册驱动;
* 2.用DriverManager.getConnection方法获得连接对象con;
* A方法:
* 3.用连接对象的createStatement()方法,获得可以执行sql语句的对象stmt;
* 4.stmt执行查询(查询语句);
* B方法(推荐):
* 3.用连接对象的prepareStatement方法,获得带参数(查询语句)的预处理对象pstmt;
* 4.pstmt执行查询,并将结果集赋予ResultSet对象;
*/
try {
Class.forName("com.mysql.jdbc.Driver"); //注册驱动
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/book","root","root123");
//获得连接对象
//使用statement方法处理sql语句的执行,与 PreparedStatement方法稍有不同。
Statement stmt=con.createStatement(); //获得可以执行sql语句的对象
ResultSet rs=stmt.executeQuery("select * from bookinfo where id=1"); //执行查询,并将结果集赋予ResultSet对象
/**推荐以下方法:
PreparedStatement pstmt=con.prepareStatement("select * from bookinfo where id=1");//获得预处理对象
ResultSet rs=pstmt.executeQuery(); //执行查询,并将结果集赋予ResultSet对象
*/
while(rs.next())
{int id=rs.getInt(1);
System.out.println(rs.getString(2)+" "+rs.getString(3)+" "+rs.getString(4));
}
} catch (ClassNotFoundException e) { //捕获驱动类无法找到异常
e.printStackTrace();
} catch (SQLException e) { //捕获SQL异常
e.printStackTrace();
}
}
}
附件地址:连接数据库[图书管理系统]
2.Hibernate连接数据库,最精简系统
public class StudentTest {
public static void main(String[] args) {
Student s = new Student();
s.setId(3);
s.setName("zhangwu");
s.setAge(10); Configuration cfg=new Configuration();
SessionFactory sf= cfg.configure().buildSessionFactory();
Session session=sf.openSession();
session.beginTransaction();
session.save(s);
session.getTransaction().commit();
session.close();
sf.close();
}
}
public class TeacherTest {
public static void main(String[] args) {
Teacher t = new Teacher();
t.setId(1);
t.setName("t1");
t.setTitle("middle"); SessionFactory sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory();
Session session = sessionFactory.getCurrentSession();
session.beginTransaction();
session.save(t);
session.getTransaction().commit();
}
}
附件地址:连接数据库Hibernate
MySQL数据库的使用流程,代码解释+Hibernate连接数据库的更多相关文章
- 【C#】【MySQL】C#连接MySQL数据库(一)代码
C#连接MySQL数据库 准备工作 1.环境安装 安装MySQL For Visual Studio<<点击进入官网下载 第一个要下载安装,第二个下载后将MySQL.data添加到Visu ...
- Java连接MySQL数据库及简单操作代码
1.Java连接MySQL数据库 Java连接MySql需要下载JDBC驱动MySQL-connector-java-5.0.5.zip(举例,现有新版本).然后将其解压缩到任一目录.我是解压到D盘, ...
- Java连接MySQL数据库——含步骤和代码
工具:eclipse MySQL5.6 MySQL连接驱动:mysql-connector-java-5.1.27.jar 加载驱动: 1. 在工程目录中创建lib文件夹,将下载好的JDBC放到该文件 ...
- MySQL数据库时区问题导致java程序无法连接数据库
转载自https://blog.csdn.net/man_zuo/article/details/81027934 先把报错信息贴上, The server time zone value '???ú ...
- mysql数据库之工作流程
MySQL架构总共四层,在上图中以虚线作为划分. 首先,最上层的服务并不是MySQL独有的,大多数给予网络的客户端/服务器的工具或者服务都有类似的架构.比如:连接处理.授权认证.安全等. 第二层的架构 ...
- MYSQL数据库重点:流程控制语句
1.BEGIN ... END复合语句:包含多个语句.statement_list 代表一个或多个语句的列表.statement_list之内每个语句都必须用分号(:)来结尾. [begin_labe ...
- JDBC连接MySQL数据库及演示样例
JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识 JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...
- JDBC连接MySQL数据库及示例
JDBC是Sun公司制定的一个可以用Java语言连接数据库的技术. 一.JDBC基础知识 JDBC(Java Data Base Connectivity,java数据库连接)是一 ...
- PHP 和 AJAX MySQL 数据库实例
HTML 表单 <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...
随机推荐
- eas之获取不同类型的组织视图
OrgViewF7 orgF7=new OrgViewF7(this);orgF7.setCurrentCUID(company.getId().toString());orgF7.setMultiS ...
- 【剑指Offer】36、两个链表的第一个公共结点
题目描述: 输入两个链表,找出它们的第一个公共结点. 解题思路: 本题首先可以很直观的想到蛮力法,即对链表1(假设长度为m)的每一个结点,遍历链表2(假设长度为n),找有没有与其相同的 ...
- vue-router 懒加载
懒加载:也叫延迟加载,即在需要的时候进行加载,按需加载. 那vue 为什么需要懒加载呢? 使用 vue-cli构建的项目,在默认情况下,执行 npm run build 会将所有的 js代码打包为一 ...
- [Ynoi2015]盼君勿忘
题目大意: 给定一个序列,每次查询一个区间\([l,r]\)中所有子序列分别去重后的和\(\bmod p\)(每次询问模数不同). 解题思路: 在太阳西斜的这个世界里,置身天上之森.等这场战争结束之后 ...
- Apache2.4更改默认根目录并配置虚拟域名
软件环境: 1.virtualbox中安装Ubuntu 16.04-server 2.window7下安装Xshell5 以上安装好后, 1.设置virtualbox网络为桥接网卡,启动Ubuntu. ...
- composer 安装教程
https://getcomposer.org/download/ 邓士鹏 1.先检查php.ini是否开启ssl ;extension=php_openssl.dll 2. php -r &qu ...
- css sprites拼合
一.什么是css sprites css sprites直译过来就是CSS精灵.通常被解释为“CSS图像拼合”或“CSS贴图定位”.就是把网页中一些背景图片整合拼合成一张图片中,再利用DIV CSS的 ...
- Set Time, Date Timezone in Linux from Command Line or Gnome | Use ntp
https://www.garron.me/en/linux/set-time-date-timezone-ntp-linux-shell-gnome-command-line.html Set ti ...
- 【ACM】hdu_zs1_1001_水仙花数_201307271504
水仙花数 Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other)Total Submissio ...
- 第三篇:SpringBoot - 数据库结构版本管理与迁移
SpringBoot支持了两种数据库结构版本管理与迁移,一个是flyway,一个是liquibase.其本身也支持sql script,在初始化数据源之后执行指定的脚本,本章是基于 Liquibase ...