- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
@Autowired //SessionFactory 自动注入ADao 的sessionFactory 属性中!!!
public ADao(SessionFactory sessionFactory){
}
@Repository
作用一:这个类放入容器
作用二:添加了异常转换功能 捕获异常以非检查型数据访问异常的形式重新抛出!!!
--定义 Bean 的注解
@Controller
@Controller(Bean 的名称)
定义控制层 Bean,如Action
@Service
@Service(Bean 的名称)
定义业务层 Bean
@Repository
@Repository(Bean 的名称)
定义 DAO 层 Bean
@Component
定义 Bean, 不好归类时使用.
--自动装配Bean (选用一种注解就可以)
@Autowired (Srping 提供的)
默认按类型匹配,自动装配(Srping 提供的) ,可以写在成员属性上,或写在 setter 方法上
@Autowired(required=true)
一定要找到匹配的 Bean ,否则抛异常。默认值就是 true
@Autowired
@Qualifier(bean 的名字)
按名称装配 Bean,与@Autowired 组合使用,解决按类型匹配找到多个 Bean 问题。
@Resource JSR-250 提供的
默认按名称装配,当找不到名称匹配的 bean 再按类型装配.
可以写在成员属性上,或写在 setter 方法上
可以通过@Resource(name=beanName) 指定被注入的 bean 的名称, 要是未指定 name 属性, 默认使用成员属性
的变量名,一般不用写 name 属性.
@Resource(name=beanName)指定了 name 属性,按名称注入但没找到 bean, 就不会再按类型装配了.
@Inject 是 JSR-330 提供的
按类型装配,功能比@Autowired 少,没有使用的必要。
--定义 Bean 的作用域和生命过程
@Scope(prototype)
值有:singleton,prototype,session,request,session,globalSession
@PostConstruct
相当于 init-method,使用在方法上,当 Bean 初始化时执行。
@PreDestroy
相当于 destory-method ,使用在方法上,当Bean 销毁时执行。
--声明式事务
@Transactional
public class Customer
{
private Person person;
public Customer(Person person) {
this.person = person;
}
public void setPerson(Person person) {
this.person = person;
}
//...
}
public class Person
{
//...
}
1. Auto-Wiring ‘no’
默认情况下,需要通过ref’来装配 bean ,如下:
bean id=customer class=mon.Customer
property name=person ref=person /
/bean
bean id=person class=mon.Person /
2. Auto-Wiring ‘byName’
根据属性 Property 的名字装配 bean ,这种情况,Customer 设置了 autowire=byName ,Spring 会自动寻找与属
性名字“person”相同的 bean ,
找到后,通过调用 setPerson(Person person)将其注入属性。
bean id=customer class=mon.Customer autowire=byName /
bean id=person class=mon.Person /
如果根据 Property name 找不到对应的 bean 配置,如下
这时就会装配失败,运行后,Customer 中person=null。
3. Auto-Wiring ‘byType
根据属性 Property 的数据类型自动装配,这种情况,Customer 设置了 au
文档评论(0)