spring相关八股文(不定时更新)

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

1. MySQL中造成主键自增不连续的原因

主键自增不连续的原因可能有以下几种

  1. 数据库重启或服务器重启在数据库或服务器重启后重新启动后下一个自增的主键值可能不连续。

  2. 回滚操作如果一个插入操作被回滚这个主键并没有真正插入到数据库表中但是主键自增计算器已经将其预先计算了所以会造成主键自增不连续。

  3. 批量插入操作在进行批量插入操作时如果其中某一条插入操作失败整个操作将会被回滚而已经预先计算的主键也就废弃了造成主键不连续。

  4. 并发操作在并发操作的情况下多个客户端可能同时向数据库中添加数据而由于主键自增是基于计数器实现的因此可能会出现主键自增不连续的情况。

需要注意的是即使存在主键自增不连续的情况这并不影响数据的完整性和准确性。如果对主键的连续性有一定的要求可以使用数据库中的其他方法来强制要求主键连续例如使用序列化来实现主键自增这样可以避免主键自增不连续的情况。

2. spring中创建bean的顺序有什么规律

在 Spring 容器中创建 bean 的顺序主要受以下三个因素影响

  1. bean 的依赖关系如果 bean A 需要依赖 bean B那么 Spring 容器需要首先创建 bean B然后才能创建 bean A。

  2. bean 的实例化方式如果 bean A 和 bean B 都是单例模式那么 Spring 容器需要首先创建 bean A然后才能创建 bean B。因为当 Spring 容器创建 bean A 的时候它就需要依赖 bean B如果此时 bean B
    还没有被创建那么依赖注入就会失败。

  3. bean 的加载顺序Spring 容器会按照 XML 配置文件中的顺序依次加载 bean 定义因此如果 bean A 在 XML 配置文件中先出现那么 Spring 容器就会先创建 bean A然后再创建 bean B。

综合以上因素得出的规律是对于不存在依赖关系的 beanSpring 容器会优先创建 XML 配置文件中先出现的
bean对于存在依赖关系的 beanSpring 容器会先创建被依赖的 bean。同时如果 bean 实例化方式为单例那么
Spring 容器会保证先创建依赖的 bean然后再创建被依赖的 bean避免依赖注入失败。

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: Spring