javaWeb学习04

news2024/11/18 9:27:41

AOP核心概念:

连接点:

JoinPoint, 可以被AOP控制的方法

通知:

Advice 指哪些重复的逻辑,也就是共性功能(最终体现为一个方法)

切入点:

PointCut, 匹配连接点的条件,通知仅会在切入点方法执行时被应用

目标对象:

Target, 通知所应用的对象

通知类型:

如果每一个方法的前面都需要加上切点表达式, 这个时候可以使用@Pointcut("")

@Pointcut("execution(*, com.findyou.service.impl.DeptServiceImpl.*(..))")
public void pt(){}

@Around("pt()")
public void test() {
    log.info("around....")
}

 通知顺序:

和类名的字母排序有关系,但是可以通过@Order(数字)来控制顺序

切点表示式:

切入点表达式-execution:

 包名.类名是可以省略的,但是不建议去省略

使用通配符描述切点:

注意* 代表的是 任意一个 

 如果要描述多个的话 可以写成:

@Pointcut("execution() || execution()")  // 之间用 || 来隔开

 书写建议:

切入点表达式-@annotation:

 SpringBoot

配置优先级:

如果 写了3份配置文件 例如: application.properties application.yaml application.yml 运行会发现

优先级最高的是 .properties 其次是yml 最后是yaml, 现在企业主流的是 yml 

打包成jar包的形式:

运行jar包:

Bean管理:

bean的获取:

默认的情况,Spring启动的时候,会把bean都创建好放在IOC容器里面,如果想主动获取这些bean,可以通过以下方法:

1: 根据bean的名称去获取:

ioc容器对象.getBean("想获取bean的名称") 如果bean没有名字 那么默认的就是类名小写

2:根据bean的类型去获取:

ioc容器对象.getBean(想要获取bean类名.class)

3:根据bean的名称以及类型去获取:

ioc容器对象.getBean("想要获取bean的名称", 想要获取bean类名.class)

这三次获取的bean是一样的 这说明是同一个bean对象 也就是单例

bean的作用域:

bean是单例的还是多例的取决于bean的作用域的配置, spring支持5种作用域, 前2种重要

默认是单例的模式设置作用域通过@Scope这个注解 例如@Scope("prototype") 这样设置的是多例模式 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1479113.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Django Web架构:全面掌握Django模型字段(上)

Django Web架构 全面掌握Django模型字段(上) - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite:http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article…

数电学习笔记——逻辑函数及其描述方法

目录 一、逻辑函数 二、逻辑函数的描述方法 1、逻辑真值表 2、逻辑函数式 3、逻辑图 4、波形图 三、逻辑函数的两种标准形式 1、最小项与最大项 最小项 最小项的性质 最大项 最大项的性质 2、最大项与最小项的关系 3、逻辑函数的最小项之和形式 4、逻辑函数的最…

Unity(第二十四部)UI

在游戏开发中,用户界面(UI)是至关重要的一部分。它负责与玩家进行交互,提供信息,并增强游戏的整体体验。Unity 提供了强大的工具和功能来创建和管理 UI。 ui的底层就是画布,创建画布的时候会同时创建一个事…

k8s部署mysql

(作者:陈玓玏) 一、前置条件 已部署k8s,服务端版本为1.21.14 二、部署mysql 拉取镜像; docker pull mysql将账号密码等信息写到configmap,创建configmap; apiVersion: v1 kind: ConfigMap m…

C++笔记(五)--- 虚函数(virtual)

