摘要: 内置锁 每个Java对象都可以用作一个实现同步的锁,这些锁称为内置锁。线程进入同步代码块或方法的时候会自动获得该锁,在退出同步代码块或方法时会释放该锁。获得内置锁的唯一途径就是进入这个锁的保护的同步代码块或方法。 互斥锁 内置锁是一个互斥锁,这就是意味着最多只有一个线程能够获得该锁,当线程A尝试去获 阅读全文
posted @ 2021-05-25 20:25 Gen2021 阅读(38) 评论(0) 推荐(0)
摘要: 初始(NEW):新创建了一个线程对象,但还没有调用start()方法。 运行(RUNNABLE):处于可运行状态的线程正在JVM中执行,但它可能正在等待来自操作系统的其它资源,例如处理器。 阻塞(BLOCKED):线程阻塞于synchronized锁,等待获取synchronized锁的状态。 等待 阅读全文
posted @ 2021-05-25 15:58 Gen2021 阅读(110) 评论(0) 推荐(0)
摘要: 进程:是系统进行分配和管理资源的基本单位 线程:进程的一个执行单元,是进程内调度的实体、是CPU调度和分派的基本单位,是比进程更小的独立运行的基本单位。线程也被称为轻量级进程,线程是程序执行的最小单位。 一个程序至少一个进程,一个进程至少一个线程 进程有自己的独立地址空间,每启动一个进程,系统就会为 阅读全文
posted @ 2021-05-25 14:30 Gen2021 阅读(90) 评论(0) 推荐(0)
摘要: 说下Servlet的生命周期 实例化->使用构造方法创建对象 初始化->执行init方法:Servlet的生命期中,仅执行一次init()方法,它是在服务器装入Servlet时执行,即第一次访问这个Servlet才执行 服务->执行service方法:service()方法是Servlet的核心。每 阅读全文
posted @ 2021-05-24 16:39 Gen2021 阅读(98) 评论(0) 推荐(0)
摘要: 数据库备份的介绍 数据库的备份类型 完全备份:对整个数据库的数据进行备份 部分备份:对部分数据进行备份(可以是一张表也可以是多张表) 增量备份:以上一次备份为基础来备份变更数据,节约空间 差异备份:以第一次完全备份的基础来备份变更数据,浪费空间 数据库备份的方式 逻辑备份:直接生成sql语句保存起来 阅读全文
posted @ 2021-05-13 10:08 Gen2021 阅读(80) 评论(0) 推荐(0)
摘要: CS架构:客户机-服务器,即Client-Server(C/S)架构,缺少通用性,系统维护、升级需要重新设计和开发,增加了维护和管理的难度 BS架构:B/S架构即浏览器和服务器架构模式,是web兴起后的一种网络架构模式,web浏览器是客户端最主要的应用软件,统一了客户端,将系统功能实现的核心部分集中 阅读全文
posted @ 2021-05-11 17:35 Gen2021 阅读(974) 评论(0) 推荐(0)
摘要: mysql的慢查询日志开启与问题定位 查看是否已经开启了慢查询日志:SHOW VARIABLES LIKE 'slow%' 开启慢查询日志:SET GLOBAL slow_query_log = ON 查看慢查询的时间临界值:SHOW VARIABLES LIKE '%long%' 设置慢查询的时间 阅读全文
posted @ 2021-05-10 20:51 Gen2021 阅读(34) 评论(0) 推荐(0)
摘要: 什么是索引 索引是一个单独的存储在磁盘中的数据库结构,它们包含着对数据表里的所有记录的引用指针,使用索引可以快速的找出在某列或多列中特定值的行 索引的优点 通过创建唯一索引,来保证数据库表中的每一行数据的唯一性 可以加快数据的检索速度 可以保证表数据的完整性与准确性 索引的缺点 索引需要占用物理空间 阅读全文
posted @ 2021-05-09 19:54 Gen2021 阅读(59) 评论(0) 推荐(0)
摘要: 什么是AOP面向切面编程 什么是AOP Aspect Oriented Program面向切面编程,在不改变原有逻辑上增加额外的功能,比如解决系统层面的问题,或者增加新的功能 AOP思想把功能分两个部分,分离系统中的各种关注点 核心关注点:业务的主要功能 横切关注点:非核心、额外增加的功能 掌握AO 阅读全文
posted @ 2021-05-08 16:32 Gen2021 阅读(71) 评论(0) 推荐(0)
摘要: 什么是数据库存储引擎 数据库引擎是数据库底层软件组件,不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的数据库引擎,可以获得特定的功能 MyISAM与InnoDB的区别 MyISAM InnoDB 支持全文索引(full text) 以前的版本不支持全文索引,5.6之后的版本支持 阅读全文
posted @ 2021-05-07 21:25 Gen2021 阅读(54) 评论(0) 推荐(0)
摘要: 什么是存储过程 存储过程就是把复杂的一系列操作,封装成一个过程。类似于shell、pathon脚本等 存储过程的优缺点 优点: 复杂操作,调用简单 速度快 缺点: 封装复杂 没有灵活性 创建存储过程语法: create procedure 名称(参数...) begin 过程体; end 参数:in 阅读全文
posted @ 2021-05-06 21:17 Gen2021 阅读(59) 评论(0) 推荐(0)
摘要: 什么是视图?视图的作用是什么? 视图(view)是一种虚拟存在的表,是一个逻辑表,它本身是不包含数据的。作为一个select语句保存在数据字典中的。通过视图,可以展现基表(用来创建视图的表叫做基表base table)的部分数据,说白了视图的数据就是来自于基表 视图的优点: 简单:使用视图的用户完全 阅读全文
posted @ 2021-05-02 16:11 Gen2021 阅读(80) 评论(0) 推荐(0)
摘要: 什么是事务 数据库事务通常指对数据库进行读或写的一个操作过程。有两个目的,第一个是为数据库操作提供了一个从失败中恢复到正常状态的方法,同时提供了数据库即使在异常状态下仍能保持一致性的方法;第二个是当多个应用程序在并发访问数据库时,可以在这些应用程序之间提供一个隔离方法,以防止彼此的操作互相干扰 事务 阅读全文
posted @ 2021-05-02 11:35 Gen2021 阅读(53) 评论(0) 推荐(0)
摘要: 1.获取自增主键 <insert id="saveUser" useGeneratedKeys="true" keyColumn="id" keyProperty="id"> </insert> 2.批量插入foreach <!--collection:必填,值为要迭代循环的集合类型 入参是List 阅读全文
posted @ 2021-04-28 16:58 Gen2021 阅读(83) 评论(0) 推荐(0)
摘要: 1.Mybatis一级缓存 什么是缓存 程序经常要调用的对象存在内存中,方便其使用时可以快速调用,不必去数据库或者其他持久化设备中查询,主要就是提高性能 Mybatis一级缓存 简介:一级缓存的作用域是SQLSession,同一个SQLSession中执行相同的SQL查询(相同的SQL和参数),第一 阅读全文
posted @ 2021-04-26 15:52 Gen2021 阅读(109) 评论(0) 推荐(0)