1.环境
1)IDEA2020.2.3
2)MySQL community 8.0.22.0
3)jdk 8.0.27
4)tomcat 9.0.40
2.项目结构
三.步骤
1)在MySQL Workbench中新建数据book
点击Local instance MYSQL80
输入密码,常为root
在红色代码区输入如下代码以创建数据库,点击绿色箭头所示的闪电按钮运行,结果将会出现在黄色箭头区域。紫色箭头区域可看到新建的数据库,若没有新建的数据库,点击蓝色的箭头所示按钮,刷新即可。
-- 创建数据库
create database book;
use book;
-- 创建图书信息表
create table bookinfo(
book_id int primary key auto_increment,
book_name varchar(20) not null,
price float(6,2) not null,
public_date date not null,
store int not null
);
-- 插入图书数据
insert into bookinfo(book_name,price,public_date,store) values('Android权威指南',58.8,'2016-02-01',3);
insert into bookinfo(book_name,price,public_date,store) values('linux私房菜',76.5,'2015-09-21',10);
insert into bookinfo(book_name,price,public_date,store) values('Java编程思想',110,'2008-05-30',12);
insert into bookinfo(book_name,price,public_date,store) values('JavaScript DOM 编程艺术',49.0,'2016-02-01',4);
insert into bookinfo(book_name,price,public_date,store) values('英语常用口语100句',28,'2002-04-25',6);
2.新建JavaWeb项目
新建普通java项目,命名为jdbc
点击红色箭头
勾选web application并确定
3.下载jdbc驱动包 链接:https://dev.mysql.com/downloads/connector/j/
进入下载页面,下载zip版本
右击项目名jdbc,选择 open module settings如红色箭头所示。
点击+号,点击 1 JARs or directions,
在弹出的窗口里选择mysql-connector-java-5.1.49.jar,点击ok
点击apply,点击ok
jar包导入成功了。展开 External libraries,可以看到这个jar包
4,新建java类JDBC,输入如下代码并允许即可
package net.jdbc.test;
import java.math.BigDecimal;
import java.sql.*;
public class JDBC {
//数据库url、用户名和密码
static final String DB_URL="jdbc:mysql://localhost:3306/book?";
static final String USER="root";
static final String PASS="root123";
public static void main(String[] args) {
try {
//1、注册JDBC驱动
Class.forName("com.mysql.jdbc.Driver");
//2、获取数据库连接
Connection connection = DriverManager.getConnection(DB_URL, USER, PASS);
//3、操作数据库
Statement statement = connection.createStatement();//获取操作数据库的对象
String sql="select * from bookinfo";
ResultSet resultSet = statement.executeQuery(sql);//执行sql,获取结果集
while(resultSet.next()){ //遍历结果集,取出数据
int book_id = resultSet.getInt("book_id");
String book_name = resultSet.getString("book_name");
BigDecimal price = resultSet.getBigDecimal("price");
Date public_date = resultSet.getDate("public_date");
String store = resultSet.getString("store");
//输出数据
System.out.print("图书编号:"+book_id);
System.out.print(",图书名称:"+book_name);
System.out.print(",价格"+price);
System.out.print(",出版日期"+public_date);
System.out.print(",库存"+store);
System.out.println();
}
//4、关闭结果集、数据库操作对象、数据库连接
resultSet.close();
statement.close();
connection.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch(SQLException e){
e.printStackTrace();
} catch(Exception e){
e.printStackTrace();
}
}
}