主要记录在做项目的过程中使用到的标签, 简单的一些个人理解,并不包含详细的用法。
注:标签需要使用context:component-scan元素启动“包扫描”功能
1. @Controller
- 作用于类
- 表明这是一个控制器(Controller)
- 将其标记的类注册成为Spring的bean
2. @RequestMapping
- 可以放在方法上,也可以放在类上面(起到分流效果)
- 将请求映射到具体方法处理
- 配合 @RequestParam 使用
- value 对传入的参数指定参数名,如 @RequestParam(value=“pageNum”)
那么传入的参数名就必须是pageNum - required(true/false) 配置前端的参数是否一定要传
- defaultValue 前端不传参数时指定的默认值
- value 对传入的参数指定参数名,如 @RequestParam(value=“pageNum”)
@RequestMapping("list.do")
@ResponseBody
public ServerResponse lsit(@RequestParam(value = "pageNum", defaultValue = "1") int pageNum,
@RequestParam(value = "pageSize", defaultValue = "10") int pageSize,
HttpSession session){
3. @Service
- 作用于类
- 表明能作为依赖被注入
- 说明这是一个service层
@ResponseBody
- 作用于方法,指定返回数据的格式
4. @Autowired
- 将依赖的属性自动注入
5. @Param
- 在dao中有多个参数的方法中使用,避免xml在取值时混乱
int deleteByUserIdProductIds(@Param("userId") Integer userId,
@Param("productIdList")List<String> productIdList);
配合请求调用过程理解:
- 一般调用顺序: front -> controller -> service -> dao
- 配合@Controller使用的标签
- @RequestMapping -> 匹配处理请求方法
- @RequestParam -> 处理方法接收的参数
- @Autowired -> 自动注入依赖的Service
- @ResponseBody -> 转换返回的数据格式