首页 > 编程知识 正文

controller与servlet的区别,jsp本质上是一个servlet

时间:2023-05-05 19:49:04 阅读:35912 作者:1693

servlet和Jsp的区别servlet和Jsp的区别

* servlet没有内置对象。 Jsp中的所有内置对象都是通过http servlet请求的对象,或者

为http servlet生成响应对象。

*对于静态HTML标记,servlet必须使用页面输出流行输出。

总之,Jsp是servlet的简化,它只需要完成程序员需要输出到客户端才能使用Jsp的内容,Jsp的

Jsp容器将如何在类中嵌入Java脚本。 servlet是完整的Java类,是此类的服务

方法用于生成对客户端的响应。

servlet的开发

servlet通常称为服务器端小程序,用于处理和响应客户端请求。

servlet是一个特殊的Java类,必须继承http servlet。 每个servlet都可以响应客户端的请求。

servlet提供了各种响应客户机请求的方法。

* doGet :用于响应客户端的get请求

* doPost :用于响应客户端的开机自检请求

* doPut :用于响应客户端的put请求

* doDelete:用于响应客户端的delete请求

* service (httpservletrequestrequest,支持所有类型的客户端请求)

http servlet响应响应)

throws ServletException,java.io.IOException

其他方法

*创建服务器配置(init ) : servlet实例时调用的初始化方法。

*destory(:销毁servlet实例时自动调用的垃圾回收方法。

servlet配置

编译的servlet源文件不能响应用户的请求,必须编译为class文件。 编译的. class

文件必须位于WEB-INF/classes路径下,如果servlet中存在软件包,则class文件也必须位于相应的软件包路径下。

为了使servlet能够响应用户的请求,还必须在web APP应用程序中配置servlet。 配置servlet时需要更改

web.xml文件。

要配置servlet,必须配置以下两个部分:

*设置servlet名称:支持web.xml中的servlet /元素

* servlet URL设置:支持web.xml中的servlet -映射/元素

servlet生命周期

servlet在容器中运行,其实例的创建和销毁由容器控制,而不是由程序员决定。

创建servlet有两种选择。

*如果客户端请求相应的servlet,请创建servlet实例。 大多数servlet都是这个servlet

*在web APP应用程序启动时,立即创建servlet实例load-on-startup servlet

servlet生命周期:

比根

---实例创建完成

---初始化[init]

---响应客户端请求[doGet、doPost、service]

---要销毁的[destroy] ---

结束

-将servlet用作控制器

使用servlet作为表示层的工作量太大,必须使用页面输出流生成所有HTML标记。

因此,将servlet用作表示层有以下三个缺点。

*开发效率低,需要在页面输出流中完成所有HTML标记

*不利于团队合作,艺术家无法参与servlet接口的开发

*程序的可维护性差,即使更改了按钮的标题,也需要重新编辑并重新编译Java代码

使用servlet实现MVC的体系结构:

Jsp页--- servlet---servlet根据条件传输新的Jsp页

启动加载servlet

实例化servlet的时机还包括在web APP应用程序启动时,也就是加载启动servlet

启动APP应用程序时启动的servlet通常是用于某些后台服务的servlet或阻止许多请求的servlet。

此servlet通常用作基本servlet,提供重要的后台服务。

在web.xml中配置:

将元素添加到servlet /元素

启动加载1 /启动加载

访问servlet的配置参数

配置servlet时,还可以添加其他配置参数。 使用配置参数可以实现更好的解耦

不要用硬编码把所有参数写在程序上。

通过ServletConfig类的实例访问servlet配置参数。 ServletConfig提供以下方法:

Java.lang.stringgetinitparameter (Java.lang.string name ) [获取初始化参数]

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。