目录 虚函数介绍 虚函数、覆盖和重载区别 虚函数介绍 C的虚函数是多态性的表现 1.构造函数不能为虚函数2.子类继承时虚函数仍为虚函数3.虚函数类外实现时,不需要加virtual4.有虚函数的类,析构函数一定要写成虚函数(否则可能会造成内存泄漏&…

Docker实战——容器

目录 Docker 容器的基本概念与操作1.使用“docker create”创建容器。这里基于Nginx的镜像创建了一个容器,名字为mycontainer。2.使用“docker ps -a”命令查看所有的容器,这时的容器不一定是运行状态。3.使用 “docker start” 命令可以启动容器。4.使用…

SpringBoot整合rabbitmq-主题交换机队列(四)

说明:Topic主题交换机它的大致流程是交换机和一个或者多个队列绑定,这个绑定的Routingkey是包含通配符的,满足通配符的队列会接收到消息。 通配符规则: #:匹配一个或多个词 *:匹配一个词 例如&#xff…

android TextView 实现富文本显示

android TextView 实现富文本显示,实现抖音直播间公屏消息案例 使用: val tvContent: TextView helper.getView(R.id.tvContent)//自己根据UI业务要求,可以控制 图标显示 大小val levelLabel MyImgLabel( bitmap 自己业务上的bitmap )va…

Prometheus 安装指南

目录 介绍 安装 介绍 Prometheus是一款开源监控系统,适用于容器化和微服务。它使用多维数据模型,支持PromQL查询语言,可以通过多种方式采集数据。具备灵活的告警和通知机制,可集成图形工具创建仪表盘。通过本地存储高效保存时间…

ywtool check命令及ywtool clean命令

一.ywtool check命令 1.1 ywtool check -I 1.2 ywtool check all 1.3 ywtool check io 1.4 ywtool check elk 1.5 ywtool check php 1.6 ywtool check mysql 1.7 ywtool check nginx 1.8 ywtool check system 1.9 ywtool check docker_nbip [容器名称] 1.10 ywtool check 1.10…

buuctf_crypto_丢失的MD5+Quoted-printable+RSA

丢失的MD5 题目:(就一python文件,MD5.py) for i in range(32,127):for j in range(32,127):for k in range(32,127):mhashlib.md5()m.update(TASCchr(i)O3RJMVchr(j)WDJKXchr(k)ZM)desm.hexdigest()if e9032 in des and da in d…

吴恩达《机器学习》学习笔记

本笔记资料来源于 http://www.ai-start.com/ml2014/,该笔记来自于https://blog.csdn.net/dadapongi6/article/details/105668394,看了忘,忘了看,再看一遍。 时间统计:2024.2.29 5个番茄钟,从week1开始&…

游戏陪玩精品系统源码优化版3.0

下载地址:游戏陪玩精品系统源码优化版.zip 截图:

[Vulnhub]靶场 Web Machine(N7)

kali:192.168.56.104 主机探测: arp-scan -l 靶机ip:192.168.56.104 端口扫描 nmap -p- 192.168.56.106 看一下web 目录扫描 gobuster dir -u http://192.168.56.106 -x html,txt,php,bak,zip --wordlist/usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt exp…

基于springboot实现街球社区网站系统项目【项目源码+论文说明】

基于springboot实现街球社区网站系统演示 摘要 本文主要讲述了基于SpringBootVue模式的街球社区网站的设计与实现。这里所谓的街球社区网站是通过类似于百度贴吧之类的网上论坛使得所有的街球爱好者有一个可以互相交流的平台,并使所有用户可以在社区进行教学视频的观看以及相关…

使用Fabric创建的canvas画布背景图片,自适应画布宽高

之前的文章写过vue2使用fabric实现简单画图demo,完成批阅功能;但是功能不完善,对于很大的图片就只能显示一部分出来,不符合我们的需求。这就需要改进,对我们设置的背景图进行自适应。 有问题的canvas画布背景 修改后的…

Python:练习:编写一个程序,写入一个美金数量,然后显示出如何用最少的20美元、10美元、5美元和1美元来付款

案例: python编写一个程序,写入一个美金数量,然后显示出如何用最少的20美元、10美元、5美元和1美元来付款: Enter a dollar amout:93 $20 bills: 4 $10 bills: 1 $5 bills:0 $1 bills:3 思考: 写入一个美金数量&…

leetcode 热题 100_字母异位词分组

题解一: 排序:对两个字母异位词,二者排序后的字符串完全一样,因此可以对所给字符串进行排序,以排序后的字符串作为HashMap哈希表的键值,将排序前的字符串作为值进行存储分组,最后返回。 import…

面试数据库篇(mysql)- 08事务

原理 事务是一组操作的集合,它是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。 ACID是什么?可以详细说一下吗? 原子性(Atomicity):事务是不可分割的最小操作单元,要么全部成功,要么全…

element-ui附件上传及在线查看详细总结,后续赋源码

一、附件上传 1、在element-ui上面复制相应代码 a、accept"image/*,.pdf,.docx,.xlsx,.doc,.xls" 是规定上传文件的类型,若是不限制,可以直接将accept‘all即可; b、:action"action" 这个属性就是你的上传附件的地址&am…