不是自己写的必须加bean
自己写的可以不加 例如用component-scan
autowired从ioc容器中随意拿出来赋值
ideal实现
连接ecipes数据库
数据库连接
数据库增删改查等操作
操作IDEAL的基本操作
util命名空间: 基本集合标签定义的集合或数组无法在多个位置共享,可以使用 util schema 里的集合标签定义独立的集合或数组以实现在多个位置集合数据共享。注意:必须在 <beans> 根元素里添加 util schema 定义。
通过前后对比,不难看发现:BookService对象获得依赖BookDao对象的过程,由主动变为了被动,控制权颠倒过来了,这就是“控制反转”这个名称的由来。
传统Java开发中,某个Java对象(例BookService对象)所依赖的Java对象(例BookDao对象)需要在该对象(例BookService对象)内部创建并为本对象(例BookService对象)变量(例bookDao变量)赋值,是该对象(例BookService对象)主动创建依赖对象(例BookDao对象)并赋值的;而Spring框架中,某个Java对象(例BookService对象)所依赖的Java对象(例BookDao对象)由IoC容器,在程序运行时为该对象(例BookService对象)注入其所依赖的Java对象(例BookDao对象)。
IOC是非常简单的,原来是需要什么东西自己去拿,现在是需要什么东西就让别人送过来,如图的情景,形象地说明了使用IOC模式的前后差别: