后端
OxygenBling
我会很努力,也期待会有好运气。
展开
-
分布式锁的三种实现方式及分析
Why1、为什么要用锁?为了保证一个方法或属性在高并发情况下的同一时间只能被同一个线程执行。锁是一种用来解决多个执行线程访问共享资源错误或数据不一致问题的工具。2、为什么要用分布式锁?分布式锁是针对分布式部署的应用设计的一种特殊的锁。单机部署的单体应用可以使用Java并发处理相关的API(如ReentrantLock或Synchronized)进行互斥控制。但是,随着业务发展的需要,原单体单机部署的系统被演化成分布式集群系统后,由于分布式系统多线程、多进程并且分布在不同机器上,这将使原单机部署情况下原创 2020-07-13 07:57:40 · 417 阅读 · 0 评论 -
Spring系列—— IOC容器
1 概念IoC(Inverse of Control)控制反转是Spring容器的内核,AOP、声明式事务都是在此基础上开花结果。因为IoC不够开门见山,Martin Fowler 提出了DI(Dependency Injection 依赖注入)的概念来代替IoC,即调用类对某一接口实现类的依赖关系由第三方(容器或协作类)注入,以移除调用类对某一接口实现类的依赖。2 IOC类型注入方法上看...原创 2019-02-21 19:11:06 · 288 阅读 · 0 评论 -
Spring系列——AOP(概念+常用的三种AOP实现方式+日志打印Demo)
1 概念1.1 基本概念AOP是Aspect Oriented Programing缩写,即面向切面编程。AOP通过横向抽取机制为无法通过纵向继承体系进行抽象的重复性代码提供了解决方案。AOP希望将分散在各个业务逻辑代码中的相同代码通过横向切割的方式抽取到一个独立的模块中。连接点Joinpoint程序执行的某个特定位置,比如类初始化前、类初始化后、类的某个方法调用前、后、方法抛出异常后。...原创 2019-03-10 22:49:20 · 376 阅读 · 0 评论 -
Spring:FactoryBean<T>接口+SqlSessionFactoryBean创建会话工厂
问题Spring项目整合MyBatis时使用MyBatis-Spring,配置回话工厂时使用如下代码。分析:在基础的MyBatis用法中是通过SqlSessionFactoryBuilder来创建SqlSessionFactory的。而在MyBatis-Spring中,则使用SqlSessionFactoryBean创建SqlSessionFactory。<!-- MyBatis会话工...原创 2019-05-16 18:51:53 · 1284 阅读 · 0 评论 -
使用数据库自增ID弊端
导入旧数据时,可能会ID重复或ID变化,导致导入失败。分布式架构,分库分表,无法实现全局ID唯一。增长是从1开始的,无法处理统一为统一格式。...原创 2019-06-11 16:33:45 · 3522 阅读 · 0 评论 -
spring配置注解context:annotation-config和context:component-scan区别
此文章转自https://blog.csdn.net/u010648555/article/details/76371474,仅作为记录查询所用Spring 中在使用注解(Annotation)会涉及到< context:annotation-config> 和 < context:component-scan>配置,下面就对这两个配置进行诠释。1.context:an...转载 2019-08-19 16:29:55 · 268 阅读 · 0 评论 -
try-with-resources
Whattry-with-resources 是 JDK 7 中一个新的异常处理机制,它能够很容易地关闭在 try-catch 语句块中使用的资源。所谓的资源(resource)是指在程序完成后,必须关闭的对象。try-with-resources 语句确保了每个资源在语句结束时关闭。所有实现了 java.lang.AutoCloseable 接口(其中,它包括实现了 java.io.Close...原创 2019-08-14 20:29:09 · 563 阅读 · 0 评论