Tomcat实战


  • tomcat简述
  • tomcat安装
  • 部署jspgou项目

tomcat简述

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,它早期的名称为catalina,后来由Apache、Sun 和其他一些公司及个人共同开发而成,并更名为Tomcat。Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选,因为Tomcat 技术先进、性能稳定,成为目前比较流行的Web 应用服务器。Tomcat是应用(java)服务器,它只是一个servlet容器,是Apache的扩展,但它是独立运行的。

因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。

在Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。你在浏览器中访问这个应用的Jsp时,通常第一次会很慢,因为Tomcat要将Jsp转化为Servlet文件,然后编译。编译以后,访问将会很快。

Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能:处理Html页面。但是与Apache相比,它的处理静态Html的能力就不如Apache.我们可以将Tomcat和Apache集成到一块,让Apache处理静态Html(静态请求),而Tomcat处理Jsp和Servlet(动态请求).

优点:
(1)免费的
(2)占用系统资源比较小
(3)跨平台性好,有JAVA环境就行
(4)开源

tomcat安装

先将二进制压缩包上传置服务器上
一. 部署JAVA环境:
# tar xf jdk-8u211-linux-x64.tar.gz -C /usr/local/
# mv /usr/local/jdk1.8.0_211/ /usr/local/java
# vim /etc/profile.d/java.sh
#!/bin/bash
JAVA_HOME=/usr/local/java
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH
# source /etc/profile.d/java.sh
# java -version
java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)
二. 安装tomcat:
# tar xf apache-tomcat-8.0.53.tar.gz -C /usr/local/
# mv /usr/local/apache-tomcat-8.0.53/ /usr/local/tomcat
# cd /usr/local/tomcat/
bin 命令:shutdown.sh 关闭tomcat;startup.sh启动tomcat
lib java的库 .jar
logs 日志
temp 临时文件
work 运行JSP脚本需要的class文件
conf 配置文件
webapps DocumentRoot
三. 启动tomcat :
方法一:
# cd 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/java
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
# netstat -tanp |grep 8080
tcp 0 0 :::8080 :::* LISTEN 2045/java

Tomcat部署 - jspgou项目

部署项目方法:
1、jsp页面 -> webapps/ROOT目录
2、.war包 -> webapps 目录下 1、上传项目包到服务器上并且解压
jspgouV6-ROOT.zip
# unzip jspgouV6-ROOT.zip
//会解压出来 ROOT DB 必读.txt 2、把ROOT目录代码放到webapps/ROOT 目录
# mv /usr/local/tomcat/webapps/ROOT /usr/local/tomcat/webapps/ROOT.bak
# mv ROOT /usr/local/tomcat/webapps/ //ROOT.bak 为tomcat测试页面; ROOT 为 jspgou项目代码 3、安装数据库、创建数据库、以及导入数据库文件
安装数据库:略
# systemctl start mysqld //启动数据库
# mysql -uroot -p'Qf..2022'
mysql> create database jspgou; //创建数据库jspgou # mysql -u root -p'Qf..2022' -D jspgou < DB/jspgou.sql
可能遇到的问题:
# mysql -uroot -p'Qf..2022' -D jspgou < DB/jspgou.sql
mysql: [Warning] Using a password on the command line interface can be
insecure.
ERROR 1067 (42000) at line 97: Invalid default value for 'api_call_time'
解决方案:
解决:
在mysql安装目录下找见my.cnf
[mysqld] 下面添加
sql_mode=STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
explicit_defaults_for_timestamp=1
重启mysqld服务重新导入 4、修改项目代码,编写数据库连接
# vim /usr/local/tomcat/webapps/ROOT/WEB-INF/config/jdbc.properties jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/jspgou?characterEncoding=UTF-8
jdbc.username=root
jdbc.password=Qf..2022 //数据库连接密码,默认为空,根据自己的数据库密码填写 5、重启tomcat
# /usr/local/tomcat/bin/shutdown.sh
# /usr/local/tomcat/bin/startup.sh 首页访问位置: IP地址:8080
系统管理后台登录:http://公网IP地址:8080/jeeadmin/jspgou/index.do
用户名:admin
密 码:123456

Tomcat部署 - Jenkins

1、下载jenkins.war最新包
# wget https://mirrors.aliyun.com/jenkins/war/latest/jenkins.war 2、拷贝war包到webapps目录
# mv jenkins.war /usr/local/tomcat/webapps/
# /usr/local/tomcat/bin/shutdown.sh
# /usr/local/tomcat/bin/startup.sh ----------------------------------------------------
由于插件的问题,已经提供jenkins.war plugins2.267.tar.gz 插件的替换:
# tar xf plugins2.267.tar.gz
# rm -rf /root/.jenkins/plugins/
# mv plugins /root/.jenkins/

选择插件安装

设置Jenkins语言

Manage Jenkins -> Configure System ->

最新文章

  1. kindle型号
  2. 小规模的流处理框架.Part 1: thread pools
  3. Match:Censored!(AC自动机+DP+高精度)(POJ 1625)
  4. mshadow笔记
  5. ireport 导出工具类
  6. 我的工具箱之Securecrt6.5.0
  7. centos下安装php环境
  8. 系统架构师JD
  9. .ssh 文件夹权限设置问题
  10. XP的定时关机命令?
  11. Python 常量与变量
  12. 完美结合 Redux 与 React-router (react-router不切换页面)
  13. 框架学习笔记之Mybatis(一)
  14. Java框架spring 学习笔记(十二):aop实例操作
  15. java总结:Java中获取系统时间(年、月、日)以及下拉菜单默认选择系统年、月、日的方法
  16. vue获取后台图片验证码,并点击刷新验证码
  17. 【Beta阶段】测试报告
  18. Linux Sysstat性能监控工具安装及常见8个命令使用例子
  19. win10 常用设置 桌面出来计算机图标,固定桌面摆好的图标设置方法,电脑设备ID方法
  20. HDFS namenode 写edit log原理以及源码分析

热门文章

  1. 13-之容器资源需求、资源限制及Metric-server(Heapster)
  2. 备份还原ESXi 中的虚拟机快照
  3. pyton3 字典排序
  4. A Novel Sequential Method to Train Physics Informed Neural Networks for Allen Cahn and Cahn Hilliard Equations
  5. 防止react-re-render: Why Suspense and how ?
  6. ubuntu添加新硬盘进行分区,并挂载到/home
  7. mfcc vs fbank
  8. P1982 [NOIP2013 普及组] 小朋友的数字 题解
  9. ORACLE查看表占用空间的大小
  10. 记一次前端ajax禁止使用异步async的操作