ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

打工人面试灵魂300问(1)

2021-03-03 22:33:45  阅读:149  来源: 互联网

标签:Session 300 面试 session cookie 答案 sql 服务器 灵魂


打工仔的我最近在面试
整理一下面试问题

01丶 MyBatis 中 #{} 和 ${} 的区别 ?(这个是频率最高的)

答案:
在MyBatis 的映射配置文件中,动态传递参数有两种方式 #{} 占位符 为参数占位符 ?,即sql 预编译 ${} 为字符串替换,即 sql 拼接。#{} 能防止sql 注入

${} 不能防止sql 注入

02丶谈谈 session和cookie的区别和联系

答案:
首先session是存在于服务器端的,cookie 是在客户浏览器 本地的所以cookie是不安全的,考虑到安全应当使用session,如果考虑服务器的压力就使用cookie。
第一次创建Session的时候,服务端会在HTTP协议中告诉客户端,需要在 Cookie 里面记录一个Session ID,下一次请求时会去会话中查询这个Session ID 是否存在。

03丶 如果cookie被禁用情况下如何使用session

答案:
1.Session URL重写,保证在客户端禁用或不支持COOKIE时,仍然可以使用Session。
2.还有一种技术叫做表单隐藏字段。就是服务器会自动修改表单,添加一个隐藏字段,以便在表单提交时能够把session id传递回服务器

04丶 webscoket与http的区别

答案:
1、WebSocket是双向通信协议,模拟Socket协议,可以双向发送或接受信息,而HTTP是单向的;
2、WebSocket是需要浏览器和服务器握手进行建立连接的,而http是浏览器发起向服务器的连接。

05 丶谈谈 forward 和 redirect 区别

答案:
forward 是转发 :
转发地址栏路径不变
转发只能访问当前服务器下的资源
可以访问WEB-INF下的资源
转发是一次请求,可以使用request对象来共享数据
redirect 是重定向 :
重定向地址栏路径发生变化
重定向可以访问其他站点(服务器)的资源
重定向是两次请求, 不可以使用request域对象来共享数据

06 丶 String、StringBuilder、StringBuffer 之间的区别

答案 :
执行速度:一般情况StringBudder > StringBuffer > String
StringBudder 是线程不安全的但是效率搞一般在单线程中使用(线程安全是因为 对方法加了同步锁(synchronized )或者对调用的方法加了同步锁)
StringBuffer 线程安全但是效率没StringBudder 高一般在多线程中使用。

loding…

标签:Session,300,面试,session,cookie,答案,sql,服务器,灵魂
来源: https://blog.csdn.net/weixin_44695125/article/details/114337078

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有