1. SpringBoot 开发常用注解
@RequestMapping // springmvc 访问链接注解
@GetMapping // 处理get请求的映射 等同于 @RequestMapping(method = RequestMethod.GET)
@PostMapping // 处理post请求的映射
@PutMapping // 处理put请求的映射
@DeleteMapping // 处理delete请求的映射
@RequestParam // 请求参数注解
@PathVariable // url中参数注解(常用于restful)
@Controller // springmvc 控制器注解
@RestController // restful 控制器注解
@RequestBody // 接受json数据然后映射到对象参数
@ResponseBody // 返回json格式数据
@WebServlet // 在自定义的servlet上使用
@ServletComponentScan // 在主类上使用 扫描自定义servlet的包路径
@WebFilter // 在自定义的 filter 上使用
@WebListener // 在 自定义的 listener 上使用
@RequestHeader // 在controller的参数上使用,获取header里的参数
// 给控制器添加通知,在controller方法的前后和发生异常时执行不同的处理
@ControllerAdvice // 定义一个控制器通知类
@InitBinder // 定义控制器参数的绑定规则,例如转换规则,格式化规则,会在参数转换之前执行
@ExceptionHandler // 定义控制器发生异常之后的操作,
@ModelAttribute // 在控制器方法执行之前对数据模型进行操作
@SessionAttribute // 获取HTTPSession中保存的参数
@SessionAttributes // 只能用于类的注解,会将符合制定名称或类型的模型属性保存到HttpSession中
@Bean(name="beanName") // 自定义bean放入spring ioc容器中,如果不定义beanName,则使用方法名作为beanName
@Primary // 优先级注解,当有多个同类型的bean存在时,优先注入哪个bean
@Quelifier // 当有多个类型的bean存在时,使用名称来确定注入一个bean
@ImportResource // 使用xml来装配bean
@ConfigurationProperties // 用来将一组同样类型的配置属性映射成一个类, 比如服务器配置都是以server开头
@Configuration和@Bean组合使用 // 用来通过代码配置多个Bean
@ConditionalOnBean // 当上下文中存在某个对象时,才会实例化一个Bean
@ConditionalOnMissingBean // 当上下文中不存在某个对象时,才会实例化一个Bean
@ConditionalOnClass // 当classpath下有指定的class时,才装配一个Bean
@ConditionalOnMissingClass // 当classpath下没有指定的class时,才装配一个Bean
2. spring mvc 返回 xml 格式数据
@RequestMapping(value="/xml/user",produces=MediaType.APPLICATION_XML_VALUE)
并且加入 jar 包
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
</dependency>
3. 不在重定向的url中传参, 给重定向传参是用 RedirectAttributes 作为 Controller 参数, 它有一个 addFlashAttribute 的方法, 使用这个方法传递参数