面试分析


一、你的项目是干什么的 ?( 什么ERP ?)

ERP 是企业资源管理系统,是企业的物料、人力、业务、财务等信息集成一体化的管理软件。(供应链的流程,就是公司需要什么物料、物料的采购、能制造出什么成品等方面管理软件)。

二、你用的框架是什么,SSM 是什么 ?

SSM=Spring + Springmvc + MyBatis

三、SpringBoot 和 SpringMVC 的区别?

Spring 开始使用的 Aop(代理模式) 和 DI(工厂模式)模式解耦的组件,因为大家都觉得好用,就搞了一个 Springmvc 的框架,但是 Spring 家族的成员的每一个技术都需要一个一个搞配置特别麻烦,影响开发的进度所以 springboot 就出来了解决这个问题,大大减少了配置。

四、Springboot 常用的注解有哪些 ?

Controller 层:@RestController @Controller @RequestMapping @Api @Autowired @ApiOperation @RequestBody @RequestAttribute 

Service 层 :@Autowired @Service

五、SpringMVC 是什么 ?

前端控制器:1、不用我们写。

                  2、接受 view 层的数据传递给后端控制器。

后端控制器:1、就是 controller

                  2、对前端控制器传来的数据进行逻辑处理发送给 model 层。

                  3、接受 model 层返回的数据进行逻辑处理返回给 view 层。

六、什么是 IOC 什么是 DI  ?

 A 类需要 B 类的方法:

 正常的方法:是在 A 类中创建 B 类的实例使用 b 的实例调用 b 的方法。

 控制反转:就是 A 不用主动创建 B 类,而是被动的等待 IOC / DI 容器获取 B 的方法注入到 A 方法里面。

七、什么是反射 ?

反射就是把 java 类里面的各个成分映射成一个个的 java 的对象(一个 java 的属性、方法、构造方法每一个都可以变成一个对象。)

八、一体化好好的,为什么要写前后分离?

1.前端可以不用了解后端技术,也不关心后端具体用什么技术来实现,只需要会 HTML/CSS/JavaScript ,而后端只需要关心后端开发技术,省去学习前端技术的麻烦,  可以更专注后端的技术,提升工作效率。

2.随着移动端的崛起 ios , android , web  等不同的前端页面,如果不前后分离那么需要写三遍后端的代码,为了节约开发成本提高工作效率,可以让不同的前段页面调用同一套后台的逻辑。

九、Restful协议 是什么?

restful是一种架构风格,建立API时要遵守的一种规则,rest 就是选择 http 协议和 url 通过 client / server model(c s 模式)对资源进行(put delete post get)增删改查的操作。

十、抽象类和接口的区别什么?

1、接口里面的没有方法体,抽象类的方法可以写方法体。

2、接口的属性都是public static final 公共静态的常量 。

3、接口多实现,类单继承。

十一、String,StringBuffer与StringBuilder的区别??

1、String 字符串常量

2、StringBuffer 字符串变量(线程安全)(可变字符串)

3、StringBuilder 字符串变量(线程不安全)

十二、什么是冗余字段?

数据库中相关联的表存在重复的信息就是冗余字段。

优点:适合多表联查时,但是有效的信息比较少,使用冗余字段,只查询一个表,提升效率。

缺点:1、占用的空间比较大。

         2、当修改表的信息时难度比较大,需要改动多个表。

         3插入同上。

十三、为什么数据库要加索引

1、提要检索的效率。

2、#primary 主键的索引 key 普通的索引 unique 唯一索引。

3、缺点占用内存(添加的索引的原理是往内存中写,拖慢写入的速度)。

4、优点:10-100 倍的提升检索的效率。

十四、什么是 opp、oop、aop?

opp 面向过程的编程 :把所有解决方法的函数都写出来,使用时调用即可。

oop 面向对象的编程:创建问题中需要的类,里面添加方法和属性,调用时必须要添加主语谁的属性,谁的方法。

aop 面向切面的编程:把问题一个分成不同的层面,解决问题时,动态的将需要的代码写入到指定的类的方法和指定的位置。

十五、equals 和 hashocde ,== 的区别?

== 

1、当 java 的基础数据类型之间用==时 比较的是他们的数值。

2、当 java 的引用类型类型用的时候比较的事他们的地址,看他们是不是同一个 new 出来的对象。

equals

1、默认的情况下 object 类里面的 equals 比较的就是地址和 == 是等价的。

2、当 equals 的方法在子类中重写一就是通过对象的内容时候相等来比较的

hashcode 

1.hashcode 是什么? 在 java 虚拟机中每 new 出来一个对象就会自动的出现的一个 hashcode 。

“如果两个对象相同,那么他们的hashcode应该相等

“如果两个对象不相同,他们的hashcode可能相同

十六、堆和栈

1、栈里面存储的是局部变量,而堆里面存储的事实体。

2、栈内存的更新速度快于堆的更新速度,因为局部变量声明周期很短。

3、栈内存的声明周期当方法结束时就会被释放,而堆中定义的实体会被垃圾回收机制不定时的清理。

十七、JVM

JVM 就是 java 的虚拟机。


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值