• 【Spring】Spring框架配置详情


    Spring框架的一个亮点就是能实现注入并且可以对实例化的Bean进行管理。

    本文将对Spring框架的配置做一个详细的讲解。

    一般情况下Spring是不单独使用的,而是和Hibernate配合使用,或者与Hibernate和Struts配合使用。

    本文将通过Hibernate与Spring的配合使用,并通过JUnit进行简单的数据测试,已验证Spring是否配置成功。

    配置Spring的大致步骤如下:

    1.加入Spring所依赖的Jar

    2.编写applicatioinContext.xml文件

    3.编写一个基本的Dao操作类

    4.编写测试方法

    一、加入Spring所依赖的Jar包

    点击这里下载:http://pan.baidu.com/s/1o6E1vzs 密码:uijc

    其中Jar包的作用如下:

    spring-beans-2.5.2.jar     访问配置文件、创建和管理bean 以及进行Inversion of Control / Dependency Injection(IoC/DI)操作相关的所有类

    spring-context-2.5.2.jar     以找到使用Spring ApplicationContext特性时所需的全部类,JDNI 所需的全部类,instrumentation组件以及校验Validation 方面的相关类

    spring-core-2.5.2.jar     框架基本的核心工具类

    spring-jdbc-2.5.2.jar     包含对Spring 对JDBC 数据访问进行封装的所有类

    spring-orm-2.5.2.jar     对映射框架的一些支持

    spring-tx-2.5.2.jar     提供对事务的支持

    commons-logging-1.1.3.jar   是Struts中的一个Jar包。但Spring需要它,如果没有它,Spring会报错。

    同时如果你没有加入Hibernate所必须的Jar包,请阅读我的另一篇博文,在这里你可以找到Hibernate所必须的Jar包:Hibernate框架配置详解

    二、编写applicatioinContext.xml文件

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <beans xmlns="http://www.springframework.org/schema/beans" 
     3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     4 xmlns:context="http://www.springframework.org/schema/context" 
     5 xmlns:aop="http://www.springframework.org/schema/aop" 
     6 xmlns:tx="http://www.springframework.org/schema/tx" 
     7 xsi:schemaLocation="http://www.springframework.org/schema/beans
     8            http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
     9            http://www.springframework.org/schema/context
    10            http://www.springframework.org/schema/context/spring-context-2.5.xsd
    11            http://www.springframework.org/schema/aop
    12            http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
    13            http://www.springframework.org/schema/tx 
    14            http://www.springframework.org/schema/tx/spring-tx-2.0.xsd">
    15 
    16     <!-- Spring整合Hibernate:直接饮用hibernate配置文件-->    
    17     <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
    18         <property name="configLocation" value="classpath:hibernate.cfg.xml"></property>
    19     </bean>
    20     
    21     <!-- 创建baseDao对象 -->
    22     <bean id="baseDao" class="com.basehibernate.dao.impl.BaseDaoImpl">
    23         <!-- 在Dao中使用hibernateTemplate必须注入sessionFactory -->
    24         <property name="sessionFactory" ref="sessionFactory"/>
    25     </bean>
    26 </beans>

    三、编写一个基本的Dao操作类

    BaseDao接口类:

     1 package com.basehibernate.dao;
     2 
     3 /**
     4  * 公用DAO接口类
     5  * 时间:2014年6月4日 10:45:47
     6  * @author chenyr
     7  */
     8 
     9 public interface BaseDao {
    10     
    11     /**
    12      * 保存对象
    13      * @param obj
    14      */
    15     public abstract void save(Object obj);
    16     
    17 }

    BaseDaoImpl 类:

     1 package com.basehibernate.dao.impl;
     2 
     3 import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
     4 import com.basehibernate.dao.BaseDao;
     5 
     6 /**
     7  * 公共DAO实现类
     8  * @author chenyr
     9  *
    10  */
    11 public class BaseDaoImpl extends HibernateDaoSupport implements BaseDao {  //继承了HibernateDaoSupport类,需要注入SessionFactory对象
    12     /** 
    13      * 保存对象
    14      */
    15     public void save(Object obj) {
    16         getHibernateTemplate().save(obj);
    17     }
    18 }

    四、编写测试方法

    SpringTest类:

     1 package com.basehibernate.test;
     2 
     3 import org.junit.Test;
     4 import org.springframework.context.ApplicationContext;
     5 import org.springframework.context.support.ClassPathXmlApplicationContext;
     6 import com.basehibernate.dao.BaseDao;
     7 import com.basehibernate.pojo.Employee;
     8 
     9 public class SpringTest {
    10     
    11     static ApplicationContext ctx = null;
    12     @Test public void initParam()
    13     {
    14         ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
    15         BaseDao dao = (BaseDao)ctx.getBean("baseDao");
    16         
    17         Employee empl = new Employee();
    18         empl.setEmplName("员工11");
    19         empl.setPassword("1111");
    20         empl.setPwFlag(true);
    21         empl.setAutoEat(true);
    22         
    23         dao.save(empl);
    24     }
    25 }

    注:这里介绍的是桌面程序的一个配置情况,如果你是在J2EE网站开发使用Spring,那么你可能需要在web.xml中进行一些监听器的配置。

    <listener>
     <listener-class>org.springframework.context.ContextLoaderListener</listener-class>
    </listener>
    

    配置的目的是为了在服务器启动的时候让Spring去加载application-Context.xml文件。(2014年10月20日 15:56:39)

  • 相关阅读:
    istio kiali 亲和性调度
    istio kiali 内部介绍
    istio kiali 可视化bookinfo
    Istio 部署Bookinfo 应用
    初探istio kiali
    安装Istio
    Istio 是什么?
    AQS源码浅析
    go 单元测试testify
    go unknown revision报错
  • 原文地址:https://www.cnblogs.com/chanshuyi/p/3774972.html
Copyright © 2020-2023  润新知