数据库的使用流程:
 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连接数据库的更多相关文章

  1. 【C#】【MySQL】C#连接MySQL数据库(一)代码

    C#连接MySQL数据库 准备工作 1.环境安装 安装MySQL For Visual Studio<<点击进入官网下载 第一个要下载安装,第二个下载后将MySQL.data添加到Visu ...

  2. Java连接MySQL数据库及简单操作代码

    1.Java连接MySQL数据库 Java连接MySql需要下载JDBC驱动MySQL-connector-java-5.0.5.zip(举例,现有新版本).然后将其解压缩到任一目录.我是解压到D盘, ...

  3. Java连接MySQL数据库——含步骤和代码

    工具:eclipse MySQL5.6 MySQL连接驱动:mysql-connector-java-5.1.27.jar 加载驱动: 1. 在工程目录中创建lib文件夹,将下载好的JDBC放到该文件 ...

  4. MySQL数据库时区问题导致java程序无法连接数据库

    转载自https://blog.csdn.net/man_zuo/article/details/81027934 先把报错信息贴上, The server time zone value '???ú ...

  5. mysql数据库之工作流程

    MySQL架构总共四层,在上图中以虚线作为划分. 首先,最上层的服务并不是MySQL独有的,大多数给予网络的客户端/服务器的工具或者服务都有类似的架构.比如:连接处理.授权认证.安全等. 第二层的架构 ...

  6. MYSQL数据库重点:流程控制语句

    1.BEGIN ... END复合语句:包含多个语句.statement_list 代表一个或多个语句的列表.statement_list之内每个语句都必须用分号(:)来结尾. [begin_labe ...

  7. JDBC连接MySQL数据库及演示样例

    JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识         JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...

  8. JDBC连接MySQL数据库及示例

      JDBC是Sun公司制定的一个可以用Java语言连接数据库的技术. 一.JDBC基础知识         JDBC(Java Data Base Connectivity,java数据库连接)是一 ...

  9. PHP 和 AJAX MySQL 数据库实例

    HTML 表单 <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...

随机推荐

  1. swiper 滑动获取当前第几页下标

  2. CSS学习笔记之样式声明

    目录 1.背景 2.文本 3.字体 4.列表 5.表格 6.轮廓 在这篇文章中你能看到有关于 CSS 样式设置的常用属性,文章的目录如下: 1.背景 (1)背景颜色 可以使用 background-c ...

  3. 图片base64格式转为file文件类型上传方法

    日常使用文件上传方式,都是通过input type='file'的文件选择框进行文件上传.但是会通过其他交互方式等到图片的base64格式进行上传.具体情况如下示意: 在项目开发中,需要进行照片采集, ...

  4. 一维数组快速转集合(List)

    String[] arr={"qwe","asd","zxc","asddf","hghgf"}; ...

  5. 洛谷 P2056 BZOJ 2743 [HEOI2012]采花

    //表示真的更喜欢洛谷的题面 题目描述 萧芸斓是 Z国的公主,平时的一大爱好是采花. 今天天气晴朗,阳光明媚,公主清晨便去了皇宫中新建的花园采花.花园足够大,容纳了 n 朵花,花有 c 种颜色(用整数 ...

  6. redis实现分页技术

    声明:原博客在这里https://www.cnblogs.com/find-the-right-direction/p/8465011.html,谢谢哥们提供,尊重原创. 本人是在原有的springb ...

  7. vue-自定义组件传

    项目中,我们经常会遇到自定义组件传值的问题,方法很多种,但是原理很简单,下述文档总结实际项目中使用的传值方式. 父组件传递给子组件某一值,子组件内会修改该值,然后父组件需要获取新值 ​ 在 Vue 中 ...

  8. windowsclient开发--为你clientsign一个签名证书

    郑重声明:该方法自娱自乐,尽管写入了签名,可是在微软系统免签证书不是合格的. 什么是签名? 话不多说,上图(没图说个xx): 微信windowsclient.exe安装文件: 再看还有一个.exe文件 ...

  9. vmstat命令的输出

  10. Linux学习笔记:什么是x86

    什么是x86 和硬件打交道常常会听说x86,疑惑的时候自己翻过书上网查过资料.可是都不甚明白.近期再次遇到x86这个词,随具体了解并做笔记记录. 想要知道什么是x86应该先区分CPU的分类. CPU ...