关于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, ...
随机推荐
- RHCSA
系统管理 redhat 7 破解修改root密码 修改系统主机名 修改系统地址掩码网关 创建系统默认软件仓库 安装系统内核升级 绑定到外部验证服务LDAP.配置 autofs 用户组管理 创建用户组 ...
- Vue/Egg大型项目开发(一)搭建项目
项目Github地址:前端(https://github.com/14glwu/stuer)后端(https://github.com/14glwu/stuer-server) 项目线上预览:http ...
- Java笔试
异常 Throwable是Java错误处理的父类,有两个子类:Error和Exception. Error:无法预期的严重错误,导致JVM虚拟机无法继续执行,几乎无法恢复捕捉的 Exception:可 ...
- The dependency `XXX` is not used in any concrete target.
1.在新建项目,引入CocoaPod时,当创建了podfile文件后,执行pod install时报一下错误 2.这是因为 这个第三方不知道用于哪个target,所以必须指定target 解决方案 ...
- P3224 [HNOI2012]永无乡
思路 平衡树+启发式合并 貌似也可以线段树合并 连边就是合并两个Treap,查询就是第k大 使用Treap,好写好调 代码 #include <cstdio> #include <a ...
- [Redis] - redis实战1
rememberMe>>>>:null Creating a new SqlSession SqlSession [org.apache.ibatis.session.defa ...
- linux中查找(find、locate、which、whereis、grep)命令汇总、帮助命令(man、whatis、apropos、info、help)汇总
(一)find命令详解 find:功能:文件搜索: 语法:find[搜索范围][匹配条件]: 只要匹配条件完全符合才可以被显示,使用通配符*匹配条件*则可以显示匹配条件的所有目录,问号?匹配单个字符 ...
- TCGA一些数据库
最出名,http://www.cbioportal.org/ 特色:最基本的简单分析基因突变.共表达/共突变的基因,下载数据也可以,最常看的应该还是oncoPrint那个. 详细用法:TCGA数据库的 ...
- python实现简单二分查找
#!/usr/bin/pythondef binary_search(list, item): low = 0 high = len(list)-1 while low <= high: mid ...
- 在微信浏览器中 location.reload() 不刷新解决方案(直接调用方法)
1.问题 在微信浏览器中,需要时刷新当前页面. 正常情况下我们直接使用 location.reload 方法来刷新. 2.解决方法 function realod(){ var {search,hre ...