`

《JAVA开发利器MyEclipse全面详解》学习笔记之Spring及其整合

阅读更多
不完全依赖:
    什么时候使用?
    bean甲在bean乙之前实例化,但在bean乙中不需使用bean甲,常用于数据库开发,例如注册数据库驱动必须在所有操作之前完成,但在操作中是不会调用驱动的。

延迟初始化bean:
    lazy-init=“true”

自动装配:
    autowire=”“
        default,no,byName,byType,constructor,autodetect(翻译为自动探测,通过自省机制决定constructor或byType)

依赖注入检查:
    dependency-check=”“
        default
        none
        simple对基本类型和集合类型
        object对其他bean
        all

bean的作用域:
    scope=”“
        singleton缺省
        prototype
        request
        session
        global session

方法注入:(比较少用)
    什么时候使用?
        例如向一个作用域为singleton的bean甲注入作用域为prototype的bean乙,对于bean甲来说,容器只会创建一个bean甲实例,这样,就没法让容器提供不同的bean乙实例
    方法注入分两种方式:
        lookup方法注入
        自定义方法注入

定义bean的生命周期:
    init-method=”bean中定义的初始化方法名“
    destroy-method=”bean中定义的销毁方法名“

bean的继承:
    标记为abstract 的bean是不能被实例化的,所以当调用getBean方法时将发生错误,这种bean 的作用就是让其他bean继承

面向切面编程   
两种方式:
    配置方式
    注解方式:当需要完成一个特定功能时,只需对Java程序完成注解
        技巧:普通AOP项目通常用注解方式,与其他框架整合时用配置方式

在ApplicationContext.xml中加入
xmlns:aop="http://www.springframework.org/schema/aop"
http://www.springframework.org/schema/aop
http://ww.springframework.org/schema/aop/spring-aop-2.5.xsd

面向切面编程的作用:在某一类方法的特定位置,执行相同的功能。
例如,执行数据库时,不管执行什么操作都要执行关闭数据库的操作
    示例:
        package com.ycx.dao;
        public class BookDAOImpl implement BookDAO{
            public void addBook(String name,double price){
                System.out.println("执行增加图书操作");
}
……
……
}

        public class AspectJXML{
            public void myAfterMethod(){
                System.out.println("数据库操作后,释放数据库资源");
}
}   

关键配置:
省略上面两个类的bean配置
<aop:config>
    <aop:aspect id="myAspect" ref="">     声明切面  
        <aop:pointcut id="allMethod" expression="execution(* com.ycx.dao.*.*(..))"/>
        <aop:after pointcut-ref="allMethod" method="myAfterMethod"/>
    </aop:aspect>
</aop:config>

使用注解方式开放AOP项目:
    在ApplicationContext.xml中加入
        <aop:aspectj-autoproxy/>以启动AspectJ组件技术

spring与hibernate整合:

事务管理:
    编程式事务管理
    声明式事务管理(常用,无需改动源代码,只需修改配置文件)
        首先,必须在applicationContext.xml头文件中加入相关配置,xmlns:aop="http://www.springframework.org/schema/aop"
http://www.springframework.org/schema/aop
http://ww.springframework.org/schema/aop/spring-aop-2.5.xsd(面向切面编程所需)
    xmlns:aop="http://www.springframework.org/schema/tx"
http://www.springframework.org/schema/tx
http://ww.springframework.org/schema/ tx /spring- tx -2.5.xsd(事务管理所需)

关键配置:
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    <property name


通过注解方式进行事务管理:
    在DAO程序类名上加@Transaction
    在applicationContext.xml文件中加入<tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true">

   









   
分享到:
评论

相关推荐

    Java开发利器Myeclipse全面详解

    《Java开发利器Myeclipse全面详解》是一本专注于Java开发者使用的集成开发环境——Myeclipse的详尽指南。这本书深入浅出地介绍了Myeclipse的各项功能,旨在帮助Java程序员提高开发效率,提升编程技能。 Myeclipse是...

    [Java开发利器Myeclipse全面详解]

    总的来说,《Java开发利器Myeclipse全面详解》是一本覆盖了MyEclipse各个方面知识的实用教程,对于想要掌握MyEclipse进行Java Web开发的读者来说,是不可或缺的学习资料。通过阅读此书,读者不仅能学会MyEclipse的...

    Java开发利器Myeclipse全面详解 增加目录 全面

    ### Java开发利器Myeclipse全面详解 #### 一、引言与版权说明 在开始详细介绍MyEclipse之前,我们先来看看这份文档的前言部分。这段话引用了荀子《劝学》中的一段名言:“吾尝终日而思矣,不如须臾之所学也……”...

    ( [Java开发利器Myeclipse全面详解].北风网讲师.扫描版.zip )

    通过学习《Java开发利器Myeclipse全面详解》,开发者不仅能掌握Myeclipse的基本使用,还能深入理解其高级特性,从而在实际开发工作中更加游刃有余。这本书是提升Java开发技能的重要参考资料,尤其适合初学者和有一定...

    Java开发利器Myeclipse全面详解第11章代码

    在第11章“SSH2框架整合开发”中,我们将深入探讨如何利用MyEclipse进行Struts2、Spring和Hibernate三大主流Java框架的集成应用。 Struts2是ActionServlet模型的一种实现,主要用于控制应用程序的流程,提供MVC模式...

Global site tag (gtag.js) - Google Analytics