Spring

Spring是一个能够整合其它框架的容器,核心是AOP和IOC


AOP:面向切面编程

IOC(Inversion of Controller):控制反转,这是一种思想,由Spring容器进行对象的创建和依赖的注入,当我们使用时可以直接在容器中取出。

正转:由程序员进行对象的创建和依赖注入 。

Student s = new Student();
s.setName("aaaa");

Spring常用注解


@Controller

专门用来创建控制层对象(Servlet),这种对象可以接受用户的请求,可以直接返回给客户端。

@Component

可以创建任意对象,创建对象默认名称是类的驼峰命名法。

也可以指定对象的名称@Component("指定名称")

@Service

专门用来创建业务逻辑层的对象,负责向下访问数据访问层,处理完毕后的结果返回给控制层

@Repository

专门用来创建数据访问层的对象,负责数据库中数据的增删改差。

@Value

用来给简单类型的注入值-------(简单类型)8种基本类型+String

8种基本类型:整数类型(byte  int   short  long)

                        浮点类型(float double)

                        boolean

                        char

@Autowired(Spring)

使用类型注入值,从整个Bean工厂中搜寻同源类型的对象进行注入。

同源类型:1.类型完全一致

                  2.需要注入的类型与Bean中类型是父子类

                  3.需要注入的类型与Bean中类型是接口实现类

注:在有父子类情况下,使用按类型注入,就意味着有多个可注入的对象,此时按照名称进行二次筛选,选中与被注入对象相同名称的对象进行注入 。

@Autowired

@Qualifier("名称")

使用名称注入值,从整个Bean工厂中搜索相同名称的对象进行注入。

注:存在父子类的情况下,直接按照名称进行注入。

@Resource(JDK)

默认是按照名称进行注入

既不指定name,也不指定type,则自动按照name进行查找,如果没有查找到合适的Bean,则回退为原始类型进行查找,如果找到就进行注入。


AOP的实现及常用术语

1. 切面:重复的,公共的,通用的功能。例如:日志,事物,权限。

2. 连接点:就是目标方法,因为在目标方法中要实现目标方法的功能与切面功能。

3. 切入点(Pointcut):指定切入的位置,多个连接点构成切入点,切入点可以是一个目标方法,可以是类中的所有方法,也可以是某个包下的所有类中的方法。

4. 目标对象:操作谁就是谁。

5. 通知(Advice):来指定切入的时机,是在目标方法执行前还是执行后,还是出错时,还是环绕目标方法切入切面功能。


AspectJ

AspectJ 是一个优秀面向切面的框架,它扩展了 Java 语言,提供了强大的切面实现。它因为是基于java语言开发的。

前置通知@Before

后置通知@AfterReturning

环绕通知@Around

最终通知@After

定义切入点@Pointcut

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值