使用eclipse搭建Spring框架

1.为了便于快速开发,所以我们需要下载一个spring tool工具
具体详情请参考http://blog.csdn.net/zhangkaidsy/article/details/77470908
这里写图片描述
但是和下载Hibernate Tools工具不一样的是,这次不需要去掉任何工具的勾选,默认全部勾选的就好,然后静静等待几分钟,成功后eclipse会提示是否重启,选择YES

2.重启后,在pom.xml添加Spring依赖

<dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>4.3.10.RELEASE</version>
    </dependency>

如果需要添加Spring其他版本的依赖
请去Spring官网www.spring.io
或者去Maven repository自行查询Spring依赖版本

3.依赖添加成功后,在resources下新建xml
这里写图片描述

这里写图片描述

这里写图片描述

然后Finish即可

4.使用
新建HumanBody实体类

package com.zhangkai.entity;

public class HumanBody {
	private Hand hand;
	private Foot foot;
	private Renal renal;
	public HumanBody(Hand hand, Foot foot, Renal renal) {
		super();
		this.hand = hand;
		this.foot = foot;
		this.renal = renal;
	}
	public HumanBody() {
		super();
	}
	public Hand getHand() {
		return hand;
	}
	public void setHand(Hand hand) {
		this.hand = hand;
	}
	public Foot getFoot() {
		return foot;
	}
	public void setFoot(Foot foot) {
		this.foot = foot;
	}
	public Renal getRenal() {
		return renal;
	}
	public void setRenal(Renal renal) {
		this.renal = renal;
	}
	@Override
	public String toString() {
		return "HumanBody [hand=" + hand.getHand() + ", foot=" + foot.getFoot() + ", renal=" + renal.getRenal() + "]";
	}
	
	
}

在编写三个接口,在这我就只是用其中一个接口作为示例

package com.zhangkai.entity;

public interface Foot {
	public String getFoot();
}

实现接口

package com.zhangkai.dao;

import com.zhangkai.entity.Hand;

public class HandRightDao implements Hand{

	public String getHand() {
		return "这是右手";
	}

}

applicationContext.xml

扫描二维码关注公众号,回复: 5069627 查看本文章
<?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.xsd">

	<bean id="HumanBody" class="com.zhangkai.entity.HumanBody"><!-- 引用实体类 -->
	    <property name="hand" ref="HandRightDao"></property><!-- 为实体类属性引用方法实现类  ref:方法实现类id在下方-->
	    <property name="foot" ref="FootLiftDao"></property>
	    <property name="renal" ref="RenalLiftDao"></property>
	</bean>
	
	<bean id="HandRightDao" class="com.zhangkai.dao.HandRightDao"></bean><!-- 引用方法实现类 -->
	<bean id="FootLiftDao" class="com.zhangkai.dao.FootLiftDao"></bean>
	<bean id="RenalLiftDao" class="com.zhangkai.dao.RenalLiftDao"></bean>
	<!-- 注意:id要保持一致 -->
</beans>

测试:

package com.zhangkai.test;

import org.junit.Test;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.core.io.ClassPathResource;

import com.zhangkai.entity.HumanBody;

public class SpringTest {
	//延时加载:解析xml时并不会加载所有bean,只会在调用bean时去加载。优缺点:服务器启动速度较快,但用户等待时间较长
	
	public void test1(){//延时加载(懒加载)
		BeanFactory bf=new XmlBeanFactory(new ClassPathResource("applicationContext.xml"));
		HumanBody humanBody=(HumanBody) bf.getBean("HumanBody");
		System.out.println(humanBody);
	}
	
	//即时加载:解析XMl时将所有bean全部加载,调用bean时便不会再去xml解析了。优缺点:服务器启动速度较慢,但用户等待时间较短
	@Test
	public void test2(){//即时加载
		ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext.xml");
		HumanBody humanBody=(HumanBody) ac.getBean("HumanBody");
		System.out.println(humanBody);
	}
}

希望此博客能对您有所帮助!

猜你喜欢

转载自blog.csdn.net/zhangkaidsy/article/details/77585218