springmvc和spring的相关注解
- @Component :通用注解,用于生命beam,可以配置任意组件
- @Repository :Dao实现类推荐使用注解,不仅可以声明bean,提高了可读性
- @service:派生注解,service实现类推荐使用的注解,不仅可以声明bean,提高了可读性
- @Controller:派生注解,controller实现类推荐使用的注解,不仅可以声明bean,提高了可读性
-
bean的注入相关注解,是spring注解的一部分
@Autowired:按类型注入,
@Resource(name=""):按名称注入
@Resource():先按名称注入,如果没有再按照类型
配置类相关注解
@Bean 注解在方法上,声明当前方法的返回值为一个bean。
@Configuration 声明当前类为配置类,内部常使用@Bean进行详细配置。取代了xml文件配置。
@ComponentScan 用于对Component进行扫描,可以配置扫描的包路径
以上都是spring的相关注解
springmvc相关注解
- @RequestMapping 修饰方法,将请求路径映射到Controller对应的处理方法上。修饰类,给请求路径添加访问前缀(二级路径)
- @ResponseBody 将返回值转换成json数据,并响应给浏览器。
- @RequestBody 将json格式的请求参数,封装到指定的JavaBean中。
- @PathVariable
用于接收路径参数,比如@RequestMapping:(“/hello/{name}”)申明的路径,参数前使用注解 - @PathVariable(“name”):就可以获取name对应的值。
- @RestController :该注解为一个组合注解,相当于
- @Controller和@ResponseBody的组合,注解在类上,意味着,该Controller的所有方法都响应JSON格式数据。
注解:是一种分散式的元数据,与源代码耦合。
xml :是一种集中式的元数据,与源代码解耦。
- 注解缺点,
- 很多朋友比如在使用spring注解时,会发现注解分散到很多类中,不好管理和维护;
- XML方式比注解的可扩展性和复杂性维护上好的多,比如需要哪些组件,不需要哪些;在面对这种情况,注解扫描机制比较逊色,因为规则很难去写或根本不可能写出来;
- 注解的优点 - 注解最大的好处就是简化了XML配置;其实大部分注解一定确定后很少会改变,所以在一些中小项目中使用注解反而提供了开发效率,所以没必要一头走到黑;