servlet和jsp的区别 / servlet的线程安全问题 / doGet()和doPost()区别和使用

servlet和jsp的区别与联系:

区别:

  • jsp本质上是一个 servlet
  1. 组成形式不同:servlet 看做是含有HTML的Java程序; JSP 看做是含有Java代码的HTML页面。servlet在java代码中通过httpservletresponse来动态的生成一个html页面 ;jsp是通过吧java代码嵌入到html中去生成一个动态的html页面 。
  2. 生成周期不同: jsp 需要先解析,然后才翻译成 servlet, 之后具有servlet 相同的生命周期
  3. 业务方向不同 : servlet擅长擅长于流程控制,数据处理,如读取并检查数据,与数据库通信,调用商业逻辑,等等;JSP擅长表示,即构建HTML来表示请求的结果,视图展示。

联系:

  • 通过MVC双剑合璧
    既然JSP和Servlet都有自身的适用环境,那么能否扬长避短,让它们发挥各自的优势呢?答案是肯定的——MVC(Model-View-Controller)模式非常适合解决这一问题。

Java Web开发中的Servlet、jsp区别联系 https://blog.csdn.net/qq_24145735/article/details/52005547
jsp与servlet的区别与联系 https://www.cnblogs.com/sanyouge/p/7325656.html


servlet的线程安全问题

1、关于servlet的线程安全问题
https://blog.csdn.net/heixiong_/article/details/78191828

2、Java面试题:Servlet是线程安全的吗?
https://www.cnblogs.com/chanshuyi/p/5052426.html

3、javaweb回顾第六篇谈一谈Servlet线程安全问题
https://www.cnblogs.com/LipeiNet/p/5699944.html

4、Servlet的多线程和线程安全
https://www.cnblogs.com/binyue/p/4513577.html

Servlet 是否是线程安全的 Spring MVC 线程是否安全
https://www.cnblogs.com/JimCalark/p/6872216.html

Java面试题:Servlet是线程安全的吗?
https://blog.csdn.net/shenjianxz/article/details/56024587


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

区别 :

在使用表单提交数据到服务器的时候有两张方式可共选择,一个是post一个是get。可在中的method属性中指定提交的方式。如:

,如果不指定method属性,则会默认该属性为”get”方式。

Get和post都能够提交数据,那么他们有什么不同呢?

  • 不同点一:

通过get方式提交的数据有大小的限制,通常在1024字节左右。也就是说如果提交的数据很大,用get方法就可需要小心;而post方式没有数据大小的限制,理论上传送多少数据都可以。

  • 不同点二:

通过get传递数据,实际上是将传递的数据按照”key,value”的方式跟在URL的后面来达到传送的目的的;而post传递数据是通过http请求的附件(请求体)进行的,在URL中并没有明文显示。

  • 不同点三:

通过Get方式提交的数据安全性不高,而Post方式的更加安全~

调用:

1、直接通过URL方式发送请求,用doget()方法。

2、表单提交的方式发送请求,方式为“get”就用doget(),“post”就用dopost(),表单默认提交方式是get

3、Ajax发送请求的时候同样会指定用什么方式。

总之用get发送调doget(),用post发送调dopost()


你可能感兴趣的:(面试)