<context:annotation-config/>,<context:component-scan>,<mvc:annota
2021-02-15 05:18
标签:第一个 imp 自定义 struct 定义 说明 code pre request 1. 》可能大家没见过这个标签,但是它提供的注解的使用你一定用过,比如@Autowired,@Resource,@PostConstruct等,至于你为什么没用到这个标签,还能正常使用且由效果呢,请继续往下看 1..如果你想使用@Autowired注解,那么就必须事先在 spring 容器中声明 AutowiredAnnotationBeanPostProcessor Bean。 2.如果想使用@Resource 、@PostConstruct、@PreDestroy等注解就必须声明CommonAnnotationBeanPostProcessor 3.如果想使用@PersistenceContext注解,就必须声明PersistenceAnnotationBeanPostProcessor的Bean。 4.如果想使用 @Required的注解,就必须声明RequiredAnnotationBeanPostProcessor的Bean。 使用 》我们通过上面的注解向对象的属性注入Bean,前提这个Bean得存在于spring的容器中,不管是xml或注解的方式注册在spring,注入属性前必须bean存在spring IOC中,否则不起作用 》但有时你即没有配置 》我们找到对应的实现类是: 通过阅读类注释文档,我们发现这个类主要是用来向工厂中注册了 RequestMappingHandlerMapping BeanNameUrlHandlerMapping RequestMappingHandlerAdapter HttpRequestHandlerAdapter SimpleControllerHandlerAdapter ExceptionHandlerExceptionResolver ResponseStatusExceptionResolver DefaultHandlerExceptionResolver 上面几个Bean实例。这几个类都是用来做什么的呢? 前两个是HandlerMapping接口的实现类,用来处理请求映射的。 其中第一个是处理@RequestMapping注解的。 第二个会将controller类的名字映射为请求url。 中间三个是用来处理请求的。具体点说就是确定调用哪个controller的哪个方法来处理当前请求。 第一个处理@Controller注解的处理器,支持自定义方法参数和返回值(很酷)。 第二个是处理继承HttpRequestHandler的处理器。 第三个处理继承自Controller接口的处理器。 后面三个是用来处理异常的解析器。 另外还将提供以下支持: ① 支持使用ConversionService实例对表单参数进行类型转换; 4. 》看前缀知道是提供给事务控制的注解驱动,它支持@Transactional等的支持,也是在spring容器注册了事务支持的bean 文章参考自:https://www.cnblogs.com/DarrenChan/p/6892655.html 标签:第一个 imp 自定义 struct 定义 说明 code pre request 原文地址:https://www.cnblogs.com/ibcdwx/p/12988588.html * AutowiredAnnotationBeanPostProcessor、
* RequiredAnnotationBeanPostProcessor、
* CommonAnnotationBeanPostProcessor、
* PersistenceAnnotationBeanPostProcessor
2.
》小结:
3.
》看前缀就应该知道是springmvc所需要的注解。 org.springframework.web.servlet.config.AnnotationDrivenBeanDefinitionParser。
② 支持使用@NumberFormatannotation、@DateTimeFormat注解完成数据类型的格式化;
③ 支持使用@Valid注解对Java bean实例进行JSR 303验证;
④ 支持使用@RequestBody和@ResponseBody注解
文章标题:<context:annotation-config/>,<context:component-scan>,<mvc:annota
文章链接:http://soscw.com/index.php/essay/55510.html