标签:class control 封装 写入 ant context 映射 指令 params
在SpringMVC中,控制器Controller负责处理由DispatcherServlet分发的请求,把用户请求的数据经过业务处理之后封装成为一个Model,再把该Model返回给对应的View进行展示.
使用@Controller标记类是一个Controller,@RequestMapping,@RequestParam等一些注解用于定义映射
@Controller声明MyController是一个controller对象,一旦有某个类声明了@Controller注解,在容器启动的时候就会自动加载到Spring的Bean工厂中,所以不需要new
@RestController 等价于@Controller+@ResponseBody 即加上返回json的功能
@Bean是一个方法级别上的注解,主要用于@Configuration注解的类里,也可用于@Component注解的类里
@Bean对应Spring的xml中<bean> @Configuration对应Spring的xml中<beans>
@Bean注解用于告诉方法,产生一个Bean对象,然后将该Bean对象交由Spring管.产生的这个Bean对象只会被Spring调用一次,随后Spring会把该对象存入IOC容器中
此处若是@Bean没有指定名称,则在调用时取方法名,即context.getBean(“getBean”)
@RequestMapping注解会把HTTP请求映射到SpringMVC和REST控制器的处理方法上
@RequestMapping可以在类级别,也可以在方法级别上使用
@RequestMapping(value={“”,”/”,”aba*/”})
//value为多个意味着多个地址映射到一个类/方法
@RequestMapping(value=”hha”,params={“person=20”})
//只处理/param?person=20 的连接
(@RequestParam(value=“arg”,required=false) String str)
//若是请求参数与处理方法的参数一至,则value无值 value=arg www.XXX.xx?arg=1
required=yes 说明必须传参
defaultValue 默认取值
@RequestMapping处理HTTP方法
@RequestMapping(method=RequestMethod.GET/POST/DELETE/PUT…)
快捷方式 @GetMapping,@PostMapping,@PutMapping
@GetMapping{“/person/{id}”};
@ResponseBody 将后续的方法返回解雇以I/O流写入到浏览器
若是在Controller中配置@Value,则需要在SpringMVC配置文件中配置:
<context:property-placeholder location=”classpath:{my variable}.properties”/>
@Value(“hah”)
Private String str; //不通过配置文件注入字符串
@Value(“#{beanInject.anther}”)
Private String fromAntherBean; //不通过配置文件注入其他Bean属性
配置文件主要有两类
包含三个注解:@SpringBootConfiguration,@EnableAutoConfiguration,@ComponentScan
使用@Configuration+@Bean可以创建简单的配置类,取代xml
@SpringBootConfiguration标识这个类可以使用Spring IOC作为bean定义的来源
@Bean告诉Spring,该对象作为在Spring上下文中的bean
自动配置Spring上下文,根据路径与bean定义自动配置.
自动扫描指定包下的全部标有@Component的类,并注册为bean,包括@Component的子注解@Service,@Repository,@Controller
标签:class control 封装 写入 ant context 映射 指令 params
原文地址:https://www.cnblogs.com/cyx-garen/p/8963558.html