关于Servlet的一些归纳(1)
1、servlet接口
含5个抽象放法
void init(ServletConfig config) throws ServletException //初始化Servlet
void service(ServletRequest request,ServletResponse response) throws ServletException,IOException //获得请求数据进行处理,并响应
void destroy() //销毁
ServletConfig getServletConfig() //返回由Servlet容器传递给init()方法的ServletConfig对象
String getServeltInfo() //返回Servlet的一段描述
Servlet的生命周期:
--->实例化
--->第一次加载调用init
---->service 每次请求是都会执行
--->destroy 销毁,服务器停止时调用一次
servlet和CGI的区别:
servlet 多线程的,每次启用是调用一个线程,可以并发访问跟多
CGI:每次请求启动一个进程,并发访问数少
2、web.xml文件
<web-app>
//欢迎页,默人首页,如果不配置,默认为tomcat路径下的全局配置,如果已经配置,则会覆盖tomcat下面的全局配置
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.jsp</welcome-file>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>TestServlet</servlet-name>
<servlet-class>com.cnblog.TestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>TserServlet</servlet-name>
<url-pattern>/test</url-pattern>
</servlet-mapping>
</web-app>
3、ServletRequest接口
常用方法 String getParameter(String name) 获得请求的参数值
String[] getParameterValues(String name) 获得多个请求参数值
void setAttribute(String name,Object value) 设置属性
Object getAttribute(String name)获取参数
void removeAttribute(String name)移除参数
String getScheme() 获得请求协议
String getServletName()获得服务器名
int getServerPort()获得服务器端口号
String getLocalAddr() 获得服务器ip地址
String getRemoteAddr() 获得客户端ip地址
void setCharacterEncoding(String encode) 设置请求编码(只对post提交起作用)
对GET提交跟POST提交都管用的设置编码方式 String name = request.getParameter("name");
name = new String(name.getBytes("ISO-8859-1","UTF-8"));
4、ServletResponse接口
PrintWriter getWriter()获得输出流 ServletOutputStream getOutputStream
void setCharacterEncoding(String encode)设置响应编码
void serContextType("text/html;charser=UTF-8")设置相应编码跟MIME类型
关于Servlet的一些归纳(1)的更多相关文章
- Servlet面试题归纳
尊重原创:http://blog.csdn.net/caohaicheng/article/details/38116481 1.说一说Servlet生命周期 Servlet生命周期包括三部分: 初始 ...
- 关于Servlet的一些归纳(2)
1.web项目结构 根路径: 文件夹 文件 WEB-INF: lib(存放一些jar文件) classes(存放class文件) web.xml 2.GenericServlet类 实现了Servle ...
- java-we不在esclipse创建servlet之后改名不起作用的问题归纳
有时候我们不满意类名而去改名,但是改过了之后却发现不能实现它本来该实现的功能了,这是为什么呢,原因就是在2.5里面创建了servlet之后就会在web.xml里生成关于这个servlet的配置,你只是 ...
- Servlet和CGI的区别
Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销 ...
- 初学 Java Web 开发,请远离各种框架,从 Servlet 开发
Web框架是开发者在使用某种语言编写Web应用服务端时关于架构的最佳实践.很多Web框架是从实际的Web项目抽取出来的,仅和Web的请求和响应处 理有关,形成一个基础,在开发别的应用项目的时候则可以从 ...
- JSP/Servlet基础语法
相关学习资料 http://my.oschina.net/chape/blog/170247 http://docs.oracle.com/cd/E13222_01/wls/docs81/webapp ...
- 【重走Android之路】【路线篇(二)】知识点归纳
[重走Android之路][路线篇(二)]知识点归纳 参考:http://blog.csdn.net/xujing81/article/details/7313507 第一阶段:Java面向对 ...
- jsp与El,jstl知识点总结归纳
jsp与El,jstl知识点总结归纳 jsp部分 一.jsp的三大指令 page ,include,taglib 1.jsp中的page指令 <% page %>-设置jsp 例如: &l ...
- 图解JSP与Servlet的关系
Servlet是Java提供的用于开发Web服务器应用程序的一个组件,运行在服务器端,由Servlet容器所管理,用于生成动态的内容.Servlet是平台独立的Java类,编写一个Servlet, ...
随机推荐
- docker17.03.2安装
之前安装过docker 卸载 yum -y remove docker docker-common docker-selinux docker-engine docker-engine-selinux ...
- es6 class中责任链模式与AOP结合
责任链模式大家应该都清楚,比如JS中的冒泡,Java中的拦截器.过滤器,都运用到了责任链模式. 可以看我之前的文章介绍责任链的:https://www.cnblogs.com/wuguanglin/p ...
- Bytom Kit开发辅助工具介绍
Bytom Kit是一款为了帮助开发者更简单地理解Bytom的开发辅助工具,集合了校验.标注.解码.测试水龙头等功能. 该工具用python语言封装了一套比原的API和7个工具方法,如果有开发需求可以 ...
- SetForegroundWindow Win32-API not always works on Windows-7
BIG NOTE After messing with this API for the last 2 months, the solution/s below are all not stable ...
- js form表单的校验
if(!$("#form").validate().form()){ return false;} <元素 class="required">< ...
- Python3爬虫相关软件,库的安装
Anaconda 百度搜Anaconda清华,根据环境选择版本下载 安装时记得勾选添加到环境变量,不要还要手动添加 Anaconda Navigator可视化界面,可以方便地调用Jupyter等工具. ...
- Springboot 中配置文件的优先级和加载顺序
1. 若application.yml 和bootStrap.yml 在同一目录下,则bootStrap.yml 的加载顺序要高于application.yml,即bootStrap.yml 会优先 ...
- 【sock_stream和sock_dgram】、 【AF_INET和AF_UNIX】
[sock_stream和sock_dgram] 1.sock_stream 是有保障的(即能保证数据正确传送到对方)面向连接的SOCKET,多用于资料(如文件)传送. 2.sock_dgram 是无 ...
- 多功能版vue日历控件
下载地址:https://pan.baidu.com/s/1nvpx0tB5cIvvqHuApz_MpQ 之前写了一个简单的vue日历控件:https://www.cnblogs.com/mrzhu/ ...
- blob canvas img dataUrl的互相转换和用处
blob:代表了一段二进制数据 初始化:var blob = new Blob(array,option)//其中array里面可以包含任意类型对象,option指数据类型如array是['<h ...