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 ->

Linux_Tomcat实战的更多相关文章

  1. SSH实战 · 唯唯乐购项目(上)

    前台需求分析 一:用户模块 注册 前台JS校验 使用AJAX完成对用户名(邮箱)的异步校验 后台Struts2校验 验证码 发送激活邮件 将用户信息存入到数据库 激活 点击激活邮件中的链接完成激活 根 ...

  2. GitHub实战系列汇总篇

    基础: 1.GitHub实战系列~1.环境部署+创建第一个文件 2015-12-9 http://www.cnblogs.com/dunitian/p/5034624.html 2.GitHub实战系 ...

  3. MySQL 系列(四)主从复制、备份恢复方案生产环境实战

    第一篇:MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:MySQL 系列(二) 你不知道的数据库操作 第三篇:MySQL 系列(三)你不知道的 视图.触发器.存储过程.函数 ...

  4. Asp.Net Core 项目实战之权限管理系统(4) 依赖注入、仓储、服务的多项目分层实现

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  5. 给缺少Python项目实战经验的人

    我们在学习过程中最容易犯的一个错误就是:看的多动手的少,特别是对于一些项目的开发学习就更少了! 没有一个完整的项目开发过程,是不会对整个开发流程以及理论知识有牢固的认知的,对于怎样将所学的理论知识应用 ...

  6. asp.net core 实战之 redis 负载均衡和"高可用"实现

    1.概述 分布式系统缓存已经变得不可或缺,本文主要阐述如何实现redis主从复制集群的负载均衡,以及 redis的"高可用"实现, 呵呵双引号的"高可用"并不是 ...

  7. Linux实战教学笔记08:Linux 文件的属性(上半部分)

    第八节 Linux 文件的属性(上半部分) 标签(空格分隔):Linux实战教学笔记 第1章 Linux中的文件 1.1 文件属性概述(ls -lhi) linux里一切皆文件 Linux系统中的文件 ...

  8. Linux实战教学笔记07:Linux系统目录结构介绍

    第七节 Linux系统目录结构介绍 标签(空格分隔):Linux实战教学笔记 第1章 前言 windows目录结构 C:\windows D:\Program Files E:\你懂的\精品 F:\你 ...

  9. Linux实战教学笔记06:Linux系统基础优化

    第六节 Linux系统基础优化 标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 基础环境 第2章 使用网易163镜像做yum源 默认国外的yum源速度很慢,所以换成国内的. 第一步:先备份 ...

  10. Linux实战教学笔记05:远程SSH连接服务与基本排错(新手扫盲篇)

    第五节 远程SSH连接服务与基本排错 标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 远程连接LInux系统管理 1.1 为什么要远程连接Linux系统 在实际的工作场景中,虚拟机界面或物理 ...

随机推荐

  1. 网线接口调试,Android ADB网络调试!

    ADB网络调试,网线接口调试    没有USB接口,照样可以调试,可通过网线接口调试步骤! 一.第一步连接WIFI  查看wifi 的IP  win+R 键 打开运行 ,输入cmd   二.输入ipc ...

  2. Bat命令进行压缩X文件夹下的文件夹及文件

    输出日志 echo off for /d %%i in (D:\project101\trunk\x_client\xProject\Assets\AssetBundles\Android~\*.) ...

  3. KMS服务器 激活win 和 office

    环境:Debian 9.5 (Google Cloud) 切换到root用户:sudo su wget --no-check-certificate https://github.com/teddys ...

  4. zookeeper 选举流程源码解析

    在开始之前,我们先了解一下zookeeper集群角色,zookeeper中存在leader,follower, observer这么几个角色, leader, follower, 就类似与mysql ...

  5. php8.0.0新功能:Match表达式

    Match表达式是基于值的一致性进行分支计算.它的比较是严格比较.Match表达式从php8.0.0起可用.示例代码: 1 $key = 'key_1'; 2 $value = match($key) ...

  6. linux安装EMQ

    1.拉取Emqx包 wget https://www.emqx.com/zh/downloads/broker/4.2.14/emqx-centos7-4.2.14-x86_64.rpm 2.安装服务 ...

  7. 在LUbuntu上搭建Neovim+Markdown环境

    前言 想搭建自己的电子笔记系统.一开始用VMware+Ubuntu,后来想,如果这个虚拟机文件比较小,就可以用克隆到U盘里,随身带了. 于是转Lubuntu. 总体步骤 安装系统 安装neovim 安 ...

  8. 好用的天气插件www.tianqi.com/plugin/

    1.好用的天气插件https://www.tianqi.com/plugin/ 根据访问IP地址可以判断当地的天气,生成天气预报信息放到页面上. 2.天气预报接口: import requests U ...

  9. app对接微信支付(app支付)

    (先补充一下,app唤醒微信支付失败的话,在确保没错的情况下,建议换一个手机或者重新下载微信,不知道是微信缓存还是什么原因) 1.先申请好开发环境 app支付不需要公众号,所以申请好开发商号和开发平台 ...

  10. java基于ssm框架开发的公交查询系统源码公交系统源码公交路线查询项目有论文

    简介 java基于ssm的公交路线查询系统,用户可以查询公交站点公交车路线以及公交换乘方案,还可以查看公交车路线地图,以及该站点所有的公交车路线. 演示视频: https://www.ixigua.c ...