学科分类
目录
SSM框架

Spring的入门程序

通过上一小节的学习,相信读者对Spring的核心容器已经有了一个初步的了解。为了帮助读者快速的学习Spring,下面通过一个简单的入门程序来演示Spring框架的使用。

(1)在Eclipse中,创建一个名为chapter01的Web项目,将Spring的4个基础包以及commons-logging的JAR包复制到lib目录中,并发布到类路径下,如图1所示。

图1 导入JAR包

(2)在src目录下,创建一个com.itheima.ioc包,并在包中创建接口UserDao,然后在接口中定义一个say()方法,如文件1所示。

文件1 UserDao.java

 1    package com.itheima.ioc;
 2    public interface UserDao {
 3        public void say();
 4    }

(3)在com.itheima.ioc包下,创建UserDao接口的实现类UserDaoImpl,该类需要实现接口中的say()方法,并在方法中编写一条输出语句,如文件2所示。

文件2 UserDaoImpl.java

 1    package com.itheima.ioc;
 2    public class UserDaoImpl implements UserDao {
 3        public void say() {
 4            System.out.println("userDao say hello World !");
 5        }
 6    }

(4)在src目录下,创建Spring的配置文件applicationContext.xml,并在配置文件中创建一个id为userDao的Bean,如文件3所示。

文件3 applicationContext.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        xsi:schemaLocation="http://www.springframework.org/schema/beans 
 5        http://www.springframework.org/schema/beans/spring-beans-4.3.xsd"> 
 6        <!-- 将指定类配置给Spring,让Spring创建其对象的实例 -->
 7        <bean id="userDao" class="com.itheima.ioc.UserDaoImpl" />
 8    </beans>

在文件3中,第2~5行代码是Spring的约束配置,该配置信息不需要读者手写,可以在Spring的帮助文档中找到(请参见本节中的多学一招)。第7行代码表示在Spring容器中创建一个id为userDao的Bean实例,其中class属性用于指定需要实例化Bean的类。

注意:

Spring配置文件的名称可以自定义,通常在实际开发中,都会将配置文件命名为applicationContext.xml(有时也会命名为beans.xml)。

(6)在com.itheima.ioc包下,创建测试类TestIoC,并在类中编写main()方法。在main()方法中,需要初始化Spring容器,并加载配置文件,然后通过Spring容器获取userDao实例(即Java对象),最后调用实例中的say()方法,如文件4所示。

文件4 TestIoC.java

 1    package com.itheima.ioc;
 2    import org.springframework.context.ApplicationContext;
 3    import 
 4        org.springframework.context.support.ClassPathXmlApplicationContext;
 5    public class TestIoC {
 6        public static void main(String[] args) {
 7            //1.初始化spring容器,加载配置文件
 8            ApplicationContext applicationContext = 
 9                new ClassPathXmlApplicationContext("applicationContext.xml");
 10            //2.通过容器获取userDao实例
 11            UserDao userDao = (UserDao) applicationContext.getBean("userDao");
 1            //3.调用实例中的say()方法
 2            userDao.say();
 3        }
 4    }

执行程序后,控制台的输出结果如图2所示。

图3 运行结果

从图3可以看出,控制台已成功输出了UserDaoImpl类中的输出语句。在文件1-4的main()方法中,并没有通过new关键字来创建UserDao接口的实现类对象,而是通过Spring容器来获取的实现类对象,这就是Spring IoC容器的工作机制。

多学一招: 快速获取配置文件的约束信息

在Spring的配置文件中,包含了很多约束信息,初学者如果自己动手去编写,不但浪费时间,还容易出错。其实,在Spring的帮助文档中,就可以找到这些约束信息,具体的获取方法如下:

打开Spring解压文件夹中的docs目录,在spring-framework-reference文件夹下打开html文件夹,并找到index.html文件,如图4所示。

图4 Spring的参考文件目录

使用浏览器打开index.html后,在浏览器页面的Overview of Spring Framework下的7.2.1小节 Configuration metadata中,即可找到配置文件的约束信息。如图5所示。

图5 配置文件的约束信息

在图5中,标记处的配置信息就是Spring配置文件的约束信息。初学者只需将标注处的信息复制到项目的配置文件中使用即可。此外,由于使用的是Spring 4.3版本,所以还需要在复制后的xsd信息中加入版本号信息,其代码如下所示。

http://www.springframework.org/schema/beans/spring-beans-4.3.xsd

学习本书时,建议读者先下载书中所有配套章节的源代码。在学习每一章时,如果涉及到配置文件的约束信息,可以将相应章节源代码中的配置文件约束信息复制过来直接使用。

点击此处
隐藏目录