写在最前面,我总结出了很多互联网公司的面试题及答案,并整理成了文档,以及各种学习的进阶学习资料,免费分享给大家。扫码加微信好友进【程序员面试学习交流群】,免费领取。也欢迎各位一起在群里探讨技术。
序
自从16年转行做java,从基础到框架,从简单到复杂,这一路上除了自己的努力,身边朋友同事也给了我非常多的帮助,转行做Java参加了许许多多的面试,其实面的多了发现问的问题都大同小异,现把这些问题整理出来供自己复习,也可以让后来人少走一些弯路。
一,Spring中常用的注解
答案:@requestMapping @requestParam @requesBody @pathvarible @reponseBody @autowired @cotroller
二,在spring中service层使用的注解是什么?
答案:@service (控制层是@controller 数据层是@repository 不好归类@component)
三,Mybatis有哪些优点?
答案:1,与jdbc相比有更少的代码量 2,易于上手和掌握3,sql写在xml里便于统一管理和优化4,解除sql与程序代码的耦合5,提供映射标签,支持对象与数据库的orm字段关系映射6,提供对象关系,映射标签,支持对象关系组建维护7,提供xml映射标签,支持编写动态sql
缺点:1,sql工作量很大,尤其是字段多关联表多时更是如,2,sql依赖于数据库,导致数据库移植性差
四,mybatis中#和$有什么区别?
答案:#传入什么解析成什么,$会将传入的数据当成字符串解析
五,jQuery中有哪几种选择器
答案:1,基本选择器2,层次选择器3,过滤选择器4,表单选择器
选择器:基本过滤选择器,内容过滤选择器,可见性过滤选择器,属性过滤选择器,子元素过滤选择器
六,Ajax的原理
答案:Ajax的原理简单来说通过xmlHttpRequest对象来向服务器发出异步请求,从服务器获得数据,然后用javascript来操作dom来更新页面的局部显示
七,异步请求与同步请求的区别
答案:同步:提交请求---等待服务器处理---处理完毕返回,这个期间客户端浏览器不能干任何事
异步:请求通过事件触发---服务器处理(这是浏览器仍然可以做其他事情)---处理完毕返回
八,MVC中的Model层是用来做什么的?
答案:显示层(view):主要负责接收servlet传递的内容,并且调用JavaBean,将内容传递给用户
控制层(Controller):主要负责所有用户请求参数,判断请求参数是否合法,根据请求的类型调用JavaBean执行操作并将最终的处理结果交由显示层进行显示
模型层(Model):完成一个独立的业务操作组件,一般都是以JavaBean或者EJB的形式进行定义的
九,MVC中如何接参
答案:request.getParam SpringMvc中是(@RequesParam)
10,MyBatis如何过滤空值
答案:使用if标签 <if test="#{arg0}"!=null>And ptypeid=#{arg0}</if>
11,集合如何去重
答案:使用Set集合去重(List newList=new ArrayList(new HashSet(list)));反转用collection.reverse
12,Json中key的值为汉字或者数字如何处理?
答案:json['key']可以取出对应的value值
13,Json如何遍历取出所有的key,value?
答案:for(var key in json){alert(key);}
14,Java中有几种类型的流?以及常用的实现类都有哪些?
答案:从输入输出方面来讲:java有输入流和输出流,从流的编码方式上来讲:字节流和字符流
对于字节流而言:主要继承的抽象类为InputStream和OutputStream
对于字符流而言:主要继承的抽象类为InputStreamReader和OutputStreamReader
15,如何解析xml
答案:dom解析和sax解析
dom解析会把整个xml内容转化为dom树放入内存中,在随机读取,支持增删改操作,
sax解析是边解析边读取,不支持对文件的随意存取,只能读取不能修改
dom解析:根据xml层级结构,在内存中分配一个树形结构,吧xml的标签属性和文本都封装成对象------document对象,element对象,属性对象,文本对象,Node节点对象
缺点:如果内存过大,会造成内存溢出
优点:很方便实现增删改操作
sax解析:采用事件驱动,边解读边解析,从上到下,一行一行解析,解析到某一对象,返回对象的名称
缺点:不能实现增删改操作
16,Springmvc中想要转换post请求为put请求和delete请求需要进行哪些操作?
答案:1,HiddenHttpMethodFilter配置
2,<input type=''hidden" name="-method" value="PUT or DELETE"
17,如何使用SpringMvc完成json操作
答案:1,配置MappingJacksonHttpMessageConveter
2,使用@RequestBody注解或ReponseEntity作为返回值
18,HashTable和HashMap的区别
答案:1,继承的父类不同
转载:https://www.cnblogs.com/xixiyunan/p/9928591.html
推荐内容:
知名互联网公司校招 Java 开发岗面试知识点解析
Java面试通关秘籍汇总集
【原创】JAVA面试解析(有赞一面)
BAT美团滴滴java面试大纲(带答案版)之四:多线程Lock
Java面试题
Java 面试知识点解析(三)——JVM篇
推荐几个IDEA插件,Java开发者撸码利器。
Java线程池详解
java面试
[Java面试一]面试复习大纲.