使用spring,一般就是指使用spring ioc容器。
ioc容器的作用是,把bean之间的依赖关系通过配置文件来管理,即依赖注入机制。
而使用bean就需要实例化,spring提供的ioc容器实例化有两种途径,bean工厂和Application Context,后者是前者的子接口,更加丰富,尽量使用后者。前两者都是接口,接口不能实例化,我们需要实例化接口的实现。
主要方式就是:ClassPathXmlApplicationContext
例如:ApplicationContext context=new ClassPathXmlApplicationContext("bean.xml")
通过ioc实例获取bean,例如:context.getBean("run")
获取bean是有前提的,得先定义bean,这里的bean不一定是javaBean,可以是pojo(简单java对象),即可以不依赖任何环境就可以使用测试的对象(bean),对立于复杂组件(bean)模型EJB。
定义bean有常用两种途径,一种是xml内定义,一种是注解,小子最初接触的都是xml方式,功能全面但同时比较繁琐,没有特别要求下并不推荐,目前使用都是注解,在对应类上方添加注解例如:@Component,即定义为bean
和@Component作用相同目前仅为了区分不同层的注解还有@Service,@Controller,@Repository,三者继承自@Component
同理,调用方式除了以上的代码方式,也可以在类定义上方写注解,例如@Autowired,这样定义的类就可以直接使用
spring ioc容器就是这样一个简单的运行方式,但其大大简便了开发,同时也比servlet更有条理