zoukankan      html  css  js  c++  java
  • spring注解开发中常用注解以及简单配置

    一、spring注解开发中常用注解以及简单配置

      1、为什么要用注解开发:spring的核心是Ioc容器和Aop,对于传统的Ioc编程来说我们需要在spring的配置文件中邪大量的bean来向spring容器中注入bean对象,

    然而,通过注解编程可以缩短我们开发的时间,简化程序员的代码编写。

      2、如何开启注解开发:最常用的方法是使用<mvc:annotation-driven/>来开启注解编程(用一个标签配置了spring注解编程的映射器和适配器,同时配置了许多的参数)

      3、如何将有注解的bean注入spring容器中:<context:component-scan base-package="。。。。"/>base-package表示你要注入spring容器的bean所在的包

      比如:base-package="edu.mybatis.controller",就会将该包下的所有需要注入spring容器的bean对象,自动注入spring容器中,

    二、常用的注解及应用

      1、@Controller:控制器定义

        在你你定义的Controller类上添加注解@Controller

      2、Requestmapping:次注解一般和@Controller注解一起使用,该注解将类似“/findUserById”这样的url映射到特定的处理方法或者类上上,用户通过http请求进行访问。

      (1)用在类上是用来窄化请求:

    @Controller
    @RequestMapping("user")
    public class UserController {。。。。}

      (2)用在方法上是用来进行url映射

    @RequestMapping("/queryUsers")
        public ModelAndView queryUsers(UserQueryVo userQueryVo){
            
            System.out.println(userQueryVo);
            List<UserExtends>userList=userService.findUserList(userQueryVo);
            
            ModelAndView modelAndView=new ModelAndView();
            modelAndView.addObject("userList", userList);
            modelAndView.setViewName("index");
            
            return modelAndView;
        }

      (3)@RequeatParam将请求的参数绑定到方法的指定参数上

    public String editUser(Model model, @RequestParam(value="id",required=true)Integer user_id){
            UserExtends userExtends=userService.findUserById(user_id);
            model.addAttribute("user", userExtends);
            return "edit";
        }

      (4)RequestBody:指定方法参数应该被绑定到HTTP请求body上,@RequestBody在构建REST架构时比较方便

    public void handle(@RequestBody String body, Writer writer) throws IOException {
        writer.write(body);
    }

      (5)@ResponseBody与requestBody类似,它的作用是将返回类型直接输入到HTTP response body中。@ResponseBody在输出JSON格式的数据时,会经常用到。

    @RequestMapping(value = "/something", method = RequestMethod.PUT)
    @ResponseBody
    public String helloWorld() {   
         return "Hello World";
    }

      (6)@Autowired:将spring容器中的bean注入

      @Autowired
      private UserService userService;

      注意:注入对象的名字与spring容器中的id名相同

  • 相关阅读:
    定时任务,执行时间动态配置方式
    MultipartFile+nio上传文件
    org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'multipart/form-data;boundary=----WebKitFormBoundaryRAYPKeHKTYSNdzc1;charset=UTF-8' not supported
    JDBC 连Sql Server 接数据库--The TCP/IP connection to the host localhost, port 1433 has failed
    swagger2常用注解说明
    java zxing实现二维码生成和解析zxing实现二维码生成和解析
    【springboot+easypoi】一行代码搞定excel导入导出
    linux中set、unset、export、env、declare,readonly的区别以及用法
    Spring---七大核心模块
    【Tomcat】Tomcat容器 web.xml详解
  • 原文地址:https://www.cnblogs.com/googlemeoften/p/4699507.html
Copyright © 2011-2022 走看看