java连接mysql

0. macOS安装homebrew 

具体操作可参考https://www.cnblogs.com/acerkoo/p/13021871.html

1. 下载安装jdk

到https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html下载对应操作系统的jdk8,并安装。比如我的操作系统是macOS x64的。 

终端下,输入java -version ,返回给你java的版本,则说明安装成功。

 

2. 下载安装mysql

具体操作可参考https://www.jianshu.com/p/a0f661c07d5b

3. 下载安装tomcat

具体操作可参考 https://www.jianshu.com/p/e342f189403f

4. 下载对应版本的mysql-connector-java

到https://dev.mysql.com/downloads/connector/j/

我这里要下的是和jdk版本对应的

 

 下载好了解压,把解压出来的文件夹打开

 

 

 

这个mysql-connector-java-8.0.21.jar 我们待会儿要用

5. 一个java连接数据库的例子

按照上述安装tomcat的方法,tomcat的网站根目录应该是在

/usr/local/Cellar/tomcat/9.0.39/libexec/webapps

其中9.0.39是我下载安装的tomcat的版本,不同版本的不一样

Web程序目录概览:

下面完成这个Web程序和数据库连接的例子。

命令行下输入

```

cd /usr/local/Cellar/tomcat/9.0.39/libexec/webapps

mkdir -p SQL/WEB-INF/classes

touch SQL/WEB-INF/web.xml

touch SQL/mysql.jsp

```

# 接下来我要创建连接数据库用的测试数据库和表,并且向表中填入相应内容。【我这里用的是菜鸟教程的现成数据库例子,因此也可参考https://www.runoob.com/java/java-mysql-connect.html】

首先,打开mysql服务

```

brew services start mysql

如果已经打开了,输入

brew services restart mysql

```

```

mysql -uroot -p

```

输入密码成功后,出现一下内容(其中的8.0.21是mysql的版本)

 

 在下面的那个红框处输入

```

CREATE DATABASE RUNOOB;

```

回显数据库创建成功的英文

选用RUNOOB数据库

```

USE RUNOOB

```

再输入

```

CREATE TABLE `websites` ( `id` int(11) NOT NULL AUTO_INCREMENT`name` char(20) NOT NULL DEFAULT '' COMMENT '站点名称'`url` varchar(255) NOT NULL DEFAULT ''`alexa` int(11) NOT NULL DEFAULT '0' COMMENT 'Alexa 排名'`country` char(10) NOT NULL DEFAULT '' COMMENT '国家'PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;

```

回显创建websites表成功。

接着,向表websites中插入一些数据

```

INSERT INTO `websites` VALUES ('1', 'Google', 'https://www.google.cm/', '1', 'USA'), ('2', '淘宝', 'https://www.taobao.com/', '13', 'CN'), ('3', '菜鸟教程', 'http://www.runoob.com', '5892', ''), ('4', '微博', 'http://weibo.com/', '20', 'CN'), ('5', 'Facebook', 'https://www.facebook.com/', '3', 'USA');

```

 查看RUNOOB数据库下websites表结构及其数据

```

USE RUNOOB

SELECT * FROM websites;

```

上述流程可参考下图

 

 好了,测试用的数据库和表搞好了

# 写mysql.jsp中的内容

我这里说的mysql.jsp是在tomcat的网站根目录下的SQL下的一个文件,用文本编辑器打开它。输入如下内容

```

<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*"%>
<html>
<body>
以下是从MySQL数据库读取的数据:<hr>
<table border=1>
<tr><td>ID</td><td>站点名称</td><td>站点URL</td></tr>

<%

Class.forName("com.mysql.cj.jdbc.Driver");
Connection con=java.sql.DriverManager.getConnection("jdbc:mysql://localhost:3306/RUNOOB","root","你的数据库密码");
Statement stmt=con.createStatement();
ResultSet rst=stmt.executeQuery("select id, name, url from websites");
while(rst.next())
{
out.println("<tr>");
out.println("<td>"+rst.getString("id")+"</td>");
out.println("<td>"+rst.getString("name")+"</td>");
out.println("<td>"+rst.getString("url")+"</td>");
out.println("</tr>");
}
//关闭连接、释放资源
rst.close();
stmt.close();
con.close();
%>
</table>
</body>
</html>

```

【说明:我这里的Web程序连接的是root用户的数据库,也可以创建其他的数据库用户,连接其他的用户的数据库】

# 把之前序号4中的mysql-connector-javaxxx.jar拷贝到/usr/local/Cellar/tomcat/9.0.39/libexec/webapps/SQL/WEB-INF目录下

用文本编辑器打开/usr/local/Cellar/tomcat/9.0.39/libexec/webapps/SQL/WEB-INF目录下的web.xml文件

其中的内容修改为

```

<?xml version="1.0" ?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>
<welcome-file-list>
<welcome-file>mysql.jsp</welcome-file>
</welcome-file-list>
</web-app>

```

最后,打开tomcat服务(要确保成功打开哦)

```

catalina run

```

在浏览器地址栏输入如下地址并回车

```

localhost:8080/SQL/index.jsp

```

显示出如下的网页

 

主要参考博文地址:

纯手工打造(不使用IDE)java web 项目 - 夜读春秋啊 - 博客园 https://www.cnblogs.com/beast-king/p/5744385.html

不用IDE工具使用JDBC连接MySQL - JAVA涂鸦 - BlogJava http://www.blogjava.net/rickhunter/articles/14827.html

Java MySQL 连接 | 菜鸟教程 https://www.runoob.com/java/java-mysql-connect.html

macOS 安装 homebrew 国内源 - Acerkoo - 博客园 https://www.cnblogs.com/acerkoo/p/13021871.html

Mac 上 brew 安装Tomcat - 简书 https://www.jianshu.com/p/e342f189403f

 

 

posted @ 2020-10-18 20:00  LUNA2333  阅读(1183)  评论(0编辑  收藏  举报