<bean id="userDAO" class="com.zhl.UserDAOImpl" scope="prototype"/> <bean id="userService" class="com.zhl.UserServiceImpl"> <prop...
AOP底层实现原理
一、JDK 核心思想: 原始类和代理类实现相同的接口 使用JDK自带api创建动态代理 public class JDKTest{ public static void main(String[] args){ // 获取原始对象 UserService userServic...
Maven常见的打包指令——package、install、deploy的区别
Maven中常用的打包命令有三种,package、install和deploy。 package:该命令完成了项目编译、单元测试、打包功能三个过程。 install:在 package 命令的前提下新增一个步骤,将新打好的包部署到本地 Maven 仓库...
常用的MySQL工具
mysqldump数据库备份工具 mysqldump 客户端工具用来备份数据库或在不同数据库之间进行数据迁移。备份内容包含创建表,及插入表的SQL语句。 # 语法 : mysqldump [options] db_name [tables] mysqldump [options] ...
InnoDB存储引擎实现事务的原理及MVCC-实现原理
redo log 实现了事务的持久性 如果没有redo log,可能出现脏页现象,导致从缓冲池中更改后加载到硬盘的过程中出现脏页,无法保证持久性。 redo log会记录内存结构中缓冲区中的增删改变化,即时出现脏页,redo lo...
SQL优化
插入数据 insert 一次插入数据和批量插入数据 insert into tb_test (id, name) values (1,'Tom'); insert into tb_test (id, name) values (1,'Tom'),(2,'Jack'),(3,'Jerry...
InnoDB与MyISAM存储引擎的区别与选择
存储引擎就是存储数据、建立索引、更新/查询数据等技术的实现方式 。 存储引擎是基于表的,而不是基于库的,所以存储引擎也可被称为表类型。我们可以在创建表的时候,来指定选择的存储引擎,如果没有指定将自动选...
Redis分布式锁的实现和分析
关于 synchronized 项目单独部署时,使用 synchronized 可以实现并发安全,但如果项目搭建集群时,有多个线程同时对某项目中的数据修改时,可能会出现并发问题。 synchronized 关键字底层是 JVM 中的 monitor(管...
Java中的反射机制详解
反射的简单demo 声明的原始类 class Cat { private String name = "猫猫"; public int age = 10; public Cat(){} public Cat(String name) { this.name = name; } p...
cpu中常见的寄存器
CPU内部由寄存器、控制器、运算器和时钟四个部分组成,各部分之间由电流信号相互连通。 寄存器可以用来暂存指令、数据等处理对象,可以将其看作是内存的一种。根据种类的不同,一个CPU内部会有20~100个寄存器。 ...