当前位置: 首页 > news >正文

javaWeb学习04

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") 这样设置的是多例模式 

相关文章:

javaWeb学习04

AOP核心概念: 连接点: JoinPoint, 可以被AOP控制的方法 通知: Advice 指哪些重复的逻辑,也就是共性功能(最终体现为一个方法) 切入点: PointCut, 匹配连接点的条件,通知仅会在切入点方法执行时被应用 目标对象: Target, 通知所应用的对象 通知类…...

Day07:基础入门-抓包技术全局协议封包监听网卡模式APP小程序PC应用

目录 非HTTP/HTTPS协议抓包工具 WireShark 科来网络分析系统 WPE封包 思维导图 章节知识点: 应用架构:Web/APP/云应用/三方服务/负载均衡等 安全产品:CDN/WAF/IDS/IPS/蜜罐/防火墙/杀毒等 渗透命令:文件上传下载/端口服务/Sh…...

通过elementUI学习vue

<template><el-radio v-model"radio" label"1">备选项</el-radio><el-radio v-model"radio" label"2">备选项</el-radio> </template><script>export default {data () {return {radio: 1}…...

音视频数字化(数字与模拟-电视)

上一篇文章【音视频数字化(数字与模拟-音频广播)】谈了音频的广播,这次我们聊电视系统,这是音频+视频的采集、传输、接收系统,相对比较复杂。 音频系统的广播是将声音转为电信号,再调制后发射出去,利用“共振”原理,收音机接收后解调,将音频信号还原再推动扬声器,我…...

CSS复合选择器(二)

CSS复合选择器&#xff08;二&#xff09; 伪类选择器一、动态伪类&#xff1a;二、结构伪类三、否定伪类&#xff1a;四、UI伪类&#xff1a;五、目标伪类&#xff08;了解&#xff09;六、语言伪类&#xff08;了解&#xff09; 伪类选择器 作用&#xff1a;选中特殊状态的元…...

Postgresql中VACUUM操作原理和应用

VACUUM操作在PostgreSQL中的底层原理涉及几个关键概念&#xff0c;包括MVCC&#xff08;多版本并发控制&#xff09;、事务ID包裹、以及垃圾回收机制。我们逐一解析这些概念&#xff0c;以及它们是如何与VACUUM操作相互作用的。 关键概念 1. MVCC&#xff08;多版本并发控制&…...

5.1 Ajax数据爬取之初介绍

目录 1. Ajax 数据介绍 2. Ajax 分析 2.1 Ajax 例子 2.2 Ajax 分析方法 &#xff08;1&#xff09;在网页页面右键&#xff0c;检查 &#xff08;2&#xff09;找到network&#xff0c;ctrl R刷新 &#xff08;3&#xff09;找 Ajax 数据包 &#xff08;4&#xff09;…...

react-组件进阶

1.目标 能够实用props接收数据 能够实现父子组件之间的通讯 能够实现兄弟组件之间的通讯 能够给组件添加props校验 能够说出生命周期常用的钩子函数 能够知道高阶组件的作用 2.目录 组件通讯介绍 组件的props 组件通讯的三种方式 Context props深入 组件的生命周期 Render-p…...

企业有了ERP,为什么还要上BI?

在我们以往和企业的沟通过程中&#xff0c;我们发现还是有相当多的一部分企业对于商业智能 BI 了解不多&#xff0c;或者对商业智能 BI 的理解仅停留在花花绿绿的可视化页面上&#xff0c;要么就是提出以下类似问题&#xff1a; 财务部门&#xff1a;BI 的财务分析指标也就是三…...

P1331 海战

难度&#xff1a;普及- 题目背景 在峰会期间&#xff0c;武装部队得处于高度戒备。警察将监视每一条大街&#xff0c;军队将保卫建筑物&#xff0c;领空将布满了 F-2003 飞机。 此外&#xff0c;巡洋船只和舰队将被派去保护海岸线。不幸的是&#xff0c;因为种种原因&#x…...

Orange3数据预处理(索引选择器组件)

组件描述 数据行即使在某些或全部原始变量被来自原始变量的计算变量替换时&#xff0c;也保持其身份。 此小部件获取两个数据表&#xff08;“数据”和“数据子集”&#xff09;&#xff0c;它们可以追溯到同一来源。基于行身份而非实际数据&#xff0c;它会从“数据”中选择所…...

Python实现时间序列分析进行平稳性检验(ADF和KPSS)和差分去趋势(adfuller和kpss算法)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 时间序列分析中的平稳性检验是评估一个时间序列是否具有稳定的均值和方差。在经济学、金融学以及其他诸…...

代码随想录 Leetcode494. 目标和

题目&#xff1a; 代码(首刷看解析 2024年2月26日&#xff09; 思路&#xff1a;根据题意&#xff0c;设两个背包&#xff0c;packageA存放前面是""的数字之和&#xff0c;packageB存放前面是“-”的数字之和 则sum packageA packageB; target packageA - packag…...

【5G NR】【一文读懂系列】移动通讯中使用的信道编解码技术-NR编解码LDPC和Polar概述(一)

目录 NR LDPC和Polar编码技术概述 LDPC&#xff08;低密度奇偶校验码&#xff09; LDPC 工作原理 LDPC 应用场景&#xff1a; LDPC 与其他编码技术相比的优势&#xff1a; Polar 极化码 Polar 工作原理 Polar 应用场景&#xff1a; Polar 与其他编码技术相比的优势&am…...

代码库管理工具Git介绍

阅读本文同时请参阅-----免费的Git图形界面工具sourceTree介绍 Git是一个分布式版本控制系统&#xff0c;它可以帮助开发者跟踪和管理代码历史。Git的命令行工具是使用Git的核心方式&#xff0c;虽然它可能看起来有些复杂&#xff0c;但是一旦掌握了基本命令&#xff0c;你…...

【长期更新】游戏开发中可能会用到的数学小工具

从一个向量生成一组正交基 https://graphics.pixar.com/library/OrthonormalB/paper.pdf...

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的活体人脸检测系统(Python+PySide6界面+训练代码)

摘要&#xff1a;本篇博客详细讲述了如何利用深度学习构建一个活体人脸检测系统&#xff0c;并且提供了完整的实现代码。该系统基于强大的YOLOv8算法&#xff0c;并进行了与前代算法YOLOv7、YOLOv6、YOLOv5的细致对比&#xff0c;展示了其在图像、视频、实时视频流和批量文件处…...

亚信安慧AntDB助力全链路实时化

实时数据平台&#xff0c;快速实现企业全链路实时化 引入数据仓库、数据挖掘、HTAP等先进理念&#xff0c;通过实时数据应用平台来装载庞大的信息量&#xff0c;进行实时分析处理&#xff0c;克服数据处理过程中的困难&#xff0c;是当下各企事业单位、互联网、金融&#xff0c…...

C#进阶——反射、特性

反射 特性...

UE5 C++ 发射子弹发射(Projectile)

一.相关蓝图的练习&#xff0c;在我之前的文章中射击子弹案例-CSDN博客 本篇使用C实现 1.创建C类 MyBullet,在MyBullet.h中包含相关头文件 #include "CoreMinimal.h" #include "GameFramework/Actor.h" #include "Components/StaticMeshComponent.…...

2026 最新 从零搭建本地大模型 RAG 知识库问答系统:基于 Llama 3.2 8B 量化版 + LangChain+Chroma,全流程代码实操 + 踩坑指南

2026最新 从零搭建本地大模型RAG知识库问答系统&#xff1a;基于Llama 3.2 8B量化版LangChainChroma&#xff0c;全流程代码实操踩坑指南 【本文首发CSDN&#xff0c;未经授权禁止转载】 文章目录 文章目录2026最新 从零搭建本地大模型RAG知识库问答系统&#xff1a;基于Llam…...

C语言这么牛,它自身又是用什么语言写的?真相很硬核

你有没有想过一个问题&#xff1a;世界上第一个C语言编译器&#xff0c;它是用什么语言写的&#xff1f;要解开这个谜团&#xff0c;我们得回到计算机的起点 CPU真正能读懂的&#xff0c;只有由0和1组成的机器语言。这是所有故事的基石。 那么&#xff0c;第一步是怎么走的呢&a…...

LeetCode442 数组中重复的数据|原地哈希空间优化算法C++深度题解

大家好&#xff0c;今日完成中等难度数组算法刷题&#xff0c;攻克面试高频空间限制难题。 本题核心考点&#xff1a;严格限制O(n)时间复杂度、只能常数额外空间&#xff0c;不能新开哈希表&#xff0c;力扣经典数组思维题。题目题意长度为n的数组&#xff0c;数字范围全部在 […...

AI人工智能和数字孪生赋能智慧城市生命线数字化监测平台设计方案 :五层分层解耦的数字孪生架构、深度融合BIM与GIS技术

本方案构建AI与数字孪生驱动的城市生命线监测平台&#xff0c;融合物联网、5G、BIM/GIS及智能算法&#xff0c;实现供水、燃气等基础设施的实时感知、风险预警与应急联动&#xff0c;形成“感知-分析-决策”闭环&#xff0c;全面提升城市安全韧性与治理效能。 标准体系&#xf…...

Security:Elastic Security 实战:从零构建威胁检测与响应闭环

1. Elastic Security 初探&#xff1a;企业安全防护新思路 第一次接触Elastic Security时&#xff0c;我被它"SIEM端点防护"的二合一设计惊艳到了。传统企业安全方案往往需要采购多个独立系统&#xff0c;而Elastic Security直接把日志分析、威胁检测、终端防护这些功…...

从凸包到对话:深入解析Pointer Network如何革新序列生成任务

1. 从几何问题到序列生成&#xff1a;Pointer Network的诞生背景 我第一次接触Pointer Network是在解决一个看似简单的几何问题时——计算给定点集的凸包。传统算法虽然能完美解决&#xff0c;但当我尝试用神经网络实现时&#xff0c;立刻遇到了seq2seq模型的致命缺陷&#xff…...

如何解决fzf与tmux集成的常见问题:完整解决方案指南

如何解决fzf与tmux集成的常见问题&#xff1a;完整解决方案指南 【免费下载链接】fzf :cherry_blossom: A command-line fuzzy finder 项目地址: https://gitcode.com/GitHub_Trending/fz/fzf fzf是一款强大的命令行模糊查找工具&#xff0c;而tmux则是广受欢迎的终端复…...

智能文件分拣工具:双模式智能分拣,自定义文件夹命名,按文件类型自动分类,一键批量整理海量文件,零门槛高效管理电脑数字资产

大家好&#xff0c;我是大飞哥。日常使用电脑时&#xff0c;我们总会遇到海量零散文件手动整理耗时耗力、文件夹创建繁琐、混合文件分类杂乱、归档后难以查找的核心痛点&#xff0c;要么花费数小时手动拖拽拆分文件&#xff0c;要么分类后的文件杂乱无章&#xff0c;后续查找使…...

2026年灵敏感测实时微控制器选型:国内哪家厂商兼具精度与稳定性?

一、引言灵敏感测实时微控制器是工业自动化、汽车电子、智慧能源、机器人等领域嵌入式系统的核心控制单元&#xff0c;承担物理信号采集、实时运算与闭环控制的关键职能&#xff0c;其性能直接决定终端设备的控制精度、响应速度与运行稳定性。当前工业智能化与汽车电子化进程中…...

Python脚本驱动:AutoCAD Plant 3D中槽式垂直三通参数化建模实战

1. 为什么需要参数化建模槽式垂直三通&#xff1f; 在管道工程设计领域&#xff0c;槽式垂直三通是最常见的管件之一。传统手动建模方式需要反复绘制草图、拉伸实体、布尔运算&#xff0c;一个简单的三通模型可能要花费设计师半小时。当遇到非标尺寸或批量修改时&#xff0c;这…...