微信小程序里的网站怎么做,德阳企业品牌网站建设,济南网站的公司哪家好,做网站最好的软件14.Spring事务中的隔离级别有哪几种#xff1f; 在TransactionDefinition接口中定义了五个表示隔离级别的常量#xff1a; 1⃣️ISOLATION DEFAULT#xff1a;使用后端数据库默认的隔离级别#xff0c;Mysql默认采用的可重复读隔离级别#xff1b;Oracle默认采用的读已提…14.Spring事务中的隔离级别有哪几种 在TransactionDefinition接口中定义了五个表示隔离级别的常量 1⃣️ISOLATION DEFAULT使用后端数据库默认的隔离级别Mysql默认采用的可重复读隔离级别Oracle默认采用的读已提交隔离级别。 2⃣️ISOLATION READ UNCOMMITTED最低的隔离级别允许读取尚未提交的数据变更可能会导致脏读幻读或不可重复读。 3⃣️ISOLATION READ COMMITED允许读取并发事务已经提交的数据可以阻止脏读但是幻读或不可重复读仍可能发生。 4⃣️ISOLATION REPEAABLE READ对同一字段的多次读取结果都是一致的除非数据是被本身事务自己所修改可以阻止脏读和不可重复读但幻读仍有可能发生。 5⃣️ISOLATION SERIALIZABLE最高的隔离级别完全服从ACID的隔离级别。所有的事务依次逐个执行这样事务之间就完全不可能产生干扰也就是说该级别可以防止脏读不可重复读以及幻读。但是这将严重影响程序的性能。通常情况下也不会用到该级别。 15.Spring事务中有哪几种事务传播行为 在TransactionDefinition接口中定义了7个表示事务传播行为的常量。 支持当前事务的情况 1.PROPAGATION REQUIRED如果当前存在事务则加入该事务如果当前没有事务则创建一个新的事务。 2.PROPAFGATION MANDATORY如果当前存在事务则加入该事务如果当前没有事务则抛出异常。mandatory强制性。 3.PROPAGATION SUPPORTS如果当前存在事务则加入该事务如果当前没有事务则以非事务的方式继续运行。 不支持当前事务的情况 4.PROPAGATION REQUIRES NEW创建一个新的事务如果当前存在事务则把当前事务挂起。 5.PROPAGATION NOT SUPPORTED以非事务方式运行如果当前存在事务则把当前事务挂起。 6.PROPAGATION NEVER以非事务的方式运行如果当前存在事务则抛出异常。 其他情况 7.PROPAGATION NESTED如果当前存在事务则创建一个事务作为当前事务的嵌套事务来运行如果当前没有事务则该取值等价于PROPAGATION REQUIRED。
16.BeanFactory和ApplicationContext有什么区别 ApplicationContext提供了一种解析文本消息的方法一种加载文件资源如图像的通用方法他们可以将事件发布到注册为监听器的bean。此外可以在应用程序上下文中以声明方式处理容器中的容器或者容器上的操作这些操作必须以编程方式与BeanFactory一起处理。
ApplicationContext实现MessageSource一个用于获取本地化消息的接口实际的实现是可插入的。
17.如何定义bean的范围 在Spring中定义一个类时我们也可以为bean声明一个范围。他可以通过bean定义中的scope属性定义。例如当Spring每次需要生成一个新的bean的实例时bean的scope属性就是原型。另外一方面当每次需要Spring都必须返回相同的bean实例时bean的scope属性必须设置为singleton。
18.可以通过多少种方式完成依赖注入 1.构造函数注入 2.setter注入 3.接口注入
19.什么是SpringBoot? Springboot是Spring开源组织下的子项目是Spring组件一站式解决方案主要简化了使用Spring的难度省简了繁重的配置提供了各种启动器开发者能够快速上手。 1.用来简化Spring应用的初始化搭建以及开发过程使用特定的方式来进行配置。 2.创建独立的Spring引用程序main方法运行 3.嵌入的tomcat无需部署war文件 4.简化maven配置 5.自动配置Spring添加对应的功能starter自动化配置 6.SpringBoot来简化Spring应用开发约定大于配置去繁化简
20.为什么使用SpringBoot 1.独立运行 SpringBoot内嵌了各种Servlet容器TomcatJetty等现在不再需要打成war包部署到容器中SpringBoot只要打成一个可执行的jar包就能独立运行所有的依赖包都在一个jar包内。 2.简化配置 spring boot starter web 启动器自动依赖其他组件减少了maven的配置。
3.自动配置 SprintBoot能根据当前类路径下的类jar包来自动配置bean,如添加一个Spring boot starter web启动器就能拥有web的功能无需其他配置。
4.无代码生成和XML配置
Springboot配置过程中无代码生成也无需XML配置文件就能完成所有配置工作这一切都是借助于条件注解完成的这也是Spring4.x的核心功能之一。
5.应用监控
Springboot提供一系列端点可以监控服务以及应用做健康检测。
21.Spring、SpringMVC和Springboot有什么区别 1.Spring Spring最重要的特征是依赖注入。所有Spring Modules不是依赖注入就是IOC控制反转。 当我们恰当的使用DI或者IOC的时候可以开发松耦合应用。 2.Spring MVC SpringMVC提供了一种分离式的方法来开发Web应用。通过运用像DispatcherServletModel AndView和ViewResolver等一些简单的概念开发Web应用将会变得非常简单。
3.SpringBoot Spring和SpringMVC的问题在于需要配置大量的参数。 SpringBoot通过一个自动配置和启动的项来解决这个问题。
22.SpringBoot的自动配置原理 在Spring程序main方法中添加SpringBootApplication或者EnableAutoConfiguration会自动去maven中读取每个starter中的spring.factories文件该文件里面配置了所有需要被创建的Spring容器中的bean。 23.SpringBoot的核心注解是哪些他主由哪几个注解组成的 启动类上面的注解是SpringBootApplication他也是Spring Boot的核心注解主要组合包含了以下3个注解 SpringBootConfiguration组合了Configuration注解实现配置文件的功能。 EnableAutoConfiguration打开自动配置的功能也可以关闭某个自动配置的选项如关闭数据源自动配置的功能。 SpringBootApplicationexclude{DataSourceConfiguration.class});
ComponentScan:Spring组件扫描。
24.SpringBoot的核心配置文件有哪几个他们的区别是什么 Spring Boot的核心配置文件是application和bootstrap配置文件。 application配置文件这个容易理解主要用于Springboot项目的自动化配置。 bootstrap配置文件有以下几个应用场景 使用Spring Cloud Config配置中心时这时需要在bootstrap配置文件中添加连接到配置中心的配置属性来加载外部配置中心的配置信息。 一些固定的不能被覆盖的属性。 一些加密/解密的场景。
25.什么是SpringBoot Starter有哪些常用的 和自动配置一样Spring Boot Starter的目的也是简化配置而SpringBoot Starter解决的是依赖管理配置复杂的问题有了它当我需要构建一个Web应用程序时不必再遍历所有的依赖包一个一个地添加到项目的依赖管理中而是只需要一个配置Spring boot starter web同理如果想引入持久化功能可以配置spring boot starter data jpa。 Spring Boot也提供了其他的启动器项目包包括用于开发特定类型应用程序的典型依赖项。 spring boot starter web services
SOAP WEB SERVICES spring boot starter web
WEB和RESTFUL应用程序 spring boot starter jdbc 传统的JDBC spring boot starter test 单元测试和集成测试 spring boot starter hateoas 为服务添加hateoas spring boot starter security 使用SpringSecurity进行身份验证和授权 spring boot starter data jpa 带有Hibernate的spring data jpa spring boot starter data rest 使用spring data rest 公布简单的rest服务
26.spring boot starter parent 有什么作用 我们知道新建一个Spring Boot项目默认都是有parent的这个parent就是spring boot starter parentspring boot starter parent主要有如下作用 定义了Java编译版本 使用UTF8格式编码 继承自spring boot dependencies这里面定义了依赖的版本也正是因为继承了这个依赖所以我们在写依赖时不需要写版本号 执行打包操作的配置 自动化的资源过滤 自动化的插件配置