1、什么是spring,在开发中起到什么作用
Spring是轻量级企业应用开发框架,它解决了业务逻辑层和其它各层之间的耦合关系,主要特性依赖注入(dependency injection)DI和面向切面编程(aspect-oriented programming)AOP。
Spring通过IOC容器实现依赖反转,将对象之间的依赖关系进行解耦操作。
Spring对各种优秀框架提供了支持,是开发难度降低,如jdbc、redis、消息队列等接口调用。
2、spring框架有哪些常用的设计模式
单列模式:即一个类只有一个实例,全局访问只有这一个公共接口
工厂模式:即创建对象的接口,这个接口模式是由子类来确定要实现的实例化对象。
观察者模式:即对象间建立一对多的关系,当某个对象发生改变时,所有依赖它的对象也会相续更新。
3、关于@Component、@Controller、@Repository、@Service注入之间的区别
@Component它是spring管理组件bean通用构造型;@Controller它是sping mvc控制器的类标记,它会自动将bean导入到IOC容器中;@Repository它是用来表示数据访问层(DAO)类标识;@Service它是标识服务层的标记,它们可以将所代表的标识层导入到IOC容器中。
4、@Autowired和@Resource之间区别
@autowired是按照类型进行自动装配,依赖的对象必须存在,不然会报错;@Resource是按照名称来进行自动装配,只有当找不到名称时,才会按照类型进行注入。
5、@Qualifier注解有什么作用
用来区分不同的bean容器,当出现多个相同的bean名字时,可以通过该注解方式进行区分
6、spring事务实现的方式有哪些
主要有两种:编程事务方式,就是通过写代码的方式维护事务的一致性,可以灵活控制,但比较难维护;注解声明式事务:是将业务代码和事务隔离出来,便于维护。
7、@Component和@Bean的区别
@Component注解作用于类,@Bean注解作用于方法
8、spring的bean注解有哪些
1、@component通用注解,可任意标注
2、@Repository主要用于数据库操作的标注注解,用于持久层
3、@Service注解用于服务层,处理逻辑上的业务
4、@Controller注解spring mvc控制层,主要用于调用service层注解的方法