- XML简介
- Tomcat
- Servlet
1.定义
XML是可扩展的标记性语言
2.主要作用
1)用来保存数据,而且这些数据具有自我描述性
2)作为项目或者模块的配置文件
3)作为网络传输数据的格式(JSON为主)
3.语法
1)文档声明
2)元素(标签)
①XML元素标签指的是从开始标签直到结束标签的部分
②XML命名规则
- 名称可以含字母、数字以及其它的字符
- 名称不能以数字或者标点符号开始
- 名称不能以"XML"开始
- 名称不能包含空格
3)XML属性
- 属性可以提供元素的额外信息
- 每个属性的值必须使用"引号"引起来
4)XML注释
5)语法规则
- 所有XML元素都必须要有关闭标签(也就是闭合)
- XML标签对大小写敏感
- XML标签必须正确的嵌套
- XML文档必须有根元素
时间简史 霍金66 JavaWeb 李老师9.9
4.dom4j解析技术
public void test() throws Exception{
//1.读取books.xml文件
SAXReader reader = new SAXReader();
Document document = reader.read("src/books.xml");
//2.通过Document对象获取根元素
Element RootElement = document.getRootElement();
//3.通过根元素获取book标签对象
list books = rootElement.elements("book");
//4.遍历,处理每个book标签转换为Book类
for(Element book:books){
Element nameElement = book.element("name");
String nameText = nameElement.getText();
String priceText = book.elementText("price");
String authorText = book.elementText("author");
String snValue = book.attributeValue("sn");
System.out.println(new Book(snValue,nameText,Double.parseDouble(priceText),authorText));
}
}
Tomcat
1.JavaWeb的概念
1)什么是JavaWeb
JavaWeb是指所有通过Java语言编写可以通过浏览器访问的程序的总称
JavaWeb是基于请求和响应来开发的
2)什么是请求
请求是指客户端给服务器发送数据,叫请求Request
3)什么是响应
响应是指服务器给客户端回传数据,叫响应Response
4)请求和响应的关系
请求和响应是成对出现的,有请求就有响应
2.Web资源的分类
web资源按实现的技术和呈现的效果的不同,又分为静态资源和动态资源两种
静态资源:html、css、js、txt、jpg图片
动态资源:jsp页面、Servlet程序
3.常用的Web服务器
- Tomcat:由Apache组织提供的一种Web服务器,提供jsp和Servlet的支持,它是一种轻量级的JavaWeb容器(服务器),也是应用最广的JavaWeb服务器(免费)。
- Jnoss
- GlassFish
- Resin
- WebLogic
4.Tomcat的使用
1)目录介绍
- bin:专门用来存放Tomcat服务器的可执行程序
- conf:专门用来存放Tomcat服务器的配置文件
- lib:专门用来存放Tomcat服务器的jar包
- logs:专门用来存放Tomcat服务器运行时输出的日记信息
- temp:专门用来存放Tomcat运行时产生的临时数据
- webapps:专门用来存放部署的Web工程
- work:是Tomcat工作时的目录,用来存放Tomcat运行时jsp翻译为Servlet的源码,和Session钝化的目录
2)如何启动Tomcat服务器
找到Tomcat目录下的bin目录下的startup.bat文件,就可以启动
测试启动成功:浏览器中输入以下地址测试:
http://localhost:8080
3)启动Tomcat失败的原因
双击startup.bat,出现一个小黑窗口一闪而逝,是因为没有配置好JAVA——HOME环境变量
4)如何修改Tomcat服务器端口号
找到Tomcat目录下的conf目录,找到server.xml中的Connector标签修改port属性,修改后一定要重启Tomcat服务器才能生效
5)如何部署Web工程到Tomcat中
第一种部署方法:只需要把Web工程的目录拷贝到Tomcat的webapps目录下即可
第二种部署方法:找到Tomcat下的conf目录Catalinalocalhost下,创建如下的XML配置文件:
< Context path=“/web01” docBase=“E:IdeaProjectJavaWeboutartifactsweb01_war_exploded” />
6)
当输入http://ip:port/ 没有工程名的时候,默认访问的是ROOT工程
当输入http://ip:port/工程名/ 没有资源名,默认访问的是index.html页面
5.IDEA整合Tomcat服务器
File -> Settings -> Build -> Application Servers
6.动态Web工程目录的介绍
Servlet
src目录存放编写的java源代码
web目录专门用来存放web工程
WEB-INF目录是一个受服务器保护的目录,浏览器无法直接访问到此目录的内容
web.xml是整个动态Web工程的配置部署描述文件,这里可以配置很多Web工程的组件比如
Servlet程序 Filter过滤器 Listener监听器 Session超时 等等
- lib目录用来存放第三方的jar包(IDEA还需要自己配置导入)
1.Servlet技术
1)什么是Servlet
①Servlet是JavaEE规范之一。规范就是接口
②Servlet就是JavaWeb三大组件之一,分别是:Servlet程序、Filter过滤器、Listener监听器。
③Servlet是运行在服务器上的一个java小程序,可以接收客户端发送过来的请求,并响应数据给客户端
2)手动实现Servlet程序
①编写一个类去实现Servlet接口
②实现service方法,处理请求,并响应数据
③到web.xml中去配置Servlet程序的访问地址
HelloServlet com.zty.servlet.HelloServlet HelloServlet /hello
3)Servlet的生命周期
①执行Servlet构造器方法
②执行init初始化方法
第一、二步在第一次访问的时候创建Servlet程序时会调用
③执行service方法
第三步,每次访问时都会调用
④执行destory销毁方法
第四步,在Web工程停止的时候调用
4)Get和Post请求的分发处理
public void service(ServletRequest servletRequest,ServletResponse servletResponse) throws ServletException,IOException{
//类型转换(因为它有getMethod()方法)
HttpServletRequest httpServletRequest = (HttpServletRequest)servletRequest;
//获取请求的方式
String method = httpServletRequest.getMethod();
if("GET".equals(method)){
doGet();
}else if("POST".equals(method)){
doPost();
}
}
5)通过继承HttpServlet实现Servlet程序
一般在实际项目开发中,都是使用继承HttpServlet类的方式去实现Servlet程序
①编写一个类去继承HttpServlet类
②根据业务需要重写doGet或doPost方法
③到web.xml中的配置Servlet程序的访问地址
6)Servlet类的继承体系
2.ServletConfig类
ServletConfig类从类名上来看,就知道是Servlet程序的配置信息类
Servlet程序和ServletConfig对象都是由Tomcat负责创建,我们负责使用
Servlet程序默认是第一次访问的时候创建,ServletConfig是每个Servlet程序创建时,就创建一个对应的ServletConfig对象
1)ServletConfig类的三大作用
①可以获取Servlet程序的别名servlet-name的值
servletConfig.getServletName();
②获取初始化参数init-param
servletConfig.getInitParameter(“username”);
< servlet >
< init-param >
< param-name >username< /param-name >
< param-value >root< /param-value >
< /init-param >
< /servlet >
③获取ServletContext对象
servletConfig.getServletContext();
3.ServletContext类
1)什么是ServletContext?
①ServletContext是一个接口,它表示Servlet上下文对象
②一个web工程,只有一个ServletContext对象实例
③ServletContext对象是一个域对象
域对象是可以像Map一样存取数据的对象,这里的域指的是存取数据的操作范围
存数据 取数据 删除数据 Map put() get() remove() 域对象 setAttribute() getAttribute() removeAttribute()



