CentOS 7 配置Tomcat9+MySQL方案
配置Tomcat
首先安装Tomcat
安装Tomcat分为安装Tomcat和安装JDK两个步骤
JDK( Java Development Kit ) 是Sun Microsystems针对Java开发的产品 . 自从Java推出以来 , JDK已经成为使用最广泛的Java SDK . JDK是整个Java的核心 , 他包括了Java运行环境、Java工具和Java基础的类库 . 所以要想运行Java程序必须要有JDK的支持 , 而安装Tomcat的前提也是安装好JDK
安装JDK
# 上传完JDK的包之后 , 把它放到/usr/local/目录下 , 然后解压 [root@DaMoWang ~]# tar xf jdk-10.0.2_linux-x64_bin.tar.gz -C /usr/local/ [root@DaMoWang ~]# cd /usr/local/ [root@DaMoWang local]# mv jdk-10.0.2/ jdk10 # 设置环境变量 [root@DaMoWang local]# vim /etc/profile JAVA_HOME=/usr/local/jdk10/ JAVA_BIN=/usr/local/jdk10/bin JRE_HOME=/usr/local/jdk10/jre PATH=$PATH:/usr/local/jdk10/bin:/usr/local/jdk10/jre/bin CLASSPATH=/usr/local/jdk10/lib:/usr/local/jdk10/jre/lib/charsets/jar [root@DaMoWang local]# source /etc/profile # 使配置文件生效 [root@DaMoWang local]# java -version java version "10.0.2" 2018-07-17 Java(TM) SE Runtime Environment 18.3 (build 10.0.2+13) Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.2+13, mixed mode) # 如果显示的不是java version 而是 openjdk version 那么做如下操作 [root@DaMoWang local]# mv `which java`{,.bak} [root@DaMoWang local]# source /etc/profile # 直接使用openjdk也可以
安装Tomcat
# 因为是二进制包 , 所以免去了编译的过程 [root@DaMoWang ~]# tar xf apache-tomcat-9.0.10.tar.gz [root@DaMoWang ~]# mv apache-tomcat-9.0.10/ /usr/local/tomcat [root@DaMoWang ~]# cd /usr/local/tomcat [root@DaMoWang tomcat]# bin/startup.sh # 启动Tomcat
使用netstat命令查看是否启动成功
# 正常会有三个端口 8005、8009和8080 , 其中8080为提供web服务的端口 , 8005为管理端口 , 8009为第三方服务调用的端口 , 比如httpd和Tomcat结合时会用到 [root@DaMoWang tomcat]# netstat -lntp|grep java tcp6 0 0 127.0.0.1:8005 :::* LISTEN 3430/java tcp6 0 0 :::8009 :::* LISTEN 3430/java tcp6 0 0 :::8080 :::* LISTEN 3430/java
配置Tomcat
Tomcat的安装过程非常简单 , Tomcat的配置其实并不多
配置Tomcat服务的访问端口
Tomcat默认启动的端口是8080 , 想要修改则需要修改安装目录下conf/server.xml
[root@DaMoWang tomcat]# vim conf/server.xml # 找到 <Connector port="8080" protocol="HTTP/1.1" 的行 , 比如修改为80 <Connector port="80" protocol="HTTP/1.1 保存退出 # 重启Tomcat服务 [root@DaMoWang tomcat]# bin/shutdown.sh Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/local/jdk10 Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED [root@DaMoWang tomcat]# bin/startup.sh Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/local/jdk10 Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Tomcat started.
Tomcat的虚拟主机
[root@DaMoWang tomcat]# vim conf/server.xml # 增加虚拟主机 , 并定义域名, 在</Host>下一行添加新的<Host> <Host name="www.damowang.cn" appBase="/data/tomcatweb/" unpackWARs="false" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="" docBase="/data/tomcatweb/" debug="0" reloadable="true" crossContext="true"/> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="damowang.cn_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" /> </Host> # 保存退出 [root@DaMoWang tomcat]# mkdir -p /data/tomcatweb [root@DaMoWang tomcat]# echo "damowang" > /data/tomcatweb/1.html # 修改完配置文件之后重启服务 [root@DaMoWang tomcat]# bin/shutdown.sh [root@DaMoWang tomcat]# bin/startup.sh # 用curl访问以下刚才创建的1.html [root@DaMoWang tomcat]# curl -x127.0.0.1:8080 www.damowang.cn/1.html damowang
测试Tomcat解析JSP
# 创建一个JSP的测试页面 [root@DaMoWang tomcat]# vim /data/tomcatweb/1.jsp <html><body><center> Now time is: <%=new java.util.Date()%> </center></body></html> # 查看运行结果 [root@DaMoWang tomcat]# curl -x127.0.0.1:8080 www.damowang.cn/1.jsp <html><body><center> Now time is: Fri Jul 27 18:40:46 CST 2018 </center></body></html> # 可以看到中间那段代码被解析成当前系统时间了 , 也可以在物理机上绑定hosts , 用浏览器来测试
Tomcat连接MySQL
Tomcat连接MySQL是通过JDBC驱动实现的
所以需要准备一个包
mysql-connector-java 可以去官网下载
首先配置mysql , 创建测试用的库、表以及用户
[root@DaMoWang ~]# mysql -uroot -p475541270 mysql> create database java_test; mysql> use java_test mysql> grant all on java_test.* to 'java'@'127.0.0.1' identified by 'damowang'; mysql> create table damowang (`id` int(4), `name` char(40)); mysql> insert into damowang values (1,'abc'); mysql> insert into damowang values (2,'aaa'); mysql> insert into damowang values (3,'ccc'); # 退出mysql 去验证java用户有没有问题 [root@DaMoWang ~]# mysql -ujava -pdamowang -h127.0.0.1 mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 4 Server version: 5.7.21 Source distribution Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or 'h' for help. Type 'c' to clear the current input statement. mysql>
MySQL配置完后接着配置Tomcat相关的配置文件
[root@DaMoWang ~]# vim /usr/local/tomcat/conf/context.xml # 在</Context> 上面添加以下内容 <Resource name="jdbc/mytest" # 可以随便定义,要记住名字,之后会用到 auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="java" password="damowang" # 数据库的用户和密码 driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://127.0.0.1:3306/java_test"> # 数据库的IP、端口以及库名 </Resource> # 编辑完之后还需要改另一个配置文件 [root@DaMoWang ~]# vim /usr/local/tomcat/webapps/ROOT/WEB-INF/web.xml # 在</web-app>上面添加 <resource-ref> <description>DB Connection</description> <res-ref-name>jdbc/mytest</res-ref-name> # 和之前定义的Resource name保持一致 <res-auth>Container</res-auth> </resource-ref>
现在要用到刚才准备好的软件包了
[root@DaMoWang ~]# tar xf mysql-connector-java-8.0.12.tar.gz -C /usr/src/ [root@DaMoWang ~]# mv /usr/src/mysql-connector-java-8.0.12/mysql-connector-java-8.0.12.jar /usr/local/tomcat/lib/
测试
[root@DaMoWang ~]# vim /usr/local/tomcat/webapps/ROOT/t.jsp # java语言写的代码 这个脚本可以去连接我们的数据库 <%@page import=%> <%@page import=%> <%@page import=%> <% Context ctx = new InitialContext(); DataSource ds = (DataSource) ctx .lookup(); Connection conn = ds.getConnection(); Statement state = conn.createStatement(); String sql = ; ResultSet rs = state.executeQuery(sql); (rs.next()) { out.println(rs.getString() +); out.println(rs.getString() +); } rs.close(); state.close(); conn.close(); %>
# 重启Tomcat
[root@DaMoWang ~]# /usr/local/tomcat/bin/shutdown.sh
[root@DaMoWang ~]# /usr/local/tomcat/bin/startup.sh
连接数据库成功 , 并且显示出了java_test库里的damowang表里面的数据
- 实战 windows7 下 eclipse 远程调试 linux hadoop
- Hive 在多维统计分析中的应用 & 技巧总结
- shell 学习笔记(18)
- Hive 中的复合数据结构简介以及一些函数的用法说明
- BloomFilter 简介及在 Hadoop reduce side join 中的应用
- 关于 hadoop reduce 阶段遍历 Iterable 的 2 个“坑”
- Hadoop Mapper 阶段将数据直接从 HDFS 导入 Hbase
- 译文 | 量化投资教程:投资组合优化与R实践
- 浅谈 java 中构建可执行 jar 包的几种方式
- python 日志模块 logging 详解
- 基于堆实现的优先级队列:PriorityQueue 解决 Top K 问题
- explain 深入剖析 MySQL 索引及其性能优化指南
- 图文并茂详解 SQL JOIN
- 自定义 hadoop MapReduce InputFormat 切分输入文件
- MySQL 教程
- MySQL 安装
- MySQL 管理与配置
- MySQL PHP 语法
- MySQL 连接
- MySQL 创建数据库
- MySQL 删除数据库
- MySQL 选择数据库
- MySQL 数据类型
- MySQL 创建数据表
- MySQL 删除数据表
- MySQL 插入数据
- MySQL 查询数据
- MySQL where 子句
- MySQL UPDATE 查询
- MySQL DELETE 语句
- MySQL LIKE 子句
- mysql order by
- Mysql Join的使用
- MySQL NULL 值处理
- MySQL 正则表达式
- MySQL 事务
- MySQL ALTER命令
- MySQL 索引
- MySQL 临时表
- MySQL 复制表
- 查看MySQL 元数据
- MySQL 序列 AUTO_INCREMENT
- MySQL 处理重复数据
- MySQL 及 SQL 注入
- MySQL 导出数据
- MySQL 导入数据
- MYSQL 函数大全
- MySQL Group By 实例讲解
- MySQL Max()函数实例讲解
- mysql count函数实例
- MYSQL UNION和UNION ALL实例
- MySQL IN 用法
- MySQL between and 实例讲解
- linux chroot命令详解
- Linux中如何查询运行文件的全路径的方法
- 基于可变自动编码器(VAE)的生成建模,理解可变自动编码器背后的原理
- Centos7上网及添加静态IP方法介绍
- 解决yum安装报错Protected multilib versions的问题
- Linux与Windows编码不一致的解决方案
- Linux运维之如何使用ss命令代替netstat
- 对Linux终端使用socks5代理的方法详解
- linux安装xmind的方法步骤
- 对linux下软件(库)的更新命令详解
- Linux环境下Apache服务器配置二级域名的方法详解
- Linux环境下Apache开启https服务的方法详解
- 使用GANs生成时间序列数据:DoppelGANger论文详解
- CentOS 7使用samba共享文件夹的完整步骤
- Linux环境使用crontab命令设置定时周期性执行任务【含php执行代码】