Servlet(2)
HttpServlet
简介:
Servlet 就是一个普通的java类,是运行在web容器上(tomcat)上的一个java类
用来通过Servlet中的代码,接受Http中浏览器的请求信息,以及对浏览器相应信息。
Servlet 默认情况下为单例模式,且每次用户访问,都会开启新的现场,调用serivice方法,请求处理!
编写步骤:
1,编写一盒java类,继承自HttpServlet.
2,重写父类的service方法。
3,,在service方法中,处理请求 以及进行相应。
4,将编写的Servlet通过web.xml 想tomcat进行映射。
web.xml中 添加映射
web.xml在项目中的位置:
项目/webContent/web-inf/web.xml
步骤1:
向Servlet信息,配置到web.xml,并起别名;
<servlet>
<servlet-name>任意标识符(别名)</servlet-name>
<servlet-class>类的全称(包名.类名)</servlet-class>
</servlet>
步骤2:
-根据别名,映射对应的网址
<servlet-mapping>
<servlet-name>步骤1中的别名</servlet-name>
<url-pattern>/地址</url-pattern>
</servlet-mapping>
url-pattern:
编写的是用户通过浏览器所访问的地址 , 我们仅需要编写相对路径即可 !
例如:
/sbgww
访问此servlet的网址为:
http://ip地址:端口号/项目名/sbgww
Servlet常用操作:
1,设置相应编码:
方式一:
response.setContentType("test/html;charset=utf-8");
用于相应页面内容,进行设置编码格式!
方式二:
response.setCharacterEncoding("utf-8");
常用于编写往立接口,用于返回XML或JSON信息!
2,通过相应对象,获取输出流
PrintWriter out = response.getWriter();
Servlet生命周期
单利模式~
当第一次访问时,创建! 当服务器关闭时消亡!
Servlet的生命周期,描述的就剩Servlet从创建到消亡的过程。
这个过程,在Servlet类中,纯在三个方法的具体体现:
- init方法,当Servlet 创建后,立即执行,表示Servlet初始化
常用与初始化资源操作,例如:io流 数据库链接 等等初始化!
- service 方法,当用户访问时,开启新的现场,执行此方法, Servlet 正在浏览服务器
- desrtoy 方法 ,当Servlet 即将为销毁时,执行! 常用与销毁资源!
接受用户请求的参数
1, 接受单个参数值
String value = request.getParameter("key");
2, 接受一组相同key的 请求参数值 数组;
String [] values = request.getparameterValues("key");
请求参数:乱码问题
解决乱码:
方式一 :
适用于解决所有乱码问题,但是一次只能解决一个文本!
步骤1 将接受到的参数值,按照iso - 8859-1编码打碎成字节数组
byte [] bytes = value.getBytes("ISO-8859-1")
步骤2. 将得到的字节数组, 按照UTF-8编码组装为字符串
String text = new String(bytes,"UTF-8");
方式二 :
设置请求体的编码格式!(GET请求参数不通过请求体传递,只适用于POST请求)
request.setCharacterEncoding("UTF-8")
Servlet(2)的更多相关文章
- JavaWeb学习之Servlet(二)----Servlet的生命周期、继承结构、修改Servlet模板
[声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4140466.html 一.http协议回顾: 在上一篇文章中:JavaW ...
- Servlet(一)基础总结
一.Servlet概述 1.Java Servlet是基于Java的一种技术和标准,是独立于平台和协议,服务器端的java应用程序.与Applet相比.Applet运行在客户端,而Servlet运行在 ...
- servlet(2)servlet过滤器
1.servlet过滤器 用于动态的拦截servlet请求或响应,以变更或使用其中的信息. (1)过滤器和servlet是多对多的关系,即一个过滤器可以用于一个或多个servlet,多个过滤器也可以用 ...
- (转)JavaWeb学习之Servlet(二)----Servlet的生命周期、继承结构、修改Servlet模板
[声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4140466.html 一.http协议回顾: 在上一篇文章中:JavaW ...
- Java基础——Servlet(六)分页相关
前面写了Servlet(一)到(五),主要是在网上搜罗的视频.对分页这块还是不太清楚.于是有找到一些视频,重新学习了一下.主要是对分页的认识和设计思路.也是为了方便我以后回忆一下.. 一.分页常识 p ...
- 实习培训——Servlet(7)
实习培训——Servlet(7) 1 Servlet 异常处理 当一个 Servlet 抛出一个异常时,Web 容器在使用了 exception-type 元素的 web.xml 中搜索与抛出异常类 ...
- 实习培训——Servlet(6)
实习培训——Servlet(6) 1 Servlet 客户端 HTTP 请求 当浏览器请求网页时,它会向 Web 服务器发送特定信息,这些信息不能被直接读取,因为这些信息是作为 HTTP 请求的头的 ...
- 实习培训——Servlet(5)
实习培训——Servlet(5) 1 Servlet 简介 Servlet 是什么? Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HT ...
- JavaWeb之servlet(2)
servlet(2) ServletContext servlet的上下文 每个jvm的虚拟机中的每个web工程都只有一个ServletContext工程,即在一个web工程中,无论写了多少个Java ...
- 多个请求共用一个Servlet(JavaWEB)
我们在对JavaWEB工程进行开发的时候,我们经常会遇到这样一个问题,在jsp中发送到Servlet的每一个请求都要写一个对应的Servlet,这样会造成一个工程完成下来需要写几十个Servlet,那 ...
随机推荐
- 使用laraval框架和前端完成restful风格的请求对接(这里只是讨论restful的概念)
现在,在开发中restful风格的api是比较流行的,尤其是在前后端分离的架构中. 这些东西这一下这篇文章中说的很详细:RESTful接口设计原则和优点 下面,我们来讨论如何使用laraval和前端完 ...
- php,js 对字符串按位异或运算加密解密
异或的符号是^.按位异或运算, 对等长二进制模式按位或二进制数的每一位执行逻辑按位异或操作. 操作的结果是如果某位不同则该位为1, 否则该位为0. xor运算的逆运算是它本身,也就是说两次异或同一个数 ...
- 进行分支切换时,出现error的修复方法
进行分支切换时,出现如此错误,导致无法正常切换:error: The following untracked working tree files would be overwritten by ch ...
- centos7 openssl 生成证书给自己使用
Step1: centos7 系统自己生成证书 给自己签发不安全的域名证书 openssl genrsa - #生成ca根秘钥 是长度 openssl req - -key ca.key -out c ...
- eclipse中出现An internal error occurred during: "Initializing Java Tooling"
关于这个问题我查了一下,就是删除.projct文件夹下的文件. 自己试了一下,这个可以及解决问题可是会出现新的问题. 1.SVN关联没了,这样做你的svn信息都没了,项目还要重新导一遍 2.出现了新的 ...
- 软考自查:UML建模
UML建模 内容提要 用例图 类图与对象图 顺序图 活动图 状态图 通信图 构件图 用例图 包含关系 扩展关系 泛化关系 类图与对象图 填类名,方法名,属性名 填多重度 填关系 1: ...
- 查看 linux 目录大小
查看 linux 目录大小 du -sm * | sort -n # 以m显示并按小到大排序
- 肿瘤数据库除了TCGA,还有TCIA--转载
TCIA就是基于TCGA数据开发的,不同的是TCIA只提供了20个癌种的免疫数据分析. 看网站首页的介绍就知道,这个数据库主要是根据TCGA的二代测序数据开发出来的.这里的20个癌种,点击每个柱子进去 ...
- Apache Solr入门教程(转)
1.为什么选择Apache Solr Apache Solr是一个功能强大的搜索服务器,它支持REST风格API.Solr是基于Lucene的,Lucene 支持强大的匹配能力,如短语,通配符,连接, ...
- Kotlin 类和对象
类定义 Kotlin 类可以包含:构造函数和初始化代码块.函数.属性.内部类.对象声明. Kotlin 中使用关键字 class 声明类,后面紧跟类名: class Runoob { // 类名为 R ...