额,第一份面经,电面,好难受,好像凉了,一篇凉经
1、跨域解决
这是一道常见面试题。所以我还是需要多看看nginx原理,因为我还是很有可能就答ngxin的。
1、jsonp
使用一个标签去做<script> 利用src这个特殊属性。
2、后台解决这个问题
在请求头里面添加一个参数。
response.addHeader("Access-Control-Allow-Origin", "*");
response.addHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS");
response.addHeader("Access-Control-Allow-Headers",
"Content-Type,X-Requested-With,accept,Origin,Access-Control-Request-Method,Access-Control-Request-Headers,token");
3、nginx
2、浏览器输入域名到页面渲染过程
这个不说了,当时面试官就有点烦了,说的太细了。
3、验证码原理
官网验证码是这样做的。 其实是前端做的,但是我们不能这样说。显得有点low。我们内部有很多图片,每个图片包含有一个图片id,以及图片上的上的数字。还有图片路径。每次登陆都会传输图片id,和输入的数字过来,先去检验该数字是不是正确的(查数据库)。
当然这是一种比较low的,我之前做过一种极验,利用第三方做验证的。
打开的时候会发一个请求过来,我们会有一个token信息,从第三方获取的token信息。
然后在点击的时候,又会将这个token信息发送过来。然后第三方确定是不是相同。最后在验证账号密码
4、group by使用
Group By 和 Having, Where ,Order by这些关键字是按照如下顺序进行执行的:Where, Group By, Having, Order by。
5、post请求和get请求有什么区别 好像面试官问的不是这个问题。他想问我的是更加深层的东西。
get请求是那种参数拼接,使用? & 拼接url。
post请求是使用将参数党在请求体里面。请求体里面有一个 FormData 里面就是放我们的参数。
他想问的是,我是怎么做请求规范的,业务怎么区分不同的请求的。还有就是下面这个问题一直和我扯。
get请求就是读的操作,post请求就是写的操作
6、怎么判断一个请求是不是已经登录? sessionid存储在哪里? sessionID在客户端存储在哪里?
通过session判断,session存在服务器,存服务器怎么判断,每次一个请求过来都带有这个sessionid,请问sessionid存在客户端哪里?懵圈圈,这里我就发现学校老师的low的地方了,老师说不的清除,就知道给我们灌输一些基本概念思想,不问缘由,以前都是说cookie存客户端,session存服务器,却不知道sessionID存在cookie里面,每次客户端发送一个请求都会将cookie发送过去,由此来判断是不是同一个请求,如果cookie里面没有sessionID,那就认为不存在该会话,就会再开启一个会话。然后存在cookie里面,response的的时候会返回回去。
7、full GC 和 Minor GC
https://blog.csdn.net/qq_40261771/article/details/88596913
8、10个数据里面有很多重复数据,怎么进行排序
sortSet 我特么当时脑子就短路了。
9、java加锁方式
synchronize加锁,一般锁代码块,方法
Lock锁Reentlock 加锁 对一段代码进行加锁,lock(); 加锁 unlock(); 释放锁
10、遍历list集合的方式
for(; ; ) foreach() 迭代器,请记住这个名词,woc我特么好像说的是序列化。sb了。但是我的意思就是迭代器的意思
还问了迭代器的原理.
https://blog.csdn.net/qq_40261771/article/details/88597779
11、注解原理?
反射机制。
12、反射原理
13、java信号量
https://blog.csdn.net/qq_40261771/article/details/88593400
14、ES?Dobble?
这个我是真的不知道。我了解springcloud,他又不问。
15、了解什么脚本? js,那么js局部变量和全局变量区别? 在js方法里面怎么定义一个全局变量?
woc,我不记得了啊。windows.name =
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)