环境搭建
第一步:安装spring
可以参考这个:
安装成功后,重启后有下面这个Spring IDE就表示安装成功。
或者打开所选项,会有spring
第二步:把以下jar包导入到classPath下:
新建一个java工程,里面建一个文件夹lib,存放jar包
从该地址下载commons-logging:http://commons.apache.org/proper/commons-logging/download_logging.cgi。
从该地址下载spring-framework框架:https://repo.spring.io/release/org/springframework/spring/
解压,把该目录下相关jar包复制到lib目录下。
然后选中这些jar包,右键,添加到build path下面。
变成如下:
环境搭建完毕。
新建一个hello word
一:创建一个spring配置文件
选择Other
finish
二,新建一个HelloWord类。
package com.spring.beans;
public class HelloWord {
private String name;
public void setName(String name)
{
this.name=name;
}
public void hello()
{
System.out.println("hello"+this.name);
}
}
三,在配置文件中配置bean。
<?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 -->
<bean id="helloWord" class="com.spring.beans.HelloWord">
<property name="name" value="Spring"></property>
<!-- 这里的name里面的值为HelloWord这个类里面set方法后面的字符,比如这个类里面有个方法setName,那么这个值为name,如果为其他值就会报错 -->
</bean>
</beans>
解释:
1,property的name,里面的值为HelloWord这个类里面set方法后面的字符,比如这个类里面有个方法setName,那么这个值为name,如果为其他值就会报错。
2,property的value表示是对于这个setName方法,传进去的值,这里相当于使用对象实例执行了一次setName("Spring"),这时候变量值为Spring。
三,新建main方法通过配置调用hello word类。
package com.spring.beans;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Main {
public static void main(String [] args)
{
//1,创建spring的IOC容器对象
ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml");//指定配置文件名
//2,从IOC中获取Bean实例
HelloWord helloword=(HelloWord) ctx.getBean("helloWord");//getBean里面的参数是配置的bean的ID
//3,调用hello方法。
helloword.hello();
}
}
分三步操作:
1,创建spring的IOC容器对象,参数为配置文件名。
在创建这个容器的时候,会自动把容器下面的bean所配置的对应类的构造方法,和set方法执行一遍,对变量赋值,set方法的变量值就是property里面配置的value。
ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml");//指定配置文件名
2,从IOC中获取bean实例。
通过ctx这个容器的getBean方法,把刚刚配置的bean的id作为参数传进去,获取对应id值所对应的类的对象实例。
HelloWord helloword=(HelloWord) ctx.getBean("helloWord");//getBean里面的参数是配置的bean的ID
3,直接通过对象调用方法。
从执行结果可以看出来,在配置文件中设置的value成功的传入了,设置了value为Spring.