- 一、服务器
服务器:安装了服务器软件的计算机
服务器软件:接收用户的请求,处理请求,做出响应
web服务器:
webloginc:oracle公司的,大型的,收费的
JBOSS:JBOSS公司的,大型的,收费的
webSphere:IBM公司的,大型的,收费的
tomcat:apache基金组织,中小型,免费的
tomcat:
1、下载
2、安装:解压即可
注意:解压目录不要有中文和空格
3、卸载:直接删除文件夹
?????tomcat目录结构
bin:可执行文件
conf:配置文件
lib:依赖jar包
logs:日志文件
temp:临时文件
webapps:存放我们的web项目
work:存放的运行时数据(class文件)
4、启动:
bin/startup.bat
验证:在浏览器中输入localhost:8080(127.0.0.1:8080)
如果成功看见猫咪
启动有可能出现的问题:
1、黑窗口一闪而过:
JAVA_HOME是否配置正确
2、启动报错:
端口占用
1、关闭占用的端口
百度;
2、修改自身的端口号
conf/server.xml
5、关闭
1、shutdown.bat
2、ctrl+c
3、直接X
6、部署:
1、直接向项目放入webapps
简化:先将项目打包成war包(压缩文件的格式),直接将war包放入webapps
war会自动解压
2、配置虚拟路径
conf/server.xml中 的中配置一段代码
docBase:项目的真实路径
path:虚拟路径
<Context docBase="C:\Users\Administrator\Desktop\web" path="/aaa"/>
3、在\conf\Catalina\localhost 创建一个任意名称的xml
将tomcat整合到idea中:
动态web项目:
目录结构:
----根目录
---WEB-INF目录:
-web.xml;web项目的核心配置文件
-classes:存放字节码
-lib:存放jar
- 二、xml介绍
xml:可扩展性的文件
功能:
1、作为框架的配置文件
2、方便在网络中传输数据
<a>
<b></b>
<c></c>
</a>
xml和html的区别:
1、xml的标签都是自定义的,html的标签是预定义
2、xml的语法比html严谨
3、xml是用于存储数据的,html是展示数据的
基本语法:
1、文件以.xml结尾
2、xml的文件第一行,必须是文档声明(固定的)
3、xml中只能有一个根标签
4、属性的值需要用引号引起来
5、所有的标签必须正常关闭
6、xml区分大小写
例如:描述一个人
<person id="1">
<name>coco</name>
<age>12</age>
</person>
xml的解析:
解析方式:
sax:一行一行解析
dom:一次性将文档的内容加载到内存中,形成dom树
解析技术:
JAXP,JDom,jSoup(html),dom4j
- 三、servlet的介绍
servlet:
运行在服务器端的小程序
Servlet是一个接口,定义自己的servlet实现接口
入门:
1、创建一个Myservlet 实现servlet接口 复写方法
2、在init(),service(),destroy()方法中添加输出语句
3、在web.xml中注册我们创建的servlet
<servlet>
<servlet-name>MyServlet</servlet-name>
<servlet-class>com.xmcc.servlet.MyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/myServlet</url-pattern>
</servlet-mapping>
servlet的生命周期:
init(), 第一次访问servlet的时候调用(初始化)
service(),每一个访问都会调用,(处理请求和响应)
destroy(),服务器关闭
执行原理:
1、当服务器接收到客户端浏览器的请求后,会解析URL路径,获取到访问的Servlet的资源路径
2、拿到资源路径通过web.xml文件进行查找,是否有对应的url-pattern
3、如果有,则查找对应的servlet-class 获取全路径名
4、tomcat会将字节码文件加载进内容,并创建对象
5、调用方法
注意:通过web.xml方式配置servlet是web3.0版本以前 常用的方式
那么在3.0版本后,使用注解的方式 代替 配置文件
servlet注解方式:
@WebServlet(value="/myServlet1",name = "MyServlet1")
String name() default ""; 名字
String[] value() default {}; 访问路径
String[] urlPatterns() default {}; 访问路径
int loadOnStartup() default -1; 启动时机
WebInitParam[] initParams() default {}; 初始化参数
loadOnStartup:servlet初始化时机
默认是第一次访问servlet的时候初始化 这个时候loadOnStartup值为-1
servlet重要的对象:
ServletConfig:servlet配置对象
1、获取取当前servlet的名字
2、获取当前servlet的初始化数据
3、获取servletContext对象
(域对象)ServletContext: 上下文对象(全局管理者,整个项目共享的对象)
每个web项目启动的时候,都会创建一个servletContext对象,
servletContext会随着web的启动而创建 销毁则销毁
1、数据共享
setAttribute()
getAttribute()
removeAttribute()
2、获取文件的真实路径
getRealPath()
3、以流的形式返回文件
getResourceAsStream()
4、获取web的初始化参数
在web.xml的根目录下面进行配置
<context-param>
<param-name></param-name>
<param-value></param-value>
</context-param>
context.getInitParameter()