python/Java
springboot下实现shutdown hook的几中方式
一、概述
在应用中,经常希望在JVM关闭时做一些清理工作
二、JVM自带的shutdownHook
使用java.lang.Runtime.getRuntime().addShutdownHook(T
2023-12-25 11:13:06
阅读数: 88
评论数: 0
一、概述
@EnableAspectJAutoProxy 是 Spring 框架中的一个注解,作用是开启 Spring 对 AspectJ 自动代理的支持,即自动检测@Aspects标注的切面类,并将
2023-12-25 10:33:14
阅读数: 46
评论数: 0
python/Java
springboot 多数据源jpa、mybatis、jdbcTemplate
一、概述
1、读写分离
数据库主节点压力比较大,需要增加从节点提供读操作,以减少压力。
2、多数据源
一个复杂发项目,因为没有拆分服务,需要连接多个业务的数据源。
这些场景都需要使用springboo
2023-12-25 10:23:23
阅读数: 110
评论数: 0
python/Java
springboot mybatis多数据源的两种整合方法
一、概述
一个项目使用多个数据库(无论是主从复制--读写分离还是分布式数据库结构)的重要性变得越来越明显,整合的多数据源有两种方式:分包和aop。
1、SqlSessionTemplate
SqlSe
2023-12-25 09:42:39
阅读数: 347
评论数: 0
python/Java
Netty中的LoggingHandler
一、概述
在 Netty 框架中,有一个 LoggingHandler, 既可以打印进站的数据,也可以打印出站的数据。
二、使用
当在客户端和服务端的ChannelInitializer继承类中添加.
2023-12-21 17:45:35
阅读数: 59
评论数: 0
一、概述
1、BIO
当应用程序调用recvfrom系统调用时,该操作将导致进程阻塞。等待内核通过中断等一系列操作将网络数据拷贝到内核态(Socket缓冲区),再将内核态数据拷贝到用户态的内存。这种
2023-12-21 15:00:58
阅读数: 125
评论数: 0
一、classifier属性作用
比如JSON-lib,其jar提供了两个版本的SDK
这个时候就必须使用classifier属性指定。
<dependency>
<grou
2023-12-20 14:23:33
阅读数: 139
评论数: 0
工程管理
maven的使用
一、pom.xml
maven将项目抽象成一个模型,pom.xml为项目模型对象的描述文件。
1、maven模型版本,对于maven2-3,4.0.0基本稳定。
<modelVersion>4.0.0
2023-12-20 13:51:54
阅读数: 191
评论数: 0
html/css/js
javascript Function类型
一、概述
函数实际上是对象,每个函数都是Function类型的实例,而且与其他引用类型一样具有属性和方法,因此函数名实际上也是一个指向函数对象的指针,因为函数名是指针,所以js没有函数重载。
func
2023-12-20 10:25:36
阅读数: 70
评论数: 0
python/Java
spring boot 系统异常统一处理
系统异常捕获
参见:spring boot 2 全局异常处理
@ControllerAdvice(annotations = {RestController.class})
public class
2023-12-19 16:29:25
阅读数: 133
评论数: 0
python/Java
spring security
一、概述
SpringSecurity中认证(Authentication)和授权(Authorization)是分开的,认证是判断一个用户是否为合法用户,授权是访问控制。
在SpringSecur
2023-12-19 15:53:35
阅读数: 212
评论数: 0
python/Java
mybatis调用链路
一、概述
二、SqlSessionFactory
SqlSessionFactory由Mybatis配置文件和映射文件,使用SqlSessionFactoryBuilder进行创建,它是用于获取Sq
2023-12-19 14:20:54
阅读数: 122
评论数: 0
Linux
安装Xmind(脑图工具)
一、Centos7安装xmind2020
1、下载rpm安装包
http://www.xmind.net/download/linux/
2、安装
sudo rpm -ivh XMind-2020-f
2023-12-19 14:16:37
阅读数: 133
评论数: 0
python/Java
springboot事务详解
一、概述
1、事务
事务就是一组操作数据库的动作集合,集合中的动作要么全部执行,要么全部不执行。
2、事务特点(ACID)
Atomicity 原子性
整个事务是一个整体,是不可分割的最小工作单
2023-12-19 14:14:52
阅读数: 118
评论数: 0
一、简介
当把一个事件发布到Spring提供的ApplicationContext中,被监听器侦测到,就会执行对理原处理方法。
ApplicationContext继承了ApplicationEve
2023-12-19 14:14:14
阅读数: 137
评论数: 0
python/Java
SpringBoot事件监听ApplicationListener
一、概述
ApplicationContext事件机制是观察者设计模式的实现,通过ApplicationEvent类和ApplicationListener接口,可以实现ApplicationCont
2023-12-18 17:30:33
阅读数: 165
评论数: 0
python/Java
spring boot拦截方式
一、过滤器filter
可以获取http请求和响应,但无法获取与spring框架相关的信息,主要用于内容上的过滤,如敏感字替换、非法请求过滤。
1、Filter接口
init()
Filter
2023-12-18 16:57:57
阅读数: 329
评论数: 0
python/Java
Springboot CommandLineRunner和ApplicationRunner
一、概述
CommandLineRunner和ApplicationRunner接口是在容器启动成功后的最后一步回调。
参见:spring生命周期 中的springboot启动过程。
使用Comman
2023-12-18 16:43:18
阅读数: 93
评论数: 0
python/Java
spring @import注解
一、概述
1、java注解
java在jdk1.5中引入了注解,spring框架也正好把java注解发挥得淋漓尽致。
2、spring 的@Import注解
@Import注解是Spring用来注入
2023-12-18 15:14:14
阅读数: 234
评论数: 0
html/css/js
requestAnimationFrame(请求动画帧)
一、概述
在Web应用中,实现动画效果的方法有很多,js中可以通过定时器setTimeout来实现,css3可以使用transition和animation来实现,html5中可以使用canvas,除
2023-12-18 10:04:02
阅读数: 68
评论数: 0