码迷,mamicode.com
首页 > Web开发 > 详细

关于servlet与jsp

时间:2018-07-18 23:31:39      阅读:203      评论:0      收藏:0      [点我收藏+]

标签:Servle   后台   并发   视图   实例   功能   需要   简易   控制   

servlet与jsp的区别

1、先有servlet,再有jsp。servlet设计出来时,功能很强大,体系设计也很先进,但是,它输出html采用了老式的CGI方式,一句一句地输出html,这样导致了编写和修改html很不方便;而后sun公司推出了类似于ASP的镶嵌型的JSP,把JSP TAG镶嵌到html语句中,这样大大简化了网页的设计和修改,新型的网络语言ASP、PHP、JSP等,都是镶嵌型的script脚本语言 
2、两者的创建方式不一样: 
servlet有三种创建方式: 
1、实现Servlet接口,重写service方法 
2、继承GenericService类,重写service方法 
3、继承HttpServlet(常用),重写doGet()、doPost()方法 
jsp创建,直接创建一个jsp文件,与html差不多,只是需要在jsp文件的第一行引入page标签<%@page contentType=”text/html” pageEncoding=”UTF-8”%> 
3、servlet完全由Java代码构成,擅长于流程控制和事务处理,通过servlet生成的动态网页很不直观;JSP由html代码和jsp标签构成,可以很方便地编写动态网页,因此在实际应用中,采用servlet来进行流程控制,使用jsp来生成动态网页 
4、mvc设计模式中,jsp位于视图层,而servlet位于控制层 
5、jsp是servlet技术的发展,本质上就是servlet的简易方式 
6、servlet的应用逻辑在Java文件中,并且完全和表现层的html代码分开,而jsp是java和html组合而成的.jsp文件中 
7、jsp侧重于视图,servlet侧重于逻辑控制

servlet是线程安全的吗

1、servlet默认是单例模式,在web容器中只有一个实例,所以当多个线程同时访问一个servlet时,servlet是线程不安全的 
2、但是,web容器也可以为每一个请求创建一个servlet实例,只需要该servlet实现SingleThreadModel接口即可 
有两点: 
1、每一个servlet都会在被访问时创建出一个对象实例,占用内存资源 
2、每个srvlet同时只能支持20个线程的并发访问,web服务器会自动挂起排在20之后的访问线程

什么情况下调用doGet()和doPost()方法

当以get方式发送请求时,将会调用doGet()方法,页面默认都以get方式请求后台资源 
当以post方式发送请求时,将会调用doPost()方式,post请求只有在form表单的action指定为post请求或者ajax请求时指定请求方式为post时才会发送post请求

关于servlet与jsp

标签:Servle   后台   并发   视图   实例   功能   需要   简易   控制   

原文地址:https://www.cnblogs.com/ehow/p/9332613.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!