目录
1、request中的getParameter(String name)方法的功能是
2、request中的getParameter(String name)方法的功能是
3、spring创建bean对象没有以下哪个方式
4、spring依赖注入中没有以下哪个方式
5、@RequestParam、@RequestBody、@PathVariable的应用场景及区别
6、Cookie和Sesson的区别是什么
7、select标记的resultType和resultMap有什么区别
8、说说Spring事务传播行为的required和requires_new有什么区别
9、Spring全局异常处理实现过程
10、请简述对AOP的理解
1、request中的getParameter(String name)方法的功能是
获得指定参数名对应的值
2、request中的getParameter(String name)方法的功能是
解题思路: 读未提交,顾名思义,就是一个事务可以读取另一个未提交事务的数据。不能防止脏读
3、spring创建bean对象没有以下哪个方式
代理创建
4、spring依赖注入中没有以下哪个方式
5、@RequestParam、@RequestBody、@PathVariable的应用场景及区别
参考答案:
@RequestParam和 @PathVariable注解是用于从request中接收请求的,两个都可以接收参数,关键点不同的是@RequestParam是从request里面拿取值,而 @PathVariable是从一个URI模板里面来填充
@RequestBody一般是post请求的时候才会使用这个请求,把参数丢在requestbody里面。并且在后端接收后,会on参数自动转换成bean
6、Cookie和Sesson的区别是什么
参考答案:
共同点:都和特定的客户端浏览器相关
不同点
1.session中的信息存放到服务器端,cookie中的信息是存放在客户端的
2. session中可以存放任意对象,cookie中只能放字符串(默认只能放英文数字字符串)
3.cookie的安全性低于session
4.session的生命周期一般是通过用户访问或者关闭浏览器开始或结束,cookie可以设置过期的时间。
7、select标记的resultType和resultMap有什么区别
参考答案:
resultType:属性值是一个具体的类型,用的是列名和属性名称一致原则自动封装
resultMap:属性值是映射文件中resultMap标记的id属性的属性值,想采用自定义的映射规则去进行封装
解题思路: resultType的属性值为类型,resultMap的属性值为resultMap标记的id
8、说说Spring事务传播行为的required和requires_new有什么区别
参考答案:
required:默认传播行为,如果当前有事务,其他就用当前事务,不会新增事务。
例如:方法A调用方法B,它们用同一个事务,只要有一个回滚,整体就会回滚
requires_new:如果当前有事务,其他不会加入当前事务,会新增事务。即他们的事务没有关系,不是同一个事务。
如果其他没有事务,那么以当前事务运行。
例如:方法A调用方法B,它们用不同的事务。(B不会用A的事务,会新增事务。)
解题思路: 方法A调用方法B,不能为一个类中的内部方法调用的形式,可以是不同类型的方法的调用,否则会事务失效。
9、Spring全局异常处理实现过程
参考答案:
在独立的一个类中,定义一套对各种异常的处理机制,然后用@RestControllerAdvice注解该类,通过@ExceptionHandler来捕捉异常信息,统一对不同位置的不同异常进行处理。底层基于的是AOP思想的实现。
解题思路: 1、自定义类使用@RestControllerAdvice,自定义方法上使用@ExceptionHandler
10、请简述对AOP的理解
参考答案:
AOP(面向切面编程, Aspect-oriented programming )是针对业务处理过程中的切面进行提取,它所面对的是处理过程中的某个步骤或阶段,以获得逻辑过程中各部分之间低耦合性的隔离效果。
利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率
解题思路: Spring另一个核心点就是AOP