学习spring

1.@Transactional注解:

spring支持编程式事务管理和声明式事务管理两种方式。

编程式事务管理使用TransactionTemplate或者直接使用底层的PlatformTransactionManager。对于编程式事务管理,spring推荐使用TransactionTemplate。

声明式事务管理建立在AOP之上的。其本质是对方法前后进行拦截,然后在目标方法开始之前创建或者加入一个事务,在执行完目标方法之后根据执行情况提交或者回滚事务。声明式事务最大的优点就是不需要通过编程的方式管理事务,这样就不需要在业务逻辑代码中掺杂事务管理的代码,只需在配置文件中做相关的事务规则声明(或通过基于@Transactional注解的方式),便可以将事务规则应用到业务逻辑中。@Transactional 注解应该只被应用到 public 方法上。

@Transactional属性:
readonly  类型:boolean  描述:只读或读写事务,默认读写,当为@Transactional(readonly=true)时,表示该事务只能被读。

2.@RequestParam注解:

public GoodsInfo get(@RequestParam(required=false) String id),可以通过@RequestParam来请求id参数,并将它作为输入参数传入。

三种写法:

test(String name), 
test(@RequestParam String name), 
test(@RequestParam("userName") String name), 
第一种如果没有name 参数不会报错, 
第二种没有name 参数会报错,(也可以设置required = false), 
第三种跟第二种的区别是 
请求的参数名userName转换成方法的参数name

3.@ModelAttribute注解:

绑定请求参数到命令对象

ModelAttribute一个具有如下三个作用:

①绑定请求参数到命令对象:放在功能处理方法的入参上时,用于将多个请求参数绑定到一个命令对象,从而简化绑

定流程,而且自动暴露为模型数据用于视图页面展示时使用;

②暴露表单引用对象为模型数据:放在处理器的一般方法(非功能处理方法)上时,是为表单准备要展示的表单引用

对象,如注册时需要选择的所在城市等,而且在执行功能处理方法(@RequestMapping 注解的方法)之前,自动添加

到模型对象中,用于视图页面展示时使用;

③暴露@RequestMapping 方法返回值为模型数据:放在功能处理方法的返回值上时,是暴露功能处理方法的返回值为

模型数据,用于视图页面展示时使用。






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值