标签:style blog http io ar os 使用 sp java
内容概要:
1.继续讲解server.xml中的一些设置知识点
2设置外部WEBAPP及使用根目录开发
3.重头戏Servlet及相关知识
关键词:
TomCat,web.xml,connectionTimeout="20000" ,appBase = "webapps",线程池配置,servlet版的HelloWorld
详细内容:
一.继续讲解server.xml中的一些设置知识点
接下来,我们还是看我们的TomCat.
我们上节课呢,我们开发了myweb,我们是如何开发这个myweb的呢,我们一起来回忆一下
首先是myweb,myweb下呢是WEB-INF,那么WEB-INF下呢便是web.xml
打开web.xml,我们来看下上节课,没有讲到的一些东西.打开tomcat\conf\server.xml
这个shutdown端口就是关闭服务器的一个端口,我们再关闭这个服务器的时候呢,就是向这个端口呢发送了一个关闭服务器的消息将其关闭.
B:再往下走呢
其中这个Connector 中的port是连接端口,上节课凯哥讲过,而且我们也做过笔记.
connectionTimeout="20000" //这句话是超时时间20s,如果我们的网站对其有要求而且我们的服务器响应比较快呢,可以减小.调节的目的呢,就是客户端发送过来的时候响应时间应该是多少.
C:往下呢,还有一些配置要说一下
appBase = "webapps",appBase是个什么东西呢,是你的应用程序地址.就是节课,我们都是把myweb放在webapps目录中,其实webapps这个目录是可以改的,在哪改呢?就是在这个appBase中去改.
那么来改一下,我们在tomcat目录中新建立一个文件夹叫xiognda_webapps,我们把myweb给移动进去.同时将webapps改成xiognda_webapps,
重启tomcat,我们输入http://localhost:8080/myweb/a.jsp
我们发现我们现在的目录是在xiongda_webapps下,也就是说我们的appBase自定义设置成功
D:还有两个配置就是解包和自动部署
解包和自动部署呢,我们先了解一下是什么意思就可以了,因为后面会学习到.
如果是压缩包的,会问你要不要解包,如果你是新的呢,会问你要不部署,只要知道就ok了
E:接下来我们继续讲,
这块呢有个线程池的设置,虽然是被注释的,但实际上是可以也需要配置的.
什么是线程池配置呢?我们来看一下.
浏览器呢,有很多种,有IE,有谷歌,TomCat是一个一对多的服务,当仅有一个IE对TomCat进行访问的时候呢,是单线程.如果再有其他人来访问的时候,tomcat就必须提供多线程的服务.
简单来说就好比一个饭店,如果来一个人,那么一个厨子是够的,如果同一时间段来五个人呢,可能勉勉强强能够忙的过来,但是同一时间段如果来十个人呢,我就必须再请一个厨子,才能够忙的过来.如果同一时间段来二十个人呢,我就再请一个,也就是三个厨子才能忙的过来如果突然暴涨来一百个人怎么办呢,对不起我不能可能请一百个厨子,请在我三个厨子的极限二十个客户以外的八十个人稍微等等.如果要问为什么,.但是我不可能一直不停增加厨师数量,因为每一时间段的客户量是不定量,肯能正好够我请的厨子这些人的工作量,也有可能只来一个人,那么我这些厨师的工资不是白给了.所以必须结合自己的客流量实际情况选择请合适人数的厨师,也就是线程数.
来来,小朋友们,我们来把这个线程数放开并设置为150个.
其中minspareThreads就是最小启动数,也就是咱们餐馆正式工有4个,其余的话146都是临时工,忙的时候才来.
那么我们这服务器就同一时间就只开放150个座位也就是150个人来访问.
二.设置外部WEBAPP及使用根目录开发
好,接下来我们继续,如果我们要配置一个外部WEBAPP,怎么办呢?
我们打开conf下的server.xml 添加一个字段
<Context path="/myweb" docBase="e:\Jsp_Code\JBlog" reloadable="true" debug = "0"/>
就这么一段就可以了,那分别是什么意思呢?
C: 热部署 就是当服务器开着 如果你把工程内部修改,它也会更新,实
时加载,主要设置jsp
D:就是调试模式,例如你访问服务器上的不存在的页面,就会返回404给你.
我们进server.xml设置一下
然后我们在打开这个http://localhost:8080/myweb/a.jsp
我们发现我们可以访问这个外部的web目录了
还可以有两种形式来配置外部web目录
2.只有一个/
或者直接""
但是我们实际访问,发现都是404为啥? 因为主目录的root失去效果
很多人会问这个root是干啥的呢.其实这个root还是很重要
ROOT一般是放欢迎界面的,如果我们有一个myweb,一般我们是放进ROOT里面,但是我们
访问是通过http://localhost/myweb访问的,如果我们想使用http://localhost/来访问myweb里面
的内容怎么办呢?也就是我们想占领这个http://localhost/这个路径怎么办呢?
把myweb里面的内容全部拿到ROOT下
同样外部的WEBAPP也可以利用原理这个来替换
三.重头戏Servlet
接下来呢,我们就抛离TomCat的知识点了,我们来讲一讲Servlet,Servlet作为以前sun的web最核心的技术之一.
好了,我们把目光转向web这一部分,web不仅仅是jsp还有各种其他语言,他们的特点呢如下图.
在我们平常的web应用程序,既会有静态页面也会有动态页面,那么什么是静态页面,什么又是动态页面呢?
商业的网站基本上都是动态+静态,混合编程.
那么既然我们要写servlet 我们首先看看servlet与jsp的关系吧
说了这么多,我们来实际开发一个servlet吧!
1.新建myeweb,
2.将ROOT下的WEB-INF拷贝过来
3.在myweb\WEB-INF新建立一个classes文件夹,建立A.java
那么在这个A.java中我们应该写些啥呢,我们来写个servlet版的HelloWorld吧!
4.将tomcat\lib\servlet-api.jar考入jre\lib\ext下,并将tomcat\lib\servlet-api.jar设置进classpath环境变量
5.在web.xml中添加你的servlet信息
6.重启
7.ok
那我们来把这个Servlet给分析一下,如下图
以上为凯歌学堂2014/11/8号之课程笔记.@Author 熊大 2014.11.10.
J2EE学习笔记02 Server.xml知识点及Servlet初步
标签:style blog http io ar os 使用 sp java
原文地址:http://www.cnblogs.com/miosec/p/4148412.html