对Spring中一些注解的总结

Spring小节
基本注解

1、@Controller 控制器(注入服务)
用于标注控制层,相当于struts中的action层
2、@Service 服务(注入dao)
用于标注服务层,主要用来进行业务的逻辑处理
3、@Repository(实现dao访问)
用于标注数据访问层,也可以说用于标注数据访问组件,即DAO组件.
4、@Component (把普通pojo实例化到spring容器中,相当于配置文件中的<bean id="" class=""/>

区别

web : 数据库设计 => 数据库的操作dao => Servlet层url以及操作

Spring: 数据库设计 => 数据库操作dao => Service层对应操作 => controller 接受前端数据进行反序列化 然后调用service层代码对数据处理,然后序列化要返回的数据。

小节注释
  1. @SpringBootApplication 启动类的注解

  2. @Service 注解 一般是用来操控数据库的

  3. @Repository 注解 在bean容器中会自动new一个这样的类

  4. @Autowired 注解 表明我要使用这个类,在bean容器中查找这个类

  5. @RestController 注解 用于标记这个类是一个控制器,返回JSON数据的时候使⽤,如果使用这个注解,则接⼝口返回数据会被序列列化为JSON 。

  6. @Controller 注解:用于标记这个类是⼀一个控制器,返回页⾯面的时候使用;如果要返回JSON,则需要在接口上使用@ResponseBody才可以。

    Controller和 ResController的区别
    • 相同 :Spring中的某个类来接受http请求
    • 不同: @RestController是@Controller和@ResponseBody的结合体 ;使用@Controller 注解,视图解析器可以解析到return中的jsp页面或者html页面,并且跳转到相应页面,返回json等内容到页面,则需要加@ResponseBody; 使用@RestController返回的内容就是return中的内容,会自动解析成字符串,是无法返回jsp页面或者html页面。
  7. @RequestMapping 注解:访问路径

  8. @GetMapping 注解:路径和方法GET

  9. @Configuration 注解 :表明是配置类

  10. @PropertySource(value = “classpath:pay.properties”) 获取配置文件

  11. @JsonIgnore 注解 指定字段不返回,也无法接受前端的相应的传回来的参数

单元测试中的注解
  1. @RunWith(SpringRunner.class) 注解 表明做Spring项目的单元测试 //底层用junit SpringJUnit4ClassRunner

  2. @SpringBootTest(classes={DemoProjectSpringApplication.class}) 注解 classes后跟的是启动类

  3. @before 一般做测试数据的初始化

  4. @Test 做测试 断言测试 我们单元测试一般只用这个

  5. @After 一般做资源的回收

  6. @AutoConfigureMockMvc 类注解 注⼊入⼀一个MockMvc类 相当于一个客户端 可以发起请求和接受响应,perform andExpect andReturn三种方法结合使用

    /**
     * perform执⾏行行⼀一个RequestBuilder请求
     * andExpect:添加ResultMatcher->MockMvcResultMatchers验证规则
     * andReturn:最后返回相应的MvcResult->Response
     * */
    
            /**
             *  perform 获取http请求
             *  MockMvcRequestBuilders是一个构建器 构建多种http请求
             *  支持链式调用
             * .andExpect 看预期结果
             *  MockMvcResultMatchers.status 结果的状态码
             *  isOK 状态码 200
             *  andReturn 返回结果
             * */
            MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders.get("/api/v1/pub/video/list/")            .andExpect(MockMvcResultMatchers.status().isOk()).andReturn();
    
异常处理的注解
  1. 类添加注解
    @ControllerAdvice,可以用来返回一个页面,但需要配合ModeAndView类来使用。
    @RestControllerAdvice, 默认返回json数据,方法不需要加@ResponseBody。
  2. 方法添加注解
    捕获全局异常,处理所有不可知的异常 value 后面跟得是异常类得信息
    @ExceptionHandler(value=Exception.class)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值