大家好,又见面了,我是你们的朋友全栈君。
什么是servlet?
手动实现Servlet
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0">
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>com.atguigu.servlet.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/hello/</url-pattern>
</servlet-mapping>
</web-app>
servlet生命周期
1,2只是在被访问的第一次执行,3会在背刺被访问的时候执行,4在web工程停止的时候执行
一般在实际项目中,都是使用继承HttpServlet类的方式去实现servlet程序。
ServletConfig类 ServletConfig类从类名上来看,就知道是Servlet程序的配置信息 三大作用
Servlet程序和Servlet对象都是Tomcat负责创建,我们负责使用 Servlet程序默认是第一次访问的时候创建,ServletConfig是每个Servlet程序创建的时,就创建一个对应的ServletConfig对象
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>com.atguigu.servlet.HelloServlet</servlet-class>
<init-param>
<param-name>root</param-name>
<param-value>123456</param-value>
</init-param>
</servlet>
ServletContext类
域对象 是可以像Map一样存取数据的对象,叫做域对象,这里域指的是存取数据的操作范围。
作用
请求转发 getRequestDispatcher(’/servlet’); 特点:
base标签设置页面相对工作时参照的路径
<base href="http://localhost:8080/07_servlet/a/b/">
web中斜杠的不同意义 /斜杠如果被浏览器解析,得到的地址是:http://ip:port/ 情况
请求重定向
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//方式1
resp.setStatus(302);
resp.setHeader("Location","http://localhots:8080/07_sservlet/response2");
//方式2
resp.sendRedirect("\"http://localhots:8080/07_sservlet/response2\"");
}
javaweb三层架构
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/168817.html原文链接:https://javaforall.cn