servlet和jsp的区别与联系:
区别:
- jsp本质上是一个 servlet
- 组成形式不同:servlet 看做是含有HTML的Java程序; JSP 看做是含有Java代码的HTML页面。servlet在java代码中通过httpservletresponse来动态的生成一个html页面 ;jsp是通过吧java代码嵌入到html中去生成一个动态的html页面 。
- 生成周期不同: jsp 需要先解析,然后才翻译成 servlet, 之后具有servlet 相同的生命周期
- 业务方向不同 : 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属性中指定提交的方式。如:<form action="inputForm"method=“get”>,如果不指定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()