JAVASSM面试

SpringBean

bean的作用域
在Spring中、可以在bean元素的scope属性里设置bean的作用域、以决定这个bean的单实例还是多实例的。
默认情况下、spring只为每个在ioc容器里声明的bean创建唯一一个实例、整个ioc容器范围内都能共享该实例:所有后续的getBean()调用和bean引用都将返回这个唯一的bean实例、该作用域被城作为singleton,它是所有bean的默认作用域

作用域效果
singleton默认值、当ioc容器一创建就会创建bean的实例,而且是单例的,每次得到的都是同一个
prototype原型的、dangioc容器创建不再实例化该bean,每次调用getbean方法时再实例化该bean,每次是不同的
request每次请求实例化一个bean
session在一次会话中共享一个bean

Spring支持的常用数据库事务传播属性和事务隔离级别

事务传播属性:
1、propagation:用来设置事务的传播行为
事务的传播行为:一个方法运行在了一个开启了事务的方法中时、当前方法时使用原来的事务还是开启一个新的事务
propagation.REQUIRED:默认值、使用原来的事务
propagation.REQUIRED_NEW:将原来的事务挂起、开启一个新的事务
propagation.SUPPORT:如果有事务在运行、当前的方法就在这个事务内运行、否则它可以不运行在事务中
propagation.NOTSUPPORT:当前的方法不应该运行在事务中、如果有运行的事务、将它挂起
propagation.MANDATORY:当前的方法必须运行在事物内部、如果没有正在运行的事务、就抛出异常
propagation.NEVER:当前的方法不应该运行在事务中、如果有运行的事务就抛出异常
propagation.NESTED:如果有事务在运行、当前的方法就应该在这个事务的嵌套事务内运行、否则、就启动一个新的事务、并且在它自己的事务内运行。
2、isolation:用来设置事务的隔离级别
读未提交:
Isolattion.READUNCOMMITTED:允许T1读取T2未提交的内容。(所有并发问题都会出现)
读已提交:
Isolattion.READ_COMMITTED:读已提交、OERACLE默认的隔离级别、开发时常用的隔离级别(可避免脏读)
可重复读:
Isolattion.REPEATABLE_RAED:可重复读、。mysql默认的隔离级别,确保T1可以多次从一个字段中读取到相同的值,即T1执行期间禁止其他事务对这个字段进行更新(避免脏读和不可重复读)
串行化:
Isolattion.SERIALIZABLE:确保T1可以多次从一个表内读取到相同的行、在T1执行期间、禁止其他事务对这个表进行添加、更新、删除操作、可以避免任何并发问题、但是、性能非常低下(但是可以避免所有的并发问题)
四种情况。mysql都支持。默认是【可重复读:Isolattion.REPEATABLE_RAED】
oracle只支持2、4两种,默认是【读已提交:Isolattion.READ_COMMITTED】

Spring Boot 字符集设置 解决中文乱码方案

在使用spring-boot开发时,程序没事的时候,往往在不经意间造成中文乱码(????这样情况)

Spring Boot修改编码方法:
1).在application.properties里面配置

spring.http.encoding.charset=UTF-8
spring.http.encoding.force=true
spring.http.encoding.enabled=true

或者在application.yml里面配置

spring:
  http:
    encoding:
      charset: UTF-8
      force: true
      enabled: true

2).在配置类中配置

@Configuration
public class EncodingFilterConfig {
    @Bean
    public FilterRegistrationBean filterRegistrationBean() {
        FilterRegistrationBean registrationBean = new FilterRegistrationBean();
        CharacterEncodingFilter characterEncodingFilter = new CharacterEncodingFilter();
        characterEncodingFilter.setForceEncoding(true);
        characterEncodingFilter.setEncoding("UTF-8");
        registrationBean.setFilter(characterEncodingFilter);
        return registrationBean;
    }
}

SpringMVC基本流程

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值