servlet映射
为什么需要映射:
我们写的是JAVA需要通过浏览器来访问,而浏览器需要连接web服务器,所以我们需要在web中写我们的Servlet,在web中我们还需要给浏览器一个访问地址
第一种:使用web.xml
把字符编码格式转为UTF-8
<init-param>
<param-name>u</param-name>
<param-value>utf-8</param-value>
</init-param>
在tomcat启动的时候 执行创建对象方法(servlet的无参构造)和初始化方法就
<load-on-startup>1</load-on-startup>
第二种:
后台
页面
ServletContext(共享数据)
web容器在启动的时候,它会为每个web程序都创建一个对应的ServletContext对象,它代表了当前的web应用;
简介:
- 这个对象全局唯一,而且工程内部的所有Servlet都共享这个对象。所以叫全局应用程序共享对象。
- ServletContext(域对象)是服务器在内存上创建的存储空间,用于在不同动态资源(servlet)之间传递与共享数据。
关于使用方法:
//方法一:
getServletContext().setAttribute("xxx",123);
//方法二:
//获取自己的类
servletcontext context = this.getServletContext( );
//调用setAttribute方法
context.setAttribute( s: "name ",name);
在别的servlet就通过第一个参数来获取到值
关于获取的方式:
//方法一:
getServletContext().getAttribute("xxx",123);
//方法二:
//获取自己的类
servletcontext context = this.getServletContext( );
//调用getAttribute方法 获取值
Objecr name = context.getAttribute( s: "name ",name);
需要注意的是在运行的时候 servletcontext在哪个类放入的数据,在运行的时候(放入数据)的类没有运行 而选择直接运行获取servletcontext数据的类的话 会出现null