自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 理解数据库之Mysql的共享锁与排他锁、行锁与表锁

共享锁 共享锁又称为读锁,简称S锁,顾名思义,共享锁就是多个事务对于同一数据可以共享一把锁,都能访问到数据,但是只能读不能修改。 排他锁 排他锁又称为写锁,简称X锁,顾名思义,排他锁就是不能与其他所并存,如一个事务获取了一个数据行的排他锁,其他事务就不能再获取该行的其他锁,包括共享锁和排他锁,但是...

2019-06-19 23:34:29

阅读数 78

评论数 0

原创 理解数据库之事务与其隔离级别

一、事务的四大特性 原子性 原子性是指事务包含的操作要么全部成功,要么全部失败回滚。 一致性 一致性是指事务必须使数据库从一个一致性状态变换为另一个一致性状态,也就是说事务执行之前和执行之后都必须处于一致性状态。以A、B两个用户转账为例,无论如何转账,两个用户的总金额和是不变的。 隔离性 隔离性...

2019-06-19 23:32:53

阅读数 17

评论数 0

原创 求解:一个数组中除了某个数字出现一次,其它均出现两次,求出该数?

如题,其要求给出最优的时间与空间复杂度。 ---- 2019年春招珍爱网笔试题 1. 哈希法 新建一个数组,目的存储数组元素出现的次数,其数组长度大小为(n/2+1)。 为防止在进行hash求索引时,数组越界,可以通过取模得到索引下标。 时间复杂度O(n)、空间复杂度O(n) public int...

2019-06-19 23:10:32

阅读数 35

评论数 0

原创 理解数据库之设计范式

1. 第一范式(指原子性,不可分割) 数据库第一范式是指数据库中的每一列都是不可分割的原子值。例如设计地址字段时,如有需求需要经常访问地址中的城市,街道等信息时,就要把该字段继续分割。 2. 第二范式(指非主属性必须完全依赖于主属性) 数据库第二范式是指所有非主属性列都应该完全依赖于主属性,而不是...

2019-06-17 23:31:51

阅读数 13

评论数 0

原创 理解数据库之悲观锁和乐观锁

数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。而乐观并发控制(乐观锁)和悲观并发控制(悲观锁)是并发控制主要采用的技术手段。 概念 乐观锁和悲观锁可以说是一种思想,一种人们为了解决并发控制带来的问题而定义好的策...

2019-06-17 23:30:09

阅读数 17

评论数 0

原创 理解数据库之索引类型

索引的出现其实就是为了提高数据查询的效率,就像书的目录一样。常见的索引类型有:哈希表、有序数组、搜索树 哈希表 哈希表是一种以键 - 值(key-value)存储数据的结构,我们只要输入待查找的值即 key,就可以找到其对应的值即 Value。哈希的思路很简单,把值放在数组里,用一个哈希函数把 k...

2019-06-17 23:27:42

阅读数 32

评论数 0

原创 理解JVM之GC垃圾回收器

GC主要用于回收、释放垃圾占用的空间。 需要回收的内存有哪些 我们知道,线程私有区域为程序计数器、本地方法栈、虚拟机栈。这些区域的数据随着线程的启动创建,随着线程的结束而销毁。虚拟机栈里的栈帧随着方法的进入顺序执行着入栈和出栈操作,一个栈帧需要多少内存取决于具体虚拟机实现并且在编译期间就已确定下来...

2019-06-16 23:20:57

阅读数 36

评论数 0

原创 理解JVM之内存模型JMM

JMM内存模型图 java内存模型就是一种符合内存模型规范的,屏蔽了各种硬件和操作系统的访问差异,保证了Java程序在各种平台下对内存的访问都能保证效果一致的机制和规范。目的是保证并发编程场景中的原子性、可见性和有序性。 根据java虚拟机规范,java虚拟机管理的内存将分为下面五大区域。 五大...

2019-06-16 23:08:33

阅读数 28

评论数 0

原创 微信公众平台java开发

准备工作 建立web工程,搭建服务器。 ---- 这里使用springBoot搭建 注册微信公众号(开发时用测试号即可)。 使用内网穿透软件(ngrok),使外网能访问你本地的应用,省去部署。 微信公众平台接入流程 微信公众平台的接入流程在官网中已经有较为详细...

2018-11-17 13:33:43

阅读数 48

评论数 0

原创 MQTT——使用EMQ服务器进行通信

部署安装 从官网中下载对应版本的emq服务器,对于linux下的部署安装在官方文档中有着资料。 下载完成后需进行安装。以下是安装启动步骤(此为在windows下的操作) 2.1 emq代理服务器下的安装 2.2 emq服务器的启动/关闭、及查看 2.3 控制台 控制台地址:...

2018-11-16 15:28:57

阅读数 1078

评论数 0

原创 微信硬件平台开发流程

微信硬件平台接入流程: 1. 用户通过扫描设备二维码绑定设备后,微信会推送设备绑定事件给第三方。(官方文档) 2. 通过设备的服务器配置的URL地址,接收到微信推送的事件数据。 3. 开发者平台通过解密数据得到明文消息,利用wx2MqttService.route(json)方法将数据...

2018-11-15 22:54:38

阅读数 212

评论数 0

原创 mysql必知必会之sql语句用法

1. DISTINCT —> 去重 select distinct name from user; distinct 不能部分使用,该关键字应用于指定的所有列而不单单是前置列。 2. limit 与 o...

2018-08-23 11:44:14

阅读数 123

评论数 0

原创 使用Java爬取网易云音乐

爬取网易云音乐数据,采用了HttpClient和Jsoup进行模拟请求并对网页进行解析,使用了springBoot+maven构建并管理项目,使用mybatis作为数据访问,为了提高速度,加了多线程。

2018-06-12 00:07:02

阅读数 4308

评论数 9

原创 SpringBoot之统一异常处理

统一处理返回结果 当后台在开发过程中,往往需要返回一个json对象给前端。当出现异常时,我们同样希望能把异常按照json格式进行返回,前端就可以根据返回json数据的状态码和信息进行相应的显示。 这时候就需要写一个Http最外层的封装对象,统一返回的对象数据。 Result.java...

2018-05-14 12:41:52

阅读数 1874

评论数 1

原创 蓝桥杯:杨辉三角

蓝桥杯赛前基础练习。 问题描述 杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。   它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。   下面给出了杨辉三角形的前4行: 1 1 1 1 2 1 1 ...

2018-03-31 14:49:49

阅读数 80

评论数 0

原创 n皇后问题(回溯与dfs)

问题描述: 在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上。 你的任务是,对于给定的N,求出有多少种合法的放置方法。

2018-03-30 11:03:33

阅读数 88

评论数 0

原创 Hibernate 学习笔记(三)之基本映射关系详解

单向 n-1映射 双向1-n映射 双向多对多映射 基于外键的1对1映射 基于主键的1对1映射

2017-12-31 11:54:05

阅读数 236

评论数 0

原创 Hibernate 学习笔记 (一) 之Junit 与 Session 一级缓存

Junit 单元测试使用 Session 一级缓存详解 Session 缓存的操作方法:flush(),refresh(),clear()。

2017-12-15 23:43:09

阅读数 138

评论数 0

原创 Struts2 基础学习笔记(三)

类型转换异常;struts2 的流程分析;文件的上传与下载;表单的重复提交问题;自定义拦截器。

2017-11-16 15:38:24

阅读数 546

评论数 0

原创 Struts2 基础学习笔记(二)

值栈,Ognl解析

2017-11-16 10:12:35

阅读数 77

评论数 0

提示
确定要删除当前文章?
取消 删除