spring注解详解与用法(1)

导航:更多的spring注解标签点击这里

本文主要收集spring的注解,说明以及其用法样例

@Controller

应用在MVC层(控制层),DispatcherServlet会自动扫描注解了此注解的类,必须和@RequestMapping共用,否则没有任何意义

示例:

@Controller
public class BootApplication {
    @RequestMapping("a")
    public void atext() {
    	System.out.println("自己的逻辑");
    }
}
@RestController

作用和@Controller类似,这是一个在@Controller基础上改装的注解

他和@Controller的区别是被标记的类自动返回json格式,因为现在不推荐使用jsp,采用hmtl界面和java接口分开,大大增加了开发的便捷性

使用示例:

@RestController
public class BootApplication {
    @RequestMapping("a")
    public void atext() {
    	System.out.println("自己的逻辑");
    }
}
@RequestMapping

此注解用于标记接口的地址,必须和@Controller或者@RestController一起使用,否则没有任何意义

最常用的参数:

1:value:标记url的地址

2:method:请求方式

使用示例:

@RestController
public class BootApplication {
    @RequestMapping(value ="a",method = RequestMethod.GET)
    public void atext() {
    	System.out.println("自己的逻辑");
    }
}
@Service

用户标记在应用service层(业务逻辑层),通常和@Autowired或者@Resource一起使用,从将类的实例交给spring管理

使用示例:

@Service
public class DemoService {}
//获取示例
 @Autowired
 private DemoService cDemoService ;
@Reponsitory
//类似的注解
@DAO
@MyBatisDao

组合注解(组合了@Component注解),应用在dao层(数据访问层)

个人见解:我个人认为这个注解只是一个规范

使用示例:表示不明觉厉

@Component

表示一个带注释的类是一个“组件”,成为Spring管理的Bean。当使用基于注解的配置和类路径扫描时,这些类被视为自动检测的候选对象。同时@Component还是一个元注解。

凝视注解:

控制层使用:@Controller,业务层使用:@Service,DAO层使用:@Reponsitory,但是有些类既不是Controller,也不是Service,更不是DAO,我们不知道怎么形容他,又要把他交给spring管理就用这个注解

使用示例:

@Component
public class Demo {}
@Autowired
//类似的注解
@Resource

Spring提供的工具(由Spring的依赖注入工具(BeanPostProcessor、BeanFactoryPostProcessor)自动注入。)

使用示例:

 @Autowired
 private DemoService cDemoService ;
@Configuration

这个注解表明这个类是一个配置文件,等价于mvc中的xml

使用示例:

@Configuration
public class MyConfiguration {}
@ComponentScan
//类似的注解
@MapperScan

自动扫描指定包下所有使用@Service,@Component,@Controller,@Repository的类并注册

@MapperScan("org.yly.minbox.boot.*")//扫描
@ComponentScan//扫描
public class BootApplication {}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章