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服务器上创建测试数据,并授权
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | [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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | [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<br> -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources<br> -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<br> -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<br> -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources<br> -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<br> -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).创建测试网页
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | [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();<br> //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上查看
分类:
CentOS搭建服务
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性