基础知识:HTTP的请求格式如下。
主要包含三个信息:1、请求的类型(GET或POST),2、要访问的资源(如resimga.jif),3、HTTP版本(http/1.1)
区别:
1、Get是从服务器端获取数据,Post则是向服务器端发送数据。
2、在客户端,Get方式通过URL提交数据,在URL地址栏可以看到请求消息,该消息被编码过;Post数据则是放在Html header内提交。
3、对于Get方式,服务器端用Request.QueryString获取变量的值;对用Post方式,服务器端用Request.Form获取提交的数据值。
4、Get方式提交的数据最多1024字节,而Post则没有限制。
5、Get方式提交的参数及参数值会在地址栏显示,不安全,而Post不会,比较安全。
1、Session由应用服务器维护的一个服务器端的存储空间;Cookie是客户端的存储空间,由浏览器维护。
2、用户可以通过浏览器设置决定是否保存Cookie,而不能决定是否保存Session,因为Session是由服务器端维护的。
3、Session中保存的是对象,Cookie中保存的是字符串。
4、Session和Cookie不能跨窗口使用,每打开一个浏览器系统会赋予一个SessionID,此时的SessionID不同,若要完成跨浏览器访问数据,可以使用 Application。
5、Session、Cookie都有失效时间,过期后会自动删除,减少系统开销。
主要包含四部分:
1、request line
2、header line
3、blank line
4、request body
面小易说:上面的三个问题是网络编程的基础知识问题,作为Java工程师也需要掌握HTTP的知识,而如今HTTPS同样也成为了标准,也需要大家进一步了解。此外,相对于大家在课本或者课堂中所学习的HTTP 1.0/1.1这些协议而言,很多公司已经迈入了HTTP 2.0时代,因此两者之间的差别也需要我们进一步了解。
1、foward是服务器端控制页面转向,在客户端的浏览器地址中不会显示转向后的地址;sendRedirect则是完全的跳转,浏览器中会显示跳转的地址并重新发送请求链接。原理:forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后再将这些内容返回给浏览器,浏览器根本不知道服务器发送的这些内容是从哪来的,所以地址栏还是原来的地址。
2、redirect是服务器端根据逻辑,发送一个状态码,告诉浏览器重新去请求的那个地址,浏览器会用刚才的所有参数重新发送新的请求。
面小易说:以上的三个问题在之前网络相关的知识上更进一步,上升到了Java网络编程的相关知识,这部分意在考察面试者对于Java网络编程相关知识的掌握程度。
九、谈谈Hibernate与iBatis的区别,哪个性能会更高一些
1、Hibernate偏向于对象的操作达到数据库相关操作的目的;而iBatis更偏向于SQL语句的优化。
2、Hibernate的使用的查询语句是自己的HQL,而iBatis则是标准的SQL语句。
3、Hibernate相对复杂,不易学习;iBatis类似SQL语句,简单易学。
性能方面:
1、如果系统数据处理量巨大,性能要求极为苛刻时,往往需要人工编写高性能的SQL语句或存错过程,此时iBatis具有更好的可控性,因此性能优于Hibernate。
2、同样的需求下,由于Hibernate可以自动生成HQL语句,而iBatis需要手动写SQL语句,此时采用Hibernate的效率高于iBatis。
一个对象(两个属性,四个方法)实例化100次,现在内存中的存储状态,几个对象,几个属性,几个方法。由于Java中new出来的对象都是放在堆中,所以如果要实例化100次,将在堆中产生100个对象,一般对象与其中的属性、方法都属于一个整体,但如果 属性和方法是静态的,就是用static关键字声明的,那么属于类的属性和方法永远只在内存中存在一份。
感谢你看到了这里!
我这边整理很多2020最新Java面试题(含答案)和Java学习笔记,如下图
上述的面试题答案小编都整理成文档笔记。 同时也还整理了一些面试资料&最新2020收集的一些大厂的面试真题(都整理成文档,小部分截图)免费分享给大家,有需要的可以 点击进入暗号:CSDN!免费分享~
如果喜欢本篇文章,欢迎转发、点赞。
记得关注我!
写在最后
为了这次面试,也收集了很多的面试题!
以下是部分面试题截图
s://img-blog.csdnimg.cn/20201207195852655.png)
写在最后
为了这次面试,也收集了很多的面试题!
以下是部分面试题截图
[外链图片转存中…(img-i4ETRBxK-1714826106368)]