IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> Javaee期末复习【上】(个人总结,望指正) -> 正文阅读

[Java知识库]Javaee期末复习【上】(个人总结,望指正)

AOP

Aop的概念

面向切面编程,通过程序运行时的动态代理实现程序功能的统一维护的一种技术。

在运行时,动态地将代码切入到类的指定方法、指定位置上的编程思想就是面向切面的编程。

有了AOP,我们就可以把几个类共有的代码,抽取到一个切片中,等到需要时再切入对象中去,从而改变其原有的行为。

Aop的专业术语:

1)连接点(Joinpoint)

一个类中的哪些方法可以被增强,那这些方法就称为连接点(可以被增强的方法称为连接点)比如上面的 add()、update()、select()、delete()都可以成为连接点

2)切入点(Pointcut)

实际上被增强的方法称为切入点,比如说只增强了add(),那么add()就可以称为切入点

3)增强/通知(Advice)

实际增强的逻辑部分称为通知(增强),比如说要给add()加一个日志功能,那这个日志功能就可以称为通知(增强)

4)切面(Aspect)

是一个动作,指的是把通知应用到切入点的过程

AspectJ注解

<!-- 设置使用注解的类所在的包 -->
<context:component-scan base-package="com.wlh.*"/>
<!--启用ApsectJ注解开发-->
<aop:aspectj-autoproxy></aop:aspectj-autoproxy>

@Aspect 定义切面类
@Componet 将这个类加入Spring的IOC容器;
@Order(1) 指定切面的优先级,数值越小优先级越高

@Before 前置通知,在方法执行之前执行
@After 后置通知,在方法执行之后执行
@AfterRunning 返回通知,在方法返回结果之后执行
@AfterThrowing 异常通知,在方法抛出异常之后执行
@Around 环绕通知,围绕着方法执行

Spring

Spring基础包(了解)

spring-core:Core模块主要包含Spring框架基本的核心工具类,Spring的其他组件要都要使用到这个包里的类,Core模块是其他组件的基本核心
spring-beans:包含访问配置文件、创建和管理bean以及进行IOC/DI操作相关的所有类
spring-context:Spring的上下文即IOC容器,通过上下文可以获得容器中的Bean
spring-expression:EL表达式语言用于在运行时查询和操纵对象

Spring注解开发

开启注解开发XML配置

<!--开启注解开发-->
<context:annotation-config>
<!--配置注解开发扫描包-->
<context:component-scan base-package="com.wlh">

Spring基本注解

@Autowired

@Autowired:自动装配,其作用是为了消除代码Java代码里面的getter/setter与bean属性中的property。默认按类型匹配的方式,在容器查找匹配的Bean,当有且仅有一个匹配的Bean时,Spring将其注入@Autowired标注的变量中。

@Component注解

相当于将对象存放到spring容器中。

其中@Component有三个子注解:

@Controller用于标注控制层组件,web层。

@Service用于标注业务层,service层。

@Repository用于标注数据访问组件,dao层。

@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。

Bean的常用属性

1)id?属性:Bean 的唯一标识名,必须以字母开头,且不能

包含特殊字符

2)class?属性:用来定义类的全限定名(包名+类名)

3)name?属性:用来为 Bean 指定一个 或 多个别名,且能

包含特殊字符。如果?Bean 没有 id,name 可当做 id 使用

4)scope?属性,其属性值如下:

(1)singleton:默认值,单例

(2)prototype:多例

IOC概念

控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。IOC最常见的方法是依赖注入

所谓依赖注入,举个例子说明,一个类Person,另一个类Car,如果Person的某个方法比如说drive,需要引用Car,则称Person类依赖于 Car类,延伸到对象,这种依赖关系依然成立,比如说Person类的对象boy依赖于Car类的对象toyota。再讲讲这个drive方法的实现,假定代码如下:

Public Person{
...
public void drive(){
? Car toyota=new Car("TOYOTA");
? toyota.挂档;
? toyota.踩油门;
? toyota.打方向;
}
}

控制反转简而言之是Spring帮助用户自动创建当前需要的对象,而不需要用户去new一个对象,这就实现了控制权的反转

Springmvc

Springmvc流程

1.用户发送请求至dispatcherservlet。

2.dispatcherservler调用handlermapping。
3.handlermapping找到具体的handler,生成处理器对象和处理器拦截器返回dispatcherservle(handler通过xml配置或注解配置)
4.调用handleradapter处理器适配器
5.handleradapter调用具体的处理器,controller,controller调用service
6.controller调用完后返回modelandview
7.handleradapter将modelandview返回给前段控制器
8.前端控制器调用视图解析器处理modelandview
9.视图解析器返回具体的view
10.前段控制器根据view进行渲染
11.前端控制器响应用户

?

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-11-30 15:28:34  更:2021-11-30 15:30:12 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 4:55:54-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码