IDEA下Maven项目中通过JDBC连接MySQL数据库
### 1. 在当前Maven项目的pom.xml文件中导入数据库依赖:
```<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
```
### 2. 在IDEA中连接数据库
#### 通过IDEA图形化界面连接数据库
根据图中提示,进行数据库连接


然后,我们可以看到我们我们本地的数据库出现在IDEA中:

通过图形化界面,我们可以操作数据库,实现CURD。
#### 通过Java程序连接数据库
固定步骤如下:
1.配置连接信息
```
String url = "jdbc:mysql://localhost:3306/jdbc_db?useSSL=false&useUnicode=true&characterEncoding=UTF-8";
String username = "jdbc_acc";
String password = "123456";
```
2. 加载驱动
```
Class.forName("com.mysql.jdbc.Driver");
```
3. 连接数据库,代表数据库
```
Connection connection = DriverManager.getConnection(url, username, password);
```
4.向数据库发送SQL对象Statement:CRUD
```
Statement statement = connection.createStatement();
```
5.编写SQL(根据业务,不同的SQL)
```
String sql = "select * from stu;" ;
```
6.执行SQL
```
ResultSet resultSet = statement.executeQuery(sql);
while(resultSet.next()){
System.out.println("id=" + resultSet.getObject("id"));
System.out.println("name=" + resultSet.getObject("name"));
System.out.println("profession=" + resultSet.getObject("profession"));
System.out.println("age=" + resultSet.getObject("age"));
System.out.println("birthday=" + resultSet.getObject("birthday"));
System.out.println();
}
```
7.关闭连接
```
resultSet.close();
statement.close();
connection.close();
```
运行代码,可以看到在控制台输出了stu表的所有信息。

(由于IDEA编码原因,本人的IDEA无法正常显示中文,试了网上的方法都没有效果,目前还在解决中)
### 3.使用预编译+事务提交,一种更加安全的方式
基本流程与上面几乎一致,这里不再赘述。直接给出代码:
```
//配置信息
String url = "jdbc:mysql://localhost:3306/jdbc_db?useSSL=false&useUnicode=true&characterEncoding=UTF-8";
String username = "jdbc_acc";
String password = "123456";
//1.加载驱动
Class.forName("com.mysql.jdbc.Driver");
//2.连接数据库,代表数据库
Connection connection = DriverManager.getConnection(url, username, password);
//开启事务
connection.setAutoCommit(false);
//3.编写SQL
String sql = "insert into stu values(null,?,?,?,?);";
//4.预编译
PreparedStatement preparedStatement = connection.prepareStatement(sql);
preparedStatement.setString(1,"Tom");
preparedStatement.setString(2,"会计学");
preparedStatement.setInt(3,23);
preparedStatement.setDate(4,new Date(new java.util.Date().getTime()));
//提交事务
connection.commit();
//5.执行SQL
int i = preparedStatement.executeUpdate();
if(i > 0){
System.out.println("插入成功@");
}
//6.关闭连接,释放资源(一定要做) 先开后关
preparedStatement.close();
connection.close();
```
IDEA下Maven项目中通过JDBC连接MySQL数据库的更多相关文章
- JSP中使用JDBC连接MySQL数据库的详细步骤
1,首先在自己新建的项目文本框中输入Web Project的名称,然后单击下一步. 2,继续单击下一步 3,把Generate web.xml deployment descriptor复选框勾上. ...
- 在java程序中使用JDBC连接mysql数据库
在java程序中我们时常会用到数据库中的数据或操作数据库中的数据,如果java程序没有和我们得数据库连接,就不能实现在java程序中直接操作数据库.使用jdbc就能将java程序和数据库连起来,此时我 ...
- VS2017项目中使用代码连接MySQL数据库,以及进行数据添加
//头文件 #include "mysql.h" //函数定义 // 执行sql语句, 包括增加.删除.更新数据 bool ExecuteSql(MYSQL m_mysql,con ...
- 被缠上了,小王问我怎么在 Spring Boot 中使用 JDBC 连接 MySQL
上次帮小王入了 Spring Boot 的门后,他觉得我这个人和蔼可亲.平易近人,于是隔天小王又微信我说:"二哥,快教教我,怎么在 Spring Boot 项目中使用 JDBC 连接 MyS ...
- JDBC连接MySQL数据库及演示样例
JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识 JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...
- JDBC连接MySQL数据库及示例
JDBC是Sun公司制定的一个可以用Java语言连接数据库的技术. 一.JDBC基础知识 JDBC(Java Data Base Connectivity,java数据库连接)是一 ...
- 在Eclipse中使用JDBC访问MySQL数据库的配置方法
在Eclipse中使用JDBC访问MySQL数据库的配置方法 分类: DATABASE 数据结构与算法2009-10-10 16:37 5313人阅读 评论(10) 收藏 举报 jdbcmysql数据 ...
- java用JDBC连接MySQL数据库的详细知识点
想实现java用JDBC连接MySQL数据库.需要有几个准备工作: 1.下载Connector/J的库文件,下载Connector/J的官网地址:http://www.mysql.com/downlo ...
- java jdbc 连接mysql数据库 实现增删改查
好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打 ...
- 分页查询信息(使用jdbc连接mysql数据库实现分页查询任务)
分页查询信息 使用jdbc连接mysql数据库实现分页查询任务 通过mysql数据库提供的分页机制,实现商品信息的分页查询功能,将查询到的信息显示到jsp页面上. 本项目 ...
随机推荐
- window server 2012R2部署asp.net core项目应用程序池自动停止
当在windows server 2012R2上部署asp.net core项目时,需要安装the Hosting Bundle,但当我们安装完dotnet-hosting后,浏览站点应用程序池会自 ...
- IQueryable 和 IEnumerable 的区别
讲一讲 IQueryable 和 IEnumerable 的区别. 我们会在使用 LINQ 查询方法之后,又使用 ToList 等方法,将查询结果转换成集合. 如果我们不使用 ToList 呢? 比如 ...
- vscode python配置pip源
更换到国内清华园 C盘-User-用户名-新建"pip"文件夹-新建"pip.ini"文件 pip.ini 文件中内容: [global]index-url = ...
- linux查看进程信息
top 实时查看进程信息,展示进程id,使用内存,占用cpu等信息,可以查看内容占用最多.cpu使用最多的进程,然后再根据进程id查看进程的详细信息.实时更新 ps 瞬时查看进程情况,ps -ef | ...
- AX2012 快速清空整个log表数据
如果当一个log表的数据非常大的时又需要清理时,如果允许删除全部数据,在AX里,可以 将log表的TableType调整为[TempDB], 保存同步后再将TableType设置回[Regular]即 ...
- idea 部署项目到 docker 运行
1.在远程服务器上开启 docker 远程连接 $vim /usr/lib/systemd/system/docker.service # ExecStart=/usr/bin/dockerd -H ...
- 人森第一个iOS app,写给我家baby的!纪念一下
用python写的,对于非专业iOS开发来说,py是个不错的选择,使用beeware框架,感觉和写前端差不多
- 使用Jquery的.css('border')在火狐不兼容
改成如下就可以兼容火狐.IE.谷歌(border-left-color.border-left-width等)
- hdu:Shape of HDU(判断多边形凹凸)
Problem Description话说上回讲到海东集团推选老总的事情,最终的结果是XHD以微弱优势当选,从此以后,"徐队"的称呼逐渐被"徐总"所取代,海东集 ...
- 安装 TensorFlow 参考过的资料
anaconda 的新环境创建 https://blog.csdn.net/yandajiangjun/article/details/102615912