CentOS7下JSP连接Mysql

  实验环境如下:

youxi1  CentOS7.5  Tomcat8.5.35  192.168.5.101

youxi2  CentOS7.5  Mysql5.7.20  192.168.5.102

(1).下载Mysql官方提供的连接包

  网址:https://dev.mysql.com/downloads/connector/j/,选择Platform Independent(平台独立,就是与平台无关)。我这里下载的是mysql-connector-java-8.0.13.tar.gz。

  下载完成后上传到Tomcat服务器上,我这里是youix1。

(2).在mysql服务器上创建测试数据,并授权

[root@youxi2 ~]# mysql -uroot -p123456
mysql> create database test_db; 
Query OK, 1 row affected (0.00 sec)

mysql> use test_db;
Database changed
mysql> create table java_tb(id int,name varchar(20));
Query OK, 0 rows affected (0.02 sec)

mysql> insert into java_tb values(1,'zhangsan'),(2,'lisi');
Query OK, 2 rows affected (0.06 sec)
Records: 2 Duplicates: 0 Warnings: 0

mysql> select * from java_tb;
+------+----------+
| id   | name     |
+------+----------+
|    1 | zhangsan |
|    2 | lisi     |
+------+----------+
2 rows in set (0.00 sec)

mysql> grant all on test_db.* to 'tomcat_user'@'192.168.5.101' identified by 'tomcatpassword';
Query OK, 0 rows affected, 1 warning (0.02 sec)

mysql> flush privileges;  //刷新
Query OK, 0 rows affected (0.00 sec)

  

(3).解压文件,将jar包复制到tomcat安装目录下的lib文件夹中,最后重启tomcat

[root@youxi1 ~]# tar zxf mysql-connector-java-8.0.13.tar.gz -C /usr/local/src/  //解压 
[root@youxi1 ~]# cp /usr/local/src/mysql-connector-java-8.0.13/mysql-connector-java-8.0.13.jar /usr/local/tomcat8.5/lib/  //复制jar包
[root@youxi1 ~]# ps aux | grep /usr/local/tomcat8.5/
root 2559 0.2 10.0 2325180 99932 ? Sl 12:32 0:21 /usr/local/jdk1.8.0_191/bin/java -Djava.util.logging.config.file=/usr/local/tomcat8.5/conf/logging.properties
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
-Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat8.5/bin/bootstrap.jar:/usr/local/tomcat8.5/bin/tomcat-juli.jar
-Dcatalina.base=/usr/local/tomcat8.5 -Dcatalina.home=/usr/local/tomcat8.5 -Djava.io.tmpdir=/usr/local/tomcat8.5/temp org.apache.catalina.startup.Bootstrap start root 2982 0.0 0.0 112720 992 pts/0 S+ 14:33 0:00 grep --color=auto /usr/local/tomcat8.5/ [root@youxi1 ~]# kill -9 2559  //杀死tomcat [root@youxi1 ~]# !ps  //调用最近一次ps开头的命令 ps aux | grep /usr/local/tomcat8.5/  //显示完整命令 root 2985 0.0 0.0 112720 992 pts/0 R+ 14:33 0:00 grep --color=auto /usr/local/tomcat8.5/ [root@youxi1 ~]# /usr/local/tomcat8.5/bin/startup.sh Using CATALINA_BASE: /usr/local/tomcat8.5 Using CATALINA_HOME: /usr/local/tomcat8.5 Using CATALINA_TMPDIR: /usr/local/tomcat8.5/temp Using JRE_HOME: /usr/local/jdk1.8.0_191 Using CLASSPATH: /usr/local/tomcat8.5/bin/bootstrap.jar:/usr/local/tomcat8.5/bin/tomcat-juli.jar Tomcat started. [root@youxi1 ~]# !ps ps aux | grep /usr/local/tomcat8.5/ root 2995 109 6.1 2263640 60904 pts/0 Sl 14:33 0:03 /usr/local/jdk1.8.0_191/bin/java -Djava.util.logging.config.file=/usr/local/tomcat8.5/conf/logging.properties
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
-Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat8.5/bin/bootstrap.jar:/usr/local/tomcat8.5/bin/tomcat-juli.jar
-Dcatalina.base=/usr/local/tomcat8.5 -Dcatalina.home=/usr/local/tomcat8.5 -Djava.io.tmpdir=/usr/local/tomcat8.5/temp org.apache.catalina.startup.Bootstrap start root 3015 0.0 0.0 112720 992 pts/0 R+ 14:33 0:00 grep --color=auto /usr/local/tomcat8.5/

(4).创建测试网页

[root@youxi1 ~]# vim /usr/local/tomcat8.5/webapps/ROOT/mysql.jsp
<%@ page import="java.sql.*"%>
<html>
<body>
<%
Class.forName("com.mysql.cj.jdbc.Driver").newInstance();
//url包含了Mysql的IP地址(192.168.5.102),端口号(3306),数据库(test_db),连接用户名和密码(tomcat_user和tomcatpassword),使用的字符集(utf-8) String url = "jdbc:mysql://192.168.5.102:3306/test_db?user=tomcat_user&password=tomcatpassword&useUnicode=true&characterEncoding=utf-8"; Connection conn = DriverManager.getConnection(url); Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); String sql="select * from java_tb"; ResultSet rs=stmt.executeQuery(sql); while(rs.next()){ %> id:<%=rs.getString(1)%> name:<%=rs.getString(2)%><br><br> <%}%> <% out.print("Congratulations!!! JSP connect MYSQL IS OK!!"); %> <% rs.close(); stmt.close(); conn.close(); %> </body> </html>

  字符集需要和数据库端相同。

  在Windows上查看

 

posted @ 2019-06-30 15:31  苦逼运维  阅读(547)  评论(0编辑  收藏  举报