java Redis 知识检验
1. Redis 是什么?都有哪些使用场景?Redis 是一个使用 C 语言开发的高速缓存数据库。
Redis 使用场景:
· 记录帖子点赞数、点击数、评论数;
· 缓存近期热帖;
· 缓存文章详情信息;
· 记录用户会话信息。
2. Redis 有哪些功能?· 数据缓 ...
java Mysql 知识检验
1. 数据库的三范式是什么?· 第一范式:强调的是列的原子性,即数据库表的每一列都是不可分割的原子数据项。
· 第二范式:要求实体的属性完全依赖于主关键字。所谓完全依赖是指不能存在仅依赖主关键字一部分的属性。
· 第三范式:任何非主属性不依赖于其它非主属性。
2. 一张自增表里面总 ...
java Zookeeper 知识检验
1. zookeeper 是什么?zookeeper 是一个分布式的,开放源码的分布式应用程序协调服务,是 google chubby 的开源实现,是 hadoop 和 hbase 的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
2. ...
java Kafka 知识检验
1. kafka 可以脱离 zookeeper 单独使用吗?为什么?kafka 不能脱离 zookeeper 单独使用,因为 kafka 使用 zookeeper 管理和协调 kafka 的节点服务器。
2. kafka 有几种数据保留的策略?kafka 有两种数据保存策略:按照过期时间保留和按照存 ...
java RabbitMQ 知识检验
1. RabbitMQ 的使用场景有哪些?· 抢购活动,削峰填谷,防止系统崩塌。
· 延迟信息处理,比如 10 分钟之后给下单未付款的用户发送邮件提醒。
· 解耦系统,对于新增的功能可以单独写模块扩展,比如用户确认评价之后,新增了给用户返积分的功能,这个时候不用在业务代码里添加新增 ...
java Mybatis 知识检验
1. MyBatis 中 #{}和** ${}**的区别是什么?#{}是预编译处理,${}是字符替换。 在使用 #{}时,MyBatis 会将 SQL 中的 #{}替换成“?”,配合 PreparedStatement 的 set 方法赋值,这样可以有效的防止 SQL 注入,保证程序的运行安全。
2 ...
java Hibernate 知识检验
1. 为什么要使用 hibernate?· hibernate 是对 jdbc 的封装,大大简化了数据访问层的繁琐的重复性代码。
· hibernate 是一个优秀的 ORM 实现,很多程度上简化了 DAO 层的编码功能。
· 可以很方便的进行数据库的移植工作。
· 提供了缓 ...
java[springBoot/springCloud]知识检验
1. 什么是 spring boot?spring boot 是为 spring 服务的,是用来简化新 spring 应用的初始搭建以及开发过程的。
2. 为什么要用 spring boot?• 配置简单• 独立运行• 自动装配• 无代码生成和 xml 配置• 提供应用 ...
java[spring/springMVC]知识检验
1. 为什么要使用 spring?· spring 提供 ioc 技术,容器会帮你管理依赖的对象,从而不需要自己创建和管理依赖对象了,更轻松的实现了程序的解耦。
· spring 提供了事务支持,使得事务操作变的更加方便。
· spring 提供了面向切片编程,这样可以更方便的处理 ...
java网络知识检验
1. http 响应码 301 和 302 代表的是什么?有什么区别?301:永久重定向。
302:暂时重定向。
它们的区别是,301 对搜索引擎优化(SEO)更加有利;302 有被提示为网络拦截的风险。
2. forward 和 redirect 的区别?forward 是转发 和 redirec ...