Spring框架HelloWorld程序

来源:互联网 发布:沧海一声笑 知乎 编辑:程序博客网 时间:2024/05/17 08:16

创建类(Bean)

1.1、Dao层// 一、Dao接口public interface UserDao {    void printInfo();}// 二、Dao实现类public class UserDaoImpl implements UserDao {    private String jdbcUrl;    private String driverClass;    private String username;    private String password;    public void printInfo() {        System.out.println("jdbcUrl = " + jdbcUrl);        System.out.println("driverClass = " + driverClass);        System.out.println("username = " + username);        System.out.println("password = " + password);    }    // getter与setter略}1.2、Service层public class UserServiceImpl {    private UserDao userDao;    public UserDao getUserDao() {        System.out.println("UserServiceImpl.getUserDao()");        return userDao;    }    public void setUserDao(UserDao userDao) {        System.out.println("UserServiceImpl.setUserDao()");        this.userDao = userDao;    }}2、Spring的配置文件<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"        xmlns:tx="http://www.springframework.org/schema/tx"        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd                http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd">    <!-- 配置Dao并设置他的属性 -->    <bean id="userDao" class="cn.itcast.b_springhelloworld.UserDaoImpl">        <property name="jdbcUrl" value="jdbc:mysql:///test"></property>        <property name="driverClass" value="com.mysql.jdbc.Driver"></property>        <property name="username" value="root"></property>        <property name="password" value="root"></property>    </bean>    <!-- 配置Service并设置他的属性 -->    <bean id="userService" class="cn.itcast.b_springhelloworld.UserServiceImpl">        <property name="userDao" ref="userDao"></property>    </bean></beans>3、测试代码(主程序)public class HelloWorld {    @Test    public void testBeanFactory() {        Resource resource = new ClassPathResource("cn/itcast/b_springhelloworld/applicationContext.xml");        BeanFactory beanFactory = new XmlBeanFactory(resource);        UserServiceImpl userServiceImpl = (UserServiceImpl) beanFactory.getBean("userService");        System.out.println(userServiceImpl); // 可以得到UserServiceImpl        System.out.println(userServiceImpl.getUserDao()); // 可以得到被注入的UserDao        userServiceImpl.getUserDao().printInfo(); // 可以显示Dao中被注入的信息        System.out.println("-- end --");    }}4、实际开发中的应用@Testpublic void testApplicationContext() {    ApplicationContext applicationContext = new ClassPathXmlApplicationContext("cn/itcast/b_springhelloworld/applicationContext.xml");    UserServiceImpl userServiceImpl = (UserServiceImpl) applicationContext.getBean("userService");    System.out.println(userServiceImpl); // 可以得到UserServiceImpl    System.out.println(userServiceImpl.getUserDao()); // 可以得到被注入的UserDao    userServiceImpl.getUserDao().printInfo(); // 可以显示Dao中被注入的信息    System.out.println("-- end --");}
原创粉丝点击