servle

基于HTTP协议下的,http请求和http响应。


http请求------请求的是服务器中的地方。

1、servlet就是解析http请求和发送http响应。

2、servlet是是一个接口。

List<Student> list=new ArrayList<Student>();---多态---可扩展性好。

ArrayList<Student> list=new ArrayList<Student>();

是一个小程序java applet,运行在web服务器中。

接口和响应来自客户端的基于HTTP协议下的,http请求和http响应。

要使用必须继承GenericServlet 或者 HttpServlet

接口中定义了一方法去初始化servlet(自定义)

3、怎么用?

-----你发送的是什么请求,请求谁?请求的类型。

请求方式get---不具备保密性;数据传送有限制---256个字节。

post---防止乱码,具备信息的安全性;数据转送无限制--理论上无限制。

创建一个类并且继承HttpServlet

<form action="servlet的名称p-add.do" method="post/get">

<input type="text" name="stu_id"/>谁是世界上最帅的男人?

<input type="submit" value="提交"/>

</form>

配置web.xml文件--作用:处理谁找谁的问题?

配置servlet

<serlvet>

<serlvet-name>AddServlet</servlet-name>

<servlet-class>com.it.servlet.AddServlet</servlet-class>

</servlet>

配置servlet映射

<servlet-mapping>

<servlet-name>AddServlet</servlet-name>

<url-patter>/add.do</url-patter>

</servlet-mapping>

(一个serlvet可以有多个映射)

servlet解析请求中携带的问题和问题的类型(get/post)

doGet(){

业务逻辑

};

doPost(){

业务逻辑

};---继承了HttpServlet----doget;dopost---继承中的重写;

添加业务功能;

jsp:action-method---->web.xml---->AddServlet中的doPost();

getParameter("stu_id");---封装----new  StudentDAO();

----将数据动态的显示到页面中。-----我们必须在servlet类中自己产生页面。

显示业务功能:

show.do---doPost(){查询到集合---写到我自己产生的页面中};

删除业务逻辑:

del.do---->按照id号码删除(如何在del.do>stu_id=1001)。

post----delStu(String sql="");

4、注意点:

servlet删除后,web.xml文件中的配置文件不会自动删除,必须手动删除。

5、中文乱码:

请求乱码:

reqeust.getEconding...(“utf-8”);

String ss=new String(request.getp....().getBytes("iso-8859-5"),"utf-8");

响应乱码;

response.setContentType("text/html;charset=utf-8");

response.setHeader("", "");

6、重定向---重新请求

1、servlet生命周期----在不同的阶段做了什么事情?

servlet中的方法:init();doGet();doPost();destory();service(2个);

构造器

初始化阶段:---init()---构造器

servlet容器加载servlet(add.do)的时机:

a、默认情况下:当用户第一次请求服务器的时候,servlet被加载;

b、服务器启动的时候,servlet容器加载servet---show.do

借助配置文件,在web.xml<serlvet><load-on-startup>1</load-on-startup></serlvet>

c、servlet类文件被更新后,重新装载servlet.

servlet容器会创建servlet实例-----并且调用初始化方法Init();

注意:在servlet整个生命周期中,初始化方法只被调用一次;

响应客户请求阶段---service,doGet();doPost();

servlet的工作原理:当请求和响应到达 servlet的时候,servlet容器会创建每个

servlet对应的HttpServletRequest和HttpServletResponse对象。然后将这两个对象

交给继承了HTTP协议的service方法,从请求中解析,请求的类型。第一种:继承了HTTP

协议的doGet();doPost();-----业务逻辑处理。

拓展:当值到达service的时候,会以HashTable或者HashMap的形式进行封装。

就是一个键值对。

<select>

<option value="1">安徽省</option>

</select>

HashTable<key,value> name=HashTable<key,value>();

HashTable---线程安全。HashMap线程不安全。

销毁阶段---释放资源的阶段---destory()。

a、当web服务器停止的时候。

b、servlet类文件被更新后,重新装载servlet.

时间: 2024-10-18 10:47:42

servle的相关文章

(2)自己写一个简单的servle容器

自己写一个简单的servlet,能够跑一个简单的servlet,说明一下逻辑. 首先是写一个简单的servlet,这就关联到javax.servlet和javax.servlet.http这两个包的类,其中一个比较重要的接口就是:javax.servlet.Servlet,所有的servlet必须实现实现或者继承实现该接口的类. Servlet接口有五个方法: public void init(ServletConfig config) throws ServletException publi

Servle之Cookie

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <ti

servle 3.0t新特性之一 对上传表单的支持

1. 上传 * 上传对表单的要求: > method="post" > enctype="multipart/form-data",它的默认值是:application/x-www-form-urlencoded > <input type="file" name="必须给"/> * 上传Servlet的使用: > request.getParameter()不能再用 > reques

Cookie中图片的浏览记录与cookie读取servle时路径的设置(文字描述)

public class ShowServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request, response); } public void doPost(HttpServletRequest request, HttpServletR

转载 Servlet3.0中使用注解配置Servle

转载地址:http://www.108js.com/article/article10/a0021.html?id=1496 开发Servlet3的程序需要一定的环境支持.Servlet3是Java EE6规范的一部分,MyEclipse10和Tomcat7都提供了对Java EE6规范的支持. @WebServlet 用于将一个类声明为Servlet,该注解将会在部署时被容器处理,容器将根据具体的属性配置将相应的类部署为 Servlet.该注解具有下表给出的一些常用属性(以下所有属性均为可选属

servle学习

Tomcat, Jetty, resin, Oracle Application server, WebLogic Server, Glassfish, Websphere, JBoss 等等.(提供了 Servlet 功能的服务器,叫做 Servlet 容器.对 web 程序来说,Servlet 容器的作用就相当于桌面程序里操作系统的作用,都是提供一些编程基础设施 客户端发送请求至服务器端: 服务器将请求信息发送至 Servlet: Servlet 生成响应内容并将其传给服务器.响应内容动态生

java面试题大全

java面试笔试题大汇总     第一,谈谈final, finally, finalize的区别. 最常被问到. 第二,Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)? 第三,Static Nested Class 和 Inner Class的不同,说得越多越好(面试题有的很笼统). 第四,&和&&的区别. 这个问得很少. 第五,HashMap和Hashtable的区

探索Servlet以及Servlet的功用

首先我们要理解什么是Server,Server是指任何在网络上允许用户文件访问.打印.通讯及其他服务的计算机和集群. Servlet是由Java编写在Server端的程序,与协议和平台无关独立于客户端和服务器之外的类似于解决问题的中心. Servlet运行于Java-enabled Web Server中,从之前对Server的定义中可以知道,作为Server服务器,它的主要功能就是允许用户文件访问.打印.通讯及其他服务的计算机,更多的是在于硬件上的连接部分,而Java Servlet可以动态地

java基础知识—类的方法

1.定义类方法的语法: 访问修饰符 返回值类型 方法名(){ 方法体: } 2.方法名的规范: 1.必须以字母下划线·"-"或"$"开头 2.可以有数字,但不能以数字开头. 3.如果方法名是以多个单词组成,第一个单词首字母小写 其后单词首字母单大写 4.方法名都采用动词 3.方法的返回值: 1.有返回值:(return) 必须告知返回值的数据类型,并且返回相应的值.例:public String getName(){ return "张三" }