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