您的位置:首页 > 编程语言 > Java开发

[原]spring学习笔记3.简单的开始2

2009-02-12 07:49 344 查看
转载请注明出处.谢谢

现在采用spring的话会怎么样呢.(whyspring2的代码)

这时候,就不需要UserDaoFactory类

而UserManager类修改成:

注意看:不需写单例了,也不用建工厂,只需要简简单单的把你需要的元素(如本例中的UserDao)建好,并且设置setter方法(也可以用构造方法,但不推荐).接下来的new 等等事情就交给spring来做.

1package com.zyl.spring.manager;

2

3import com.zyl.spring.dao.UserDao;

4

5

6

配置文件中:

1<?xml version="1.0" encoding="UTF-8"?>

2<beans

3 xmlns="http://www.springframework.org/schema/beans"

4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

5 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
6<!-- 以下注册所需要的元素 spring通过配置文件可以很好的管理你的对象. 在类中定义setter,sping可以帮忙你注入对象-->

7<bean id="userDao4Mysql567" class="com.zyl.spring.dao.UserDao4Mysql"/>

8<bean id="userDao4Oracle123" class="com.zyl.spring.dao.UserDao4Oracle"/>

9

<bean id="userManager5566" class="com.zyl.spring.manager.UserManager">

<property name="userdao" ref="userDao4Oracle123" />

</bean>

</beans>

bean id是可以随便取名的,但是在所有使用的xml文件中,bean id不可以重复.

class就是bean id所实际代表的类的路径咯

在第7.8两行配置UserDao的2个实现类

在第10行,配置UserManager类.UserManager类中有属性private UserDao userdao;

在第11行通过property属性注册它,注意property name的值是UserManager类中定义变量时使用的变量名哦.

而ref 属性就是指向bean id名相同的那个类咯.这个完成的功能是什么? 不要告诉我,你不知道.回忆下上一个项目吧.

这样如果你要修改引用,在ref中修改就可以了.注意,它的值是bean id. 当然它也可以是其他的东西.

接下来是client的代码:

配置的东西呢,大概就是让spring去xml中找咯

然后通过UserManager的实例从factory中取得bean id为userManager5566的类 (这里要转型 )

接下来就可以用了.

package com.zyl.spring.client;

import org.springframework.beans.factory.BeanFactory;

import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.zyl.spring.manager.UserManager;

public class Client

/** *//**

* @param args

*/

public static void main(String[] args) //通过配置文件初始化bean工厂

BeanFactory factory =new ClassPathXmlApplicationContext("applicationContext.xml");//加上配置文件xml的名字

//通过bean工厂得到相应的对象(UserManager)

UserManager userManager=(UserManager)factory.getBean("userManager5566");//即为xml中配置的id名

userManager.save("111", "pa");

}

}

接下来,让我们见证奇迹的一刻:(偶尔模仿一下刘谦,关注他有2年了,今年他也上春晚:) )

打印的效果是一样的. here is mysql

修改引用的话,在xml中修改ref就可以了. 先到这里吧. 不写了.吃点东西.好饿.生日的时候不能饿肚子.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: