@Autowired
官方给出的定义是这样:
Spring IoC容器可以自动装配(autowire)相互协作bean之间的关联关系。因此,如果可能的话,可以自
动让Spring通过检查BeanFactory中的内容,来替我们指定bean的协作者(其他被依赖的bean)。由于
autowire可以针对单个bean进行设置,因此可以让有些bean使用autowire,有些bean不采用。autowire的
方便之处在减少或者消除属性或构造器参数的设置,这样可以给我们的配置文件减减肥。
自动装配属性有6个值可选,分别是:byName、byType、constructor、autodetect、no、default,可以根据英文释义去理解。
@Transactional
Spring事务的传播行为 :
在service类前加上@Transactional,声明这个service所有方法需要事务管理(由Spring管理)。每一个业务方法开始时都会打开一个事务。即是方法里面对数据库操作,如果失败则spring负责回滚操作,成功提交操作。
@Service
@Service用于标注业务层组件。
mvc:annotation-driven
<mvc:annotation- driven/>在初始化的时候会自动创建两个对 象,org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter 和 org.springframework.web.servlet.mvc.annotation.DefaultAnnotationMethodHandlerMapping.
<mvc:annotation-driven />开启了之后它给AnnotationMethodHandlerAdapter初始化7个转换器,可以通过调用AnnotationMethodHandlerAdapter类的getMessageConverts()方法来获取转换器的一个集合 List<HttpMessageConverter>
默认给AnnotationMethodHandlerAdapter初始化的有(当然我们也可以添加自定义的converter)
ByteArrayHttpMessageConverter
StringHttpMessageConverter
ResourceHttpMessageConverter
SourceHttpMessageConverter<T>
XmlAwareFormHttpMessageConverter
Jaxb2RootElementHttpMessageConverter
MappingJacksonHttpMessageConverter