Tomcat 学习笔记(1)-程序员宅基地

技术标签: java  tomcat  ldap  数据库  

Tomcat 的组成结构 

 

    Tomcat本身是由一系列可配置的组件构成,其中核心组件是Servlet容器组件,它是所有其他Tomcat组件的顶层容器。

 每个Tomcat组件在server.xml文件中对应一种配置元素:

1.顶层类元素:包括<Server>元素和<Service>元素,它们位于整个配置文件的顶层。

2.连接器类元素:为<Connector>元素,代表介于客户与服务器之间的通信接口,负责将客户的请求发送给服务器,并将服      务器的响应结果返回给客户。

3.容器类元素:代表处理客户请求并生成响应结果的组件,有4种容器类元素,分别为<Engine>、<Host>、<Context>和    <Cluster>元素。Engin组件为特定的Service组件处理所有客户请求,Host组件为特定的虚拟主机处理所有客户请求,        Context组件为特定的Web应用处理所有客户请求.Cluster组件负责为Tomcat集群系统进行会话复制、Context组件的属    性的复制,以及集群范围WAR文件的发布。

4.嵌套类元素:代表可以嵌入到容器中的组件,如<Value>元素和<Realm>元素等

 

Tomcat的工作模式

 

    Tomcat作为Servlet容器,有以下3种工作模式:

1.独立的Servlet容器

2.其他WEB服务器进程内的Servlet容器

3.其他WEB服务器进程外的Servlet容器

 

Tomcat安全域的类型

 

    安全域是Web服务器用来保护Web应用的资源的一种机制。在安全域中可以配置安全验证信息,即用户信息(包括用户名和口令),以及用户和角色的映射关系。

1.内存域(MemoryRealm):在初始化阶段,从XML文件中读取安全验证信息,并把它们以一组对象的形式存放在内存      中。

2.JDBC域(JDBCRealm):通过JDBC驱动程序访问存放在数据库中的安全验证信息。

3.数据源域(DataSourceRealm):通过JNDI数据源访问存放在数据库中的安全验证信息。

4.JNDI域(JNDIRealm):通过JNDI provider访问存放在基于LDAP的目录服务器中的安全验证信息。

5.JAAS域(JAASRealm):利用JAAS框架进行验证。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/iteye_20482/article/details/82238011

智能推荐

人脸数据库汇总_utf人脸数据库-程序员宅基地

文章浏览阅读1.6k次。人脸数据库汇总■Annotated Database (Hand, Meat, LV Cardiac, IMM face) (Link)■AR Face Database (Link)■BioID Face Database (Link)■Caltech Computational Vision Group Archive (Cars, Motorcycle_utf人脸数据库

Layui 下拉框多选 —老司机首选(测试效果已ok)_layui 下拉多选-程序员宅基地

文章浏览阅读4.8k次。Layui 下拉框多选 —老司机首选https://blog.csdn.net/YBaog/article/details/79933223_layui 下拉多选

spring boot 项目启动报错, error :testWhileIdle is true, validationQuery not set_validationquery = "select 1" 验证连接是否可用,使用的sql语句 tes-程序员宅基地

文章浏览阅读626次。主要是使用阿里的druid报的错,pom如下:<dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.17</version></dependency>只要在yml配置文件中加上以下代码就ok,druid: #指明连接_validationquery = "select 1" 验证连接是否可用,使用的sql语句 testwhileidle =

mysql使用临时表中的数据_Mysql中的临时表使用方法讲解-程序员宅基地

文章浏览阅读271次。当工作在非常大的表上时,你可能偶尔需要运行很多查询获得一个大量数据的小的子集,不是对整个表运行这些查询,而是让MySQL每次找出所需的少数记录,将记录选择到一个临时表可能更快些,然后多这些表运行查询。创建临时表很容易,给正常的CREATE TABLE语句加上TEMPORARY关键字:CREATE TEMPORARY TABLE tmp_table (name VARCHAR(10) NOT NUL..._mysql 其他表增加数据时调用临时表中数据

python模拟键盘操作_pyuserinput 回车-程序员宅基地

文章浏览阅读1.4k次。安装步骤1,安装Pyhook进入其官网,搜索pyHook找到该文件:文件前的CP37是指python的版本,命令行中直接输入py就可以查看。选择win32的,64的可能安装不成功下载完成后,我这里放在了这个目录下 ‘E:\selenium’ ,然后cmd进入对应的目录后安装:使用命令行cmd:pip install pyHook-1.5.1-cp37-cp37m-win32.whl2, 安装pywin32使用命令行cmd:pip install PyWin32或者pycharm中安装,搜 P_pyuserinput 回车

android 二维码 条形码扫描_android 二维码条形码扫描-程序员宅基地

文章浏览阅读602次。http://blog.csdn.net/xiaanming/article/details/10163203_android 二维码条形码扫描

随便推点

关于打开CODEBLOCK配置 can't find compiler executable in your configured search path's for GUN GCC Complier_配置compiler:executable-程序员宅基地

文章浏览阅读446次。欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体..._配置compiler:executable

解决android系统唤醒时间偏长------healthd里的一些调用_healthd定频唤醒-程序员宅基地

文章浏览阅读3.9k次。目前定位到healthd的调用过程耗时太长,于是去看看power相关的一些东西healthd里一共调用了如下的节点获取数据openat(AT_FDCWD, "/sys/class/power_supply/battery/present", 1 *******openat(AT_FDCWD, "/sys/class/power_supply/battery/capacity",1_healthd定频唤醒

python运行同级目录下的文件 找不到package 显示 No module named ‘xxx‘_python 同目录脚本调用出现no module named-程序员宅基地

文章浏览阅读1.8k次,点赞2次,收藏6次。python运行同级目录下的文件 找不到package 显示 No module named 'xxx'_python 同目录脚本调用出现no module named

Jetpack常用库的简单使用(一)_jetpack的使用-程序员宅基地

文章浏览阅读4.3k次。写在前面我们经常被面试官问到,你的项目用的什么架构模式呀,MVC、MVP、MVVM ? 其实这些都是我们开发者自己设计的架构模式,非谷歌官方解决方案,我们有时候也很难把控最佳架构模式。 出于这个原因,Google官方给我们提供了Jetpack。初识JetpackJetpack是一个由多个库组成的套件,可帮助开发者遵循最佳做法,减少样板代码,并编写可在各种 Android 版本和设备中一致运行的代码,让开发者集中精力编写重要的业务代码。说白了就是谷歌官方给我们开发者提供了一套解决方案,让我们的代_jetpack的使用

详解 LSTM_lstm 讲解-程序员宅基地

文章浏览阅读6.5k次,点赞3次,收藏13次。今天的内容有:LSTM 思路LSTM 的前向计算LSTM 的反向传播关于调参LSTM长短时记忆网络(Long Short Term Memory Network, LSTM),是一种改进之后的循环神经网络,可以解决RNN无法处理长距离的依赖的问题,目前比较流行。长短时记忆网络的思路:原始 RNN 的隐藏层只有一个状态,即h,它对于短期的输入非常敏感。 再增加一个状态,即c,让它来保存长期_lstm 讲解

MAMP PRO 配置虚拟域名_mamp 修改虚拟域名-程序员宅基地

文章浏览阅读871次。打开 MAMP PRO点击 Create 按钮,重启MAMP PRO_mamp 修改虚拟域名