Interview Questions and Answers

开发人员面试题集锦

Common


谈谈对mvc的认识

 

表单提交中的Get和Post的异同点
  1. GET在浏览器回退时是无害的,而POST会再次提交请求。
  2. GET产生的URL地址可以被Bookmark,而POST不可以。
  3. GET请求会被浏览器主动cache,而POST不会,除非手动设置。
  4. GET请求只能进行url编码,而POST支持多种编码方式。
  5. GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
  6. GET请求在URL中传送的参数是有长度限制的,而POST没有。
  7. 对参数的数据类型,GET只接受ASCII字符,而POST没有限制。
  8. GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
  9. GET参数通过URL传递,POST放在Request body中。
  10. GET产生一个TCP数据包,POST产生两个TCP数据包

 

session 与 cookie 的区别和联系

区别:

  1. 存放位置:Session 保存在服务器,Cookie 保存在客户端。
  2. 存放的形式:Session 是以对象的形式保存在服务器,Cookie 以字符串的形式保存在客户端。
  3. 用途:Cookies 适合做保存用户的个人设置,爱好等,Session 适合做客户的身份验证
  4. 路径:Session 不能区分路径,同一个用户在访问一个网站期间,所有的 Session 在任何一个地方都可以访问到。而 Cookie 中如果设置了路径参数,那么同一个网站中不同路径下的 Cookie 互相是访问不到的。
  5. 安全性:Cookie 不是很安全,别人可以分析存放在本地的 COOKIE 并进行 COOKIE 欺骗,考虑到安全应当使用 session
  6. 大小以及数量限制:每个域名所包含的 cookie 数:IE7/8,FireFox:50 个,Opera30 个; Cookie 总大小:Firefox 和 Safari 允许 cookie 多达 4097 个字节,Opera 允许 cookie 多达 4096 个字 节,InternetExplorer 允许 cookie 多达 4095 个字节;一般认为 Session 没有大小和数量限制。

关系:

 

线程和进程的区别?

 

线程有哪些状态?

线程通常都有五种状态,创建、就绪、运行、阻塞和死亡。

 

什么是死锁?

 

怎么防止死锁?

 

ORM 代表什么?

 

什么是 Redis 穿透和雪崩
缓存穿透
缓存雪崩

 

MySQL


对关系型数据库而言,索引是相当重要的概念,请回答有关索引几个问题:

a) 索引的目的是什么?

b) 索引对数据库系统的负面影响是什么?

c) 为数据表建立索引的原则有哪些?

d) 什么情况下不宜建立索引?

 

优化mysql 数据库方法

 

PHP


require,include 区别

 

PHP字符串中单引号与双引号的区别?

 

常用字符串函数。

 

mysqlfetchrow() 和mysqlfetcharray之间有什么区别?

 

Laravel


什么是 HTTP 中间件?

 

什么是数据迁移为什么迁移很重要?

 

如何在 Laravel 模型中自定义表名?

 

Java


普通类和抽象类有哪些区别?

 

Array 和 ArrayList 有何区别?

 

jsp 有哪些内置对象?作用分别是什么?

 

什么是 java 序列化?什么情况下需要序列化?

 

什么是反射?

 

接口和抽象类有什么区别?

 

String 属于基础的数据类型吗?

 

java 中操作字符串都有哪些类?它们之间有什么区别?

 

HashMap 的实现原理?

 

Spring


Spring由哪些模块组成?

以下是Spring 框架的基本模块:

 

什么是Spring IOC 容器?

 

什么是Spring的依赖注入?

 

有哪些不同类型的IOC(依赖注入)方式?

 

哪种依赖注入方式你建议使用,构造器注入,还是 Setter方法注入?

 

解释Spring框架中bean的生命周期。

 

Spring框架的事务管理有哪些优点?