`

Spring xml 方式配制的小demo

阅读更多
1、新建一个Web程序
   在程序中引入Spring所需要的jar包,我以前有弄好的包,包含了以下几个jar包

2、在src下新建Person.java的实例bean.
package cn.ehoo.bean;
/**
 *@author whp
 *@Email whp@ehoo.cn
 *@Dec 30, 2010
 *
 */
public class Person {
	private Long id;
	private String userName;
	public Long getId() {
		return id;
	}
	public void setId(Long id) {
		this.id = id;
	}
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
}


3、再建立数据层的PersonDao接口与PersonDaoBean的实现bean

PersonDao.java
package cn.ehoo.dao;

import cn.ehoo.bean.Person;

/**
 *@author whp
 *@Email whp@ehoo.cn
 *@Dec 30, 2010
 *
 */
public interface PersonDao {

	public void save(Person person);

}


PersonDaoBean.java
package cn.ehoo.dao.impl;

import org.springframework.stereotype.Repository;

import cn.ehoo.bean.Person;
import cn.ehoo.dao.PersonDao;

/**
 *@author whp
 *@Email whp@ehoo.cn
 *@Dec 30, 2010
 *
 */
public class PersonDaoBean implements PersonDao {
	public void save(Person person){
		System.out.println("执行 PersonDaoBean 里的save方法");
	}
}


4 建立服务层的PersonService.java与实现类PersonServiceBean.java

PersonService.java

package cn.ehoo.service;

import cn.ehoo.bean.Person;

/**
 *@author whp
 *@Email whp@ehoo.cn
 *@Dec 30, 2010
 *
 */

public interface PersonService {

	public void save(Person person);

}


实现类PersonServiceBean.java
package cn.ehoo.service.impl;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import cn.ehoo.bean.Person;
import cn.ehoo.dao.PersonDao;
import cn.ehoo.service.PersonService;

/**
 *@author whp
 *@Email whp@ehoo.cn
 *@Dec 30, 2010
 *
 */
public class PersonServiceBean implements PersonService {
	 private PersonDao personDao;
	public void save(Person person){
		System.out.println("执行 PersonServiceBean 里的save方法"); 
		personDao.save(person);
	}
	
	public void init(){
		System.out.println("初始化资源文件");
	}
	
	public void destroy(){
		System.out.println("关闭资源性文件");
	}
}


5 在程序的classpath路径下面(也就是src的根目录下)建立beans.xml文件
  <?xml version="1.0" encoding="UTF-8" ?> 
- <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
  <bean name="personDao" class="cn.ehoo.dao.impl.PersonDaoBean" /> 
- <bean name="personService" class="cn.ehoo.service.impl.PersonServiceBean">
  <property name="personDao" ref="personDao" /> 
  </bean>
  </beans>


6 junit进行测试
package junit.test;

import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import cn.ehoo.bean.Person;
import cn.ehoo.service.PersonService;

/**
 *@author whp
 *@Email whp@ehoo.cn
 *@Dec 30, 2010
 *
 */
public class SpringTest {
	public static PersonService personService;
	@BeforeClass
	public static void setUpBeforeClass() throws Exception {
		AbstractApplicationContext cxt = new ClassPathXmlApplicationContext("beans.xml");
		personService =(PersonService)cxt.getBean("personServiceBean");
	}
	@Test
	public void save(){
		Person person = new Person();
		personService.save(person);
	}
	public static void main(String[] args) {
		try {
			setUpBeforeClass();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	/**
	 *@author whp
	 *@Email whp@ehoo.cn
	 *@Dec 30, 2010
	 *
	 */

	@AfterClass
	public static void tearDownAfterClass() throws Exception {
	}
}







分享到:
评论

相关推荐

    Spring 注解 方式配制的小demo

    首先,我们来看标题"Spring 注解 方式配制的小demo",这意味着我们将学习如何创建一个简单的Spring应用,该应用完全基于注解进行配置。在传统的Spring配置中,我们需要在XML文件中定义bean及其属性,但使用注解配置...

    SpringXML方式实现AOP demo

    标题 "SpringXML方式实现AOP demo" 涉及到的是使用Spring框架通过XML配置来实现面向切面编程(AOP)的知识。面向切面编程是Spring框架的一个核心特性,它允许开发者在不修改原有业务代码的情况下,对系统进行横切...

    logback-spring.xml日志打印demo

    在Java开发中,日志记录是一项至关重要的任务,它帮助开发者追踪程序运行状态,调试问题,以及进行系统监控...在`demo`文件中,你可能找到了一个实际的`logback-spring.xml`配置示例,可以对照上述解释进行学习和实践。

    Spring事务小demo

    这个名为"Spring事务小demo"的项目提供了一个实践示例,帮助开发者了解Spring事务处理的基本概念和用法。 首先,Spring事务管理是Spring框架的核心特性之一,它允许我们以声明式或编程式的方式管理事务。声明式事务...

    spring的小demo

    在本项目"spring的小demo"中,我们主要探讨的是如何将Spring框架与iBATIS(现在称为MyBatis)进行整合,以实现高效、灵活的数据访问。Spring是Java开发中的一个核心框架,它提供了依赖注入(DI)、面向切面编程(AOP...

    spring4.0框架demo

    《Spring 4.0框架深度探索:基于Maven构建的实战Demo》 Spring框架作为Java企业级应用开发的基石,自推出以来就以其强大的功能和灵活性赢得了广大开发者的心。Spring 4.0作为其一个重要版本,引入了许多改进和新...

    eclipse添加springXML文件的提示

    ### Eclipse 添加 Spring XML 文件提示详解 #### 一、引言 在进行Java开发时,Spring框架因其强大的功能和灵活性而被广泛使用。Spring框架通过管理Bean的生命周期来简化应用程序的开发过程。为了更好地管理和配置...

    spring仿写demo代码

    spring仿写demo代码spring仿写demo代码spring仿写demo代码spring仿写demo代码spring仿写demo代码spring仿写demo代码spring仿写demo代码spring仿写demo代码spring仿写demo代码spring仿写demo代码spring仿写demo代码...

    Spring官方文档学习后Demo

    6. **Spring Boot**:Spring Boot简化了Spring应用的初始搭建以及开发过程,通过“约定优于配置”的原则,提供了一种快速启动Spring应用的方式。 7. **Spring Security**:为Web应用提供安全解决方案,包括认证、...

    spring+cxf小demo

    【Spring+CXF小Demo】是基于Java开发的一个入门级示例,主要展示了如何结合Spring框架与CXF库来创建和消费Web服务。Spring是企业级应用开发的强大框架,而CXF是一个开源的服务栈,用于构建和部署Web服务。这个Demo...

    spring ioc模块手写demo

    spring ioc模块手写demospring ioc模块手写demospring ioc模块手写demospring ioc模块手写demospring ioc模块手写demospring ioc模块手写demospring ioc模块手写demospring ioc模块手写demospring ioc模块手写demo...

    Spring demo 自动检测注解

    这种方式比传统的XML配置更为便捷,因为它减少了手动编写配置文件的负担。 自动检测注解的工作机制基于以下几点: 1. **类型匹配**:Spring会根据注解的属性类型去BeanDefinitionRegistry中查找相同类型的bean。...

    springBoot+springBatch批量处理数据demo

    在`pom.xml`或`build.gradle`文件中添加依赖后,SpringBoot会自动加载SpringBatch的配置。 接着,SpringBatch的主要组件包括Job、Step、Tasklet、ItemReader、ItemWriter和ItemProcessor。Job是批处理任务的高层次...

    spring-demo

    例如,`01spring4_ioc1`可能包含了如何创建Bean定义,配置Bean的关系,以及如何通过XML或注解方式实现依赖注入的示例代码。 "AOP的使用"指的是Spring的面向切面编程功能,如在`09spring4_aop1`和`11spring4_aop3`中...

    spring cloud demo

    本文将深入探讨基于Spring Cloud的"spring cloud demo"项目,包括消费者、生产者以及注册中心等核心组件,旨在为你提供一个可借鉴的实践案例。 一、Spring Cloud简介 Spring Cloud是一系列框架的集合,它为开发者...

    springmvc spring hibernate整合Demo

    这通常通过XML或Java配置完成,包括Spring MVC的DispatcherServlet配置、数据源配置以及Hibernate SessionFactory配置。 2. 配置Spring MVC:设置DispatcherServlet,处理HTTP请求,并配置HandlerMapping和...

    springwebflux的demo

    1. **pom.xml**: Maven配置文件,定义了项目的依赖,包括Spring Boot的父 pom 和Spring WebFlux的相关库。 2. **src/main/java**: 包含源代码,可能有`com.example.webfluxdemo`或类似包结构,包含主应用类(`...

    spring+ehcache示例整合Demo

    在这个"spring+ehcache示例整合Demo"中,我们将会探讨如何将Ehcache集成到Spring框架中,以实现高效的缓存管理。 首先,我们需要在项目的`pom.xml`文件中引入Ehcache和Spring的依赖。Ehcache通常使用的是`org....

    Spring Cloud 各组件Demo

    Spring Cloud 各组件Demo ,包含 Spring Cloud Eureka ,Spring Cloud Zuul , Spring Cloud Ribbon , Hystrix-Dashboard-Turbine 如有错误 ,请于本人联系 ,自会及时修改 , 防止误导他人

Global site tag (gtag.js) - Google Analytics