# Spring

>所有的答案在文末展示
**Spring 概述**
1. 什么是spring?
2. 使用Spring框架的好处是什么?
3. Spring由哪些模块组成?
4. 解释AOP模块
5. Spring
配置文件
6. 什么是Spring IOC 容器?
**依赖注入**
1. 什么是Spring的依赖注入?
2. 有哪些不同类型的IOC(依赖注入)方式?
3. 哪种依赖注入方式你建议使用,构造器注入,还是 Setter
方法注入?
**Spring Beans**
1. 什么是Spring beans?
一个 Spring Bean 定义 包含什么?
2. 如何给Spring 容器提供配置元数据?
3. 你怎样定义类的作用域?
4. 解释Spring
支持的几种bean的作用域
5. 解释Spring框架中bean的生命周期
6. 在 Spring中如何注入
一个java集合?
7. 什么是bean装配?什么是bean的
自动装配?
8. 解释不同方式的
自动装配
**Spring注解**
1. 什么是基于Java的Spring注解配置? 给一些注解的例子
2. 什么是基于注解的容器配置?
3. 怎样开启注解装配?
4. @
required 注解、@Autowired 注解、@Qualifier 注解
**Spring数据访问**
1. 在Spring框架中如何更有效地使用JDBC?
2. JdbcTemplate
3. 使用Spring通过什么方式访问Hibernate?
4. 如何通过HibernateDaoSupport将Spring和Hibernate结合起来?
5. Spring框架的事务管理有哪些优点?
6. 你更倾向用那种事务管理类型?
**Spring面向切面编程(AOP)**
1. 解释AOP
2. Aspect 切面
3. 在Spring AOP 中,关注点和横切关注的区别是什么?
4. 什么是引入?什么是目标对象?什么是代理?
5. 有几种不同类型的
自动代理?
6. 什么是织入。什么是织入应用的不同点?
7. 解释基于XML Schema方式的切面实现
8. 解释基于注解的切面实现
**Spring 的MVC**
1. 什么是Spring的MVC框架?
2.
dispatcherServlet
3. WebApplicationContext
4. 什么是Spring MVC框架的控制器?
5. @Controller 注解、@RequestMapping 注解
# Re
dis

1. 什么是Re
dis?
2. Re
dis相比memcached有哪些优势?
3. Re
dis支持哪几种数据类型?
4. Re
dis主要消耗什么物理资源?
5. Re
dis的全称是什么?
6. Re
dis有哪几种数据淘汰策略?
7. Re
dis集群方案应该怎么做?都有哪些方案?
8. Re
dis有哪些适合的场景?
9. Re
dis支持的Java客户端都有哪些?官方推荐用哪个?
10. Re
dis回收进程如何工作的?
11. 你知道有哪些Re
dis分区实现方案?
12. Re
dis分区有什么缺点?
13. Re
dis持久化数据和缓存怎么做扩容?
14. 分布式Re
dis是前期做还是后期规模上来了再做好?为什么?
15. Re
dis与其他key-value存储有什么不同?
16. Re
dis的内存占用情况怎么样?
17. Re
dis常见
性能问题和
解决方案?
18. Re
dis提供了哪几种持久化方式?
19. 如何选择合适的持久化方式?
20.
修改配置不重启Re
dis会实时生效吗?
# MyBatis

1. #{}和${}的区别是什么?
2. 通常
一个Xml映射
文件,都会写
一个Dao接口与之对应,请问,这个Dao接口的工作原理是什么?Dao接口里的
方法,参数不同时,
方法能重载吗?
3. Mybatis是如何进行
分页的?
分页插件的原理是什么?
4. Mybatis是如何将
sql执行结果封装为目标对象并返回的?都有哪些映射形式?
5. Xml映射
文件中,除了常见的select|insert|update|delete
标签之外,还有哪些
标签?
6. 简述Mybatis的
插件运行原理,以及如何编写
一个插件
7. 一级、二级缓存
8. Mybatis是否
支持延迟加载?如果
支持,它的实现原理是什么?
9. Mybatis映射
文件中,如果A
标签通过include引用了B
标签的
内容,请问,B
标签能否定义在A
标签的后面,还是说必须定义在A
标签的前面?
10. 简述Mybatis的Xml映射
文件和Mybatis内部数据结构之
间的映射关系?
#
MysqL

1. 一张表,里面有ID自增主键,当insert了17条记录之后,
删除了第15,16,17条记录,再把
MysqL重启,再insert一条记录,这条记录的ID是18还是15 ?
2.
MysqL的技术特点是什么?
3. Heap表是什么?
4.
MysqL服务器
默认端口是什么?
5. 如何区分FLOAT和DOUBLE?
6. 区分CHAR_LENGTH和LENGTH?
7. 请简洁描述
MysqL中InnoDB
支持的四种事务隔离级别
名称,以及逐级之
间的区别?
8. 在
MysqL中ENUM的
用法是什么?
9. 如何定义REGEXP?
10. CHAR和VARCHAR的区别?
11. My
SQL查询是否区分大小写?
12.
MysqL中有哪些不同的表格?
13. 什么样的对象可以使用CREATE语句创建?
14. 什么是通用
sql函数?
15.
MysqL支持事务吗?
16.
MysqL里记录货币用什么字段类型好
17.
MysqL中有哪几种锁?
18.
MysqL数据库服务器
性能分析的
方法命令有哪些?

# 多线程
1. 多线程有什么用?
2. 创建线程的方式
3. start()
方法和run()
方法的区别
4. Runnable接口和Callable接口的区别
5. CyclicBarrier和CountDownLatch的区别
6. volatile关键字的作用
7. 什么是线程安全
8. Java中如何
获取到线程dump
文件
9. 怎么检测
一个线程是否持有对象监视器
10. ConcurrentHashMap的并发度是什么
11. Linux环境下如何查找哪个线程使用
cpu最长
12. Java编程写
一个会导致死锁的程序
13. 什么是Java内存模型
14. 什么是乐观锁和悲观锁
15. 高并发、任务执行时间短的业务怎样使用线程池?并发不高、任务执行时间长的业务怎样使用线程池?并发高、业务执行时间长的业务怎样使用线程池?
### 最后
> **笔者已经把面试题和答案整理成了面试专题文档,有想
获取到借鉴参考的朋友:点赞关注后,[戳这里即可免费领取](https://docs.qq.com/doc/DSmxTbFJ1cmN1R2dB)**

?

?

?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。