Tomcat配置

安装Tomcat

Tomcat的安装分为安装JDK和安装Tomcat两个步骤,想要运行Java程序必须要有JDK的支持。所以要首先安装JDK

安装JDK

# mv jdk1.8.0_271 /usr/local/jdk1.8
# vi /etc/profile    //在文件的最后一行添加
JAVA_HOME=/usr/local/jdk1.8/
JAVA_BIN=/usr/local/jdk1.8/bin
JRE_HOME=/usr/local/jdk1.8/jre
PATH=$PATH:/usr/local/jdk1.8/bin:/usr/local/jdk1.8/jre/bin
CLASSPATH=/usr/local/jdk1.8/jre/lib:/usr/local/jdk1.8/lib:/usr/local/jdk1.8/jre/lib/charsets.jar
# mv /usr/bin/java /usr/bin/java_bak   
source /etc/profile  //使配置生效
# java -version  //检测配置是否正确

安装Tomcat

# tar zxvf apache-tomcat-8.5.60.tar.gz
# mv apache-tomcat-8.5.60 /usr/local/tomcat
# /usr/local/tomcat/bin/startup.sh   //启动tomcat
# netstat -ntpl |grep java   //查看是否启动成功

这边看到8005和8080端口就代表启动成功。
然后可以用访问浏览器验证:http://ip:8080 会出现tomcat界面。

配置Tomcat服务的访问端口

Tomcat的默认端口为8080,但是我们可以修改他

# vi /usr/local/tomcat/conf/server.xml  //在文件中查找Connector port=”8080”
然后就把8080改成需要更改的端口
最后保存文件重启Tomcat才能生效
# /usr/local/tomcat/bin/shutdown.sh
# /usr/local/tomcat/bin/startup.sh

Tomcat的虚拟主机

# vi /usr/local/tomcat/conf/server.xml

Tomcat配置文件中<!–和-->之间的内容为注释掉的,我们只需要了解没被注释的内容
和之间的配置为虚拟主机的配置部分。
name定义域名
appBase定义应用的目录
Tomcat默认页其实就是在appBase目录下面,不过是在它的子目录ROOT下面。

# ls /usr/local/tomcat/webapps/ROOT/

其中index.jsp就是tomcat的默认界面
增加一个虚拟主机:

# vi /usr/local/tomcat/conf/server.xml
      <Host name="www.123.cn" appBase="/data/tomcatweb/"
        unpacWARs="false" autoDeploy="true"
        xmlValidation="false" xmlNamespaceAware="false">
        <Context path="" docBase="/data/tomcatweb/" debug="0" reloadable="true" crossContext="true"/>
      </Host>

创建一个目录和测试文件

# mkdir /data/tomcatweb
# echo "Tomcat test page." > /data/tomcatweb/1.html
# /usr/local/tomcat/bin/shutdown.sh
# /usr/local/tomcat/bin/startup.sh
# curl -x127.0.0.1:8080 www.123.cn/1.html
Tomcat test page

测试Tomcat解析JSP

什么是JSP
JSP与baiPHP、ASP、ASP.NET等语言类似,运行在服务端的语言。JSP技术是以Java语言作为脚本语言的,JSP网页为整个服务器端的Java库单元提供了一个接口来服务于HTTP的应用程序。
创建一个JSP测试页面

# vi /data/tomcatweb/111.jsp
<html><body><center>
        Now time is: <%=new java.util.Date()%>
</center><body><html>
# curl -x127.0.0.1:8080 www.123.cn/111.jsp
<html><body><center>
        Now time is: Web Dec 09 02:56:69 PST 2020
</center><body><html>

可以看到配置文件中间那行的内容被解析成了当前系统时间。

Tomcat日志

Tomcat的日志分为四种

# cd /usr/local/tomcat/logs
# ls

catalina开头的日志为Tomcat的综合日志,记录Tomcat服务相关信息,也会记录错误日志
host-manager和manager为管理相关日志,host-manager为虚拟主机的管理日志。
localhost和localhost-access为虚拟主机的相关日志。带access的为访问日志,不带的为错误日志。
访问日志默认不会生成,需要在server.xml中配置一下

# vi /usr/local/tomcat/conf/server.xml   //在<host></host>之间添加一块内容
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs">    
        prefix="123.cn_access_log" suffix=".txt"
        pattern="%h %l %t &quot;%r&quot; %s %b" />

Tomcat连接MySQL

Tomcat连接MySQL是通过自带的JDBC驱动实现的
首先创建实验用的库、表、和用户
这边我先用绝对路径进入一下数据库

# /usr/local/mysql/bin/mysql -uroot
mysql> create database java_test;
mysql> use java_test
mysql> grant all on java_test.* to 'java'@'127.0.0.1' identified by 'hjh';
mysql> create table hjh (`id` int(4), `name` char(40));
mysql> insert into hjh values (1, 'abc');
mysql> insert into hjh values (2, 'aaa');
mysql> insert into hjh values (3, 'ccc');

验证用户是否可以使用
在这里插入图片描述
这边直接进去了,证明java用户没有问题,接着配置Tomcat

# vi /usr/local/tomcat/conf/context.xml
<Resource name="jdbc/mytest"
        auth="Container"
        type="javax.sql.DataSource"
        maxActive="100" maxIdle="30" maxWait="10000"
        username="java" password="hjh"
        driverClassName="com.mysql.jdbc.Driver"
        url="jdbc:mysql://127.0.0.1:3306/java_test">
</Resource>

配置文件的内容含义
username为mysql的用户,password就是密码
url定义MySQL的(从左到右)IP、端口、库名
保存上面配置的文件后,好需要再修改另一个配置文件

# vi /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>
  <res-type>javax.sql.DataSource</res-type>
  <res-auth>Containet</res-auth>
</resource-ref>

# vi /usr/local/tomcat/webapps/ROOT/t.jsp
<%@page import="java.sql.*"%>
<%@page import="javax.sql.DataSource"%>
<%@page import="javax.nhjh.*"%>

 c
<%
Context ctx = new InitialContext();
DataSource ds = (DataSource) ctx
.lookup("java:comp/env/jdbc/mytest");
Connection conn = ds.getConnection();
statement state = conn.createStatement();
String sql = "select * form hjh";
ResultSet rs = state.executeQuery(sql);

while (rs.next()) {
        out.println(rs.getString("id") +"<tr>");
        out.println(rs.getString("name") +"<tr><br>");
}

rs.close();
state.close();
conn.close();
%>

再次从新启动

# /usr/local/tomcat/bin/shutdown.sh
# /usr/local/tomcat/bin/startup.sh

这边在浏览器访问时出现了500错误,初步判断是配置文件出现了错误,然后更改完发现依然有错,最后导入了mysql-connector-java-5.1.7-bin.jar 包才显示出来
在这里插入图片描述
然后通过MySQL命令行查询可以查询到

#  mysql -ujava -phjh -h127.0.0.1 java_test -e "select * from hjh"

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值