其他分享
首页 > 其他分享> > Spring(一)

Spring(一)

作者:互联网

Spring初体验

Srping的用处之一就是解耦,降低程序之间的依赖性,避免程序在编译期就因为过度的依赖而产生错误.
如Dao层和Service层之间的依赖,频繁地使用new关键字,导致程序之间的依赖性较高;而Spring的存在,恰好就是为了解决这个问题。

原生代码:
 IUserDao iUserDao=new UserDaoImpl();
    public void queryAll() {
        iUserDao.queryAll();
    }

在Spring框架里,我们将对象的创建全权交给Spring,底层用的是工厂模式。
Spring将创建好的对象放进Map里,我们使用时只需要用唯一的标识id就可以将对象取出进行使用,而不再频繁地使用new关键字。

以下是Spring示例,在使用前需要先配置好Bean.xml,在xml中写明对象的唯一标识和全类名。

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="
	http://www.springframework.org/schema/beans
	http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
	http://www.springframework.org/schema/context
	http://www.springframework.org/schema/context/spring-context-3.0.xsd">

    <bean id="UserService" class="com.imis.service.impl.UserServiceImpl"></bean>
    <bean id="UserDao" class="com.imis.dao.impl.UserDaoImpl"></bean>
</beans>

那么在接下来的使用中,我们只需要在Map中取出即可用对象

 public static void main(String[] args) {
        //1.获取核心容器对象
        ApplicationContext ac=new ClassPathXmlApplicationContext("bean.xml");
        //2.根据id获取bean
        IUserService is=ac.getBean("UserService",IUserService.class);
        IUserDao id=ac.getBean("UserDao",IUserDao.class);
        System.out.println(is);
        System.out.println(id);
    }

输出结果

com.imis.service.impl.UserServiceImpl@3ffc5af1
com.imis.dao.impl.UserDaoImpl@5e5792a0

标签:xml,ac,IUserDao,Spring,new,id
来源: https://blog.csdn.net/weixin_45925906/article/details/112728477