JavaWeb01--Tomcat

1、JavaWeb概述

Web开发是基于请求和响应的:

请求:浏览器(客户端)向服务器发送信息

响应:服务器向浏览器回送信息

请求和响应是成对出现的。

Web资源分类

所谓Web资源即放在Internet网上供外界访问的文件或程序,又根据它们呈现的效果及原理不同,将它们划分为静态资源和动态资源。

静态Web资源:固定不变数据文件(静态网页 HTML、文本、音频、视频)

静态Web技术:HTML+CSS+JavaScript (HTML5+CSS3)

动态Web资源:一段程序,运行后,生成数据文件

动态Web技术:servlet,jsp...

1.1 常见的web服务器介绍

Tomcat: 由Apache组织提供的一种web服务器,提供对Jsp和Servlet的支持。这是一个轻量级的javaweb服务器,也是当前应用最广的javaweb服务器

JBoss: 是一个种遵从javaEE规范,开放源代码的,纯java的web服务器。

GlassFish:  由Oracle公司的一款javaweb服务器,是一款强健的商业兼容应用服务器。达到产品级质量,可免费用于开发,部署和重新分发,但是应用不是很广

Resin:是CAUCHO 公司的产品,是一个非常流行的 application server,对 servlet 和JSP 提供了良好的支持,性能也比较优良,应用越来越广,Resin 自身采用 IAVA 语言开发。

Weblogic:是Oracle 公司的产品,是目前应用最广泛的 web 服务器,支持JavaEE规范,而且不断的充善以适应新的开发要求,适合大型项目。

2、Tomcat

2.1 Tomcat下载安装

Tomcat官网

2.2 Tomcat目录结构

2.3 Tomcat启动和关闭

Tomcat的默认端口是 8080

注意事项:
如果日志出现乱码问题:apache-tomcat-9.0.85\conf\logging.properties  改为GBK即可
如果启动过程中出现端口被占用:apache-tomcat-9.0.85\conf\server.xml  大概69行

访问地址:http://localhost:8080   或 http://127.0.0.1:8080

2.4 修改Tomcat端口

tomcat默认端口是8080 ,建议不要修改。如想要修改端口找到修改端口的位置进行修改,如下:

apache-tomcat-9.0.85\conf\server.xml

<Connector port="8080" protocol="HTTP/1.1"connectionTimeout="20000"
redirectPort="8443" />

2.5 查看windows端口占用情况

如果端口被占用了,又不知道是哪个应用程序所占用,可以直接找到占用的应用程序,关闭即可

在命令行中输入: netstat -ano

pid代表一个进程的编号,通过这个编号可以找到对应的程序

3、Tomcat服务器发布项目

3.1 项目发布的步骤

1、把要发布的项目,部署到tomcat服务器

2、启动tomcat(注意上一个tomcat服务是否关闭)

3、通过浏览器进行访问

3.2 项目发布方式

3.2.1 方式一 conf/server.xml发布

1、创建项目 D:\taobao\hello.html

2、发布项目

在conf/server.xml文件中找到Host标签内最后书写如下内容:
<Context path="/yanqi" docBase="D:\taobao" />
</Host>

3、访问项目

缺点:
方式一这种发布方式比较麻烦,如果你配置有问题,你tomcat下的其他项目也会启动失败。很少使用,了解即可

3.2.2 方式二   conf/Catalina/localhost/xxx.xml

1、创建项目 D:\taobao\hello.html

2、配置 apache-tomcat-9.0.85\conf\Catalina\localhost\yiyan.xml

在yiyan.xml中配置
<Context docBase="D:\taobao" />

3、访问项目

3.2.2 方式三  把项目放在webapps目录

1、创建项目 D:\taobao\hello.html

2、把  taobao项目 放在webapps目录

taobao项目名即是访问路径

为了模拟真实的项目发布,把先项目进行zip压缩(一定要进项目中进行压缩),再改为war

当服务启动时,tomcat会自动把war进行解压

3、项目访问

4、Tomcat管理工具

点击取消按钮。把提示如下内容复制到 conf/tomcat-users.xml  保存,重启服务器

把提示的内容
<role rolename="manager-gui"/>
<user username="tomcat" password="s3cret" roles="manager-gui"/>

再次登录,看到tomcat管理页面

5、Tomcat集成IDEA开发工具

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/649309.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

31、WEB攻防——通用漏洞文件上传JS验证mimeuser.ini语言特性

文章目录 文件上传一、前端验证二、.user.ini 文件上传 检测层面&#xff1a;前端、后端等检测内容&#xff1a;文件头、完整性、二次渲染等检测后缀&#xff1a;黑名单、白名单、MIME检测等绕过技巧&#xff1a;多后缀解析&#xff08;php5、php7&#xff09;、截断、中间件特…

代码随想录算法训练营第十四天|二叉树基础-二叉树迭代-二叉树

文章目录 二叉树基础二叉树种类满二叉树完全二叉树二叉搜索树平衡二叉搜索树 二叉树的存储方式链式存储顺序存储 二叉树的遍历方式二叉树的定义 二叉树的递归遍历144.二叉树的前序遍历代码&#xff1a; 145.二叉树的后序遍历代码&#xff1a; 94. 二叉树的中序遍历代码 二叉树的…

「阿里云」幻兽帕鲁个人服务器已上线,3分钟快速搭建

基于阿里云搭建幻兽帕鲁服务器方法&#xff0c;1到2分钟部署完成&#xff0c;稳定运行无卡顿&#xff0c;阿里云服务器网aliyunfuwuqi.com分享保姆级手把手教程&#xff0c;基于阿里云计算巢、云服务器或无影云桌面都可以&#xff1a; 基于阿里云幻兽帕鲁服务器创建教程 基于…

EasyExcel实现导出图片到excel

pom依赖&#xff1a; <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>3.1.0</version> </dependency> 实体类&#xff1a; package com.aicut.monitor.vo;import com.aicut.monit…

CSDN年度报告图片卡通小人收集

摘要&#xff1a;CSDN推出的年度报告真的太赞了&#xff0c;还定制了诸如“情感的编织者”“敏锐的激励者”“灵感的捕捉者”“组织的表达者”“洞悉的指挥家”“心灵的领航员”“生动的记录者”“温暖的叙述者”“理性的探索者”等等精准且浪漫的标签&#xff0c;加上非常有灵…

基于Java SSM框架实现在线考试系统项目【项目源码+论文说明】

基于java的SSM框架实现在线考试系统演示 摘要 21世纪的今天&#xff0c;随着社会的不断发展与进步&#xff0c;人们对于信息科学化的认识&#xff0c;已由低层次向高层次发展&#xff0c;由原来的感性认识向理性认识提高&#xff0c;管理工作的重要性已逐渐被人们所认识&#…

modelscope下载模型

# 私有模型下载&#xff0c;前提是您有响应模型权限 方法1 git lfs install git clone http://oauth2:your_git_tokenwww.modelscope.cn/<namespace>/<model-name>.git 如何获取git token 用您的账号登录https://www.modelscope.cn &#xff0c;在个人中心->访…

正确看待华为鸿蒙……是盲目跟风吗?

先要了解纯血鸿蒙是什么&#xff1f;与之前的套壳Android版本区别在哪&#xff1f;了解这核心东西之后才会真正的看出“纯血鸿蒙”的未来与发展。 纯血鸿蒙全栈自研 HarmonyOS NEXT系统底座全线自研&#xff0c;去掉了传统的Linux内核以及AOSP等代码&#xff0c;仅支持鸿蒙内…

3分钟搭建幻兽帕鲁私服,无需任何命令代码,点点鼠标一键部署

想玩《幻兽帕鲁》和朋友们一起乐呵呵&#xff1f;这个指南教你怎么在阿里云上弄个游戏服务器&#xff0c;超简单。点几下鼠标&#xff0c;2、3分钟就搞定&#xff0c;不用头疼设置那些复杂的东西。一键部署幻兽帕鲁私服&#xff0c;告诉你私服怎么搭建 本次利用阿里云服务器的…

极限【高数笔记】

【分类】分为了两大类&#xff0c;一个是数列的极限&#xff0c;一个是函数的极限 【数列的极限】 1.定义&#xff1a; 简单来讲&#xff0c;就是&#xff0c;当n无限趋近于无穷时&#xff0c;数列{an}无限趋近一个常数A&#xff0c;此时&#xff0c;常数A就是它们此时情况下的…

springboot快速写接口

1. 建proj形式 name会变成文件夹的名字&#xff0c;相当于你的项目名称 基础包 2. 基础依赖 3. 配置数据库 这里要打开mysql&#xff0c;并且创建数据库 方法&#xff1a; 安装好数据库&#xff0c;改好账号密码用navicat来建表和账号配置properties.yml文件即可 4.用res…

Aleo项目详细介绍-一个兼顾隐私和可编程性的隐私公链

Aleo上线在即&#xff0c;整理一篇项目的详细介绍&#xff0c;喜欢的收藏。有计划做aleo节点的可交流。 一、项目简介 Aleo 最初是在 2016 年构思的&#xff0c;旨在研究可编程零知识。公司由 Howard Wu、Michael Beller、Collin Chin 和 Raymond Chu 于 2019 年正式成立。 …

【K12】运用tk控件演示欧姆定律串联电阻小应用

上述代码是一个基于Python的图形用户界面&#xff08;GUI&#xff09;应用程序&#xff0c;用于演示欧姆定律。用户可以通过输入电阻值来计算电流&#xff0c;并在图形上显示结果。该程序使用了Tkinter库来创建GUI&#xff0c;matplotlib库来绘制图形&#xff0c;以及numpy库进…

Unity出AAB包资源加载过慢

1&#xff09;Unity出AAB包资源加载过慢 2&#xff09;Unity IL2CPP打包&#xff0c;libil2cpp.so库中没有Mono接口 3&#xff09;如何在URP中正确打出Shader变体 4&#xff09;XLua打包Lua文件粒度问题 这是第370篇UWA技术知识分享的推送&#xff0c;精选了UWA社区的热门话题&…

Ubuntu20.04输入法异常导致的黑屏:fcitx和ibus输入法的卸载与安装

Ubuntu20.04输入法异常导致的黑屏&#xff1a;fcitx和ibus输入法的卸载与安装_ubuntu卸载fcitx-CSDN博客 问题背景 系统&#xff1a;Ubuntu20.04 由于fcitx的不完整配置&#xff0c;导致fcitx输入法无法正常工作。决心卸载所有输入法&#xff0c;重新安装。但是由于在没有完整…

[每日一题] 01.26 - 最长连号

最长连号 n int(input()) lis list(map(int,input().split())) res for i in range(n - 1):if lis[i] 1 lis[i 1]:res 1else:res 0res res.split(0) print(len(max(res)) 1)或者&#xff1a; n int(input()) lis list(map(int,input().split()))Max 1 for i in …

研发日记,Matlab/Simulink避坑指南(五)——CAN解包 DLC Bug

文章目录 前言 背景介绍 问题描述 分析排查 解决方案 总结 前言 见《研发日记&#xff0c;Matlab/Simulink避坑指南&#xff08;一&#xff09;——Data Store Memory模块执行时序Bug》 见《研发日记&#xff0c;Matlab/Simulink避坑指南(二)——非对称数据溢出Bug》 见《…

win10安装redis并配置加自启动(采用官方推荐unix子系统)

记录&#xff0c;为啥有msi安装包&#xff0c;还这么麻烦的用linux版本redis的安装方式&#xff0c;是因为从github上下载别人制作的msi报毒&#xff0c;还不止一处&#xff0c;这种链接数据库的东西&#xff0c;用别人加工过的&#xff0c;都报毒了还用就是傻逼了。 所以采用…

【第四天】蓝桥杯备战

题 1、求和2、天数3、最大缝隙 1、求和 https://www.lanqiao.cn/problems/1442/learning/ 解法&#xff1a;字符串方法的应用 import java.util.Scanner; // 1:无需package // 2: 类名必须Main, 不可修改public class Main {public static void main(String[] args) {Scann…

c++ vector 赋值 只能用push_back()赋值 ?使用下标赋值出错,不能使用标赋值吗?

文章目录 1 push_back()赋值2 下标赋值2.1 下标赋值出错2.2 vector 真的 不能使用标赋值吗&#xff1f;2.2.1 只能使用push_back() 赋值情况2.2.2 push_back() 和 下标赋值 都可以2.2.3 先push_back()赋值&#xff0c;再下标赋值 2.3 push_back() 和 下标赋值 两种特点对比测试…