前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Spring】Spring框架配置详情

【Spring】Spring框架配置详情

作者头像
陈树义
发布2022-04-29 10:37:46
6230
发布2022-04-29 10:37:46
举报
文章被收录于专栏:陈树义陈树义

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文件

代码语言:javascript
复制
 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接口类:

代码语言:javascript
复制
 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 类:

代码语言:javascript
复制
 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类:

代码语言:javascript
复制
 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中进行一些监听器的配置。

代码语言:javascript
复制
<listener>
 <listener-class>org.springframework.context.ContextLoaderListener</listener-class>
</listener>

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

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2014-06-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档