自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (1)
  • 收藏
  • 关注

原创 mysql乐观锁实现

各锁的概念:悲观锁:假定会发生并发冲突,屏蔽一切可能违反数据完整性的操作悲观锁,从字面理解就是很悲观,每次去拿数据的时候都认为别人会修改,所以在每次拿的时候对数据上锁,这样就保证了数据的准确性。比如mysql中的表锁,行锁。表锁:当你对一张表进行修改时,会锁死整张表,其他的请求需要在修改完成释放锁才能继续。在高并发的情景下不适用。行锁:当你对一张表的某一行数据修改时,会锁死这一行数...

2018-06-13 20:09:52 25305 26

原创 springboot 使用自定义注解实现aop切面日志

平时我们在开发过程中,代码出现bug时为了更好的在服务器日志中寻找问题根源,会在接口的首尾打印日志,看下参数和返回值是否有问题。但是手动的logger.info() 去编写时工作量较大,这时我们可以使用AOP切面,为所有接口的首尾打印日志。实现AOP切面日志一般有两种方式:拦截所有接口controller,在首尾打印日志 拦截指定注解的接口,为有该注解的接口首尾打印日志我们尝试用自定义...

2019-12-26 14:04:12 703

原创 mysql事务隔离级别

首先, 标准定义的事务隔离级别分为以下事务隔离级别 事务隔离级别 脏读 不可重复读 幻读 读未提交(Read Uncommitted) 有 有 有 读已提交(Read Committed) 无 有 有 可重复读(Repeatable Read) 无 无 有 串行化(Serializable) 无 ...

2019-11-19 18:13:21 274

原创 activiti工作流表的含义

activiti表作用及解释

2019-08-02 16:16:55 455

原创 activiti工作流执行过程解析

activiti核心对象解释:ProcessEngine:ProcessEngines.getDefaultProcessEngine()会在第一次调用时 初始化并创建一个流程引擎,以后再调用就会返回相同的流程引擎。 使用对应的方法可以创建和关闭所有流程引擎:ProcessEngines.init()和ProcessEngines.destroy()。RepositoryServ...

2019-08-02 15:30:08 4339

原创 activiti工作流表之间的关系

学习activiti工作流期间,做的部分笔记ACT_GE_PROPERTY-- 系统相关属性表,当存在这条记录时,将不会创建表,每进行一次引擎对象相关操作时,版本增加1select * from ACT_GE_PROPERTY;ACT_RE_DEPLOYMENT-- 部署信息表,用来存储部署时需要持久化保存下来的信息,包括部署的包名,类型,部署时间等等select * f...

2019-08-02 15:13:09 2116

原创 SpringBoot自定义starter

由于开箱即用以及配置极简的特性,如今的springboot越来越火,已成为Java后端开发必会的技能点之一。我们知道,在springboot项目中,如果你需要整合其他的框架或集成redis、mysql等数据源,你只需要把这些指定的springbootstarter引进来就能直接使用,那么这是如何做到的,下面就来简单介绍下springbootstarter。SpringBootSta...

2019-06-15 17:45:56 1045

原创 SpringBoot项目中如何在静态工具类中调用到配置文件application.properties(yml)

上篇中讲到工具类静态方法如何使用由spring容器管理的对象,该篇在此基础上描述:工具类静态方法中如何请求spring的配置文件application.properties(yml)中的值?首先介绍Spring接口类Environment :Spring 为运行环境提供的高度抽象接口,项目运行中的所有相关配置都基于此接口,用来表示整个应用运行时的环境。 该接口继承自Propert...

2019-06-13 17:25:59 8916 3

原创 SpringBoot项目中如何在静态工具类中使用被Spring容器管理的对象

在开发的过程中,难免会碰到需要在工具类中使用由spring管理的对象的情况,但是我们都知道,工具类中的静态方法中无法引用spirng容器中的对象(被spring管理的对象不是静态的,静态方法中无法调用),那么该如何才能在静态方法中调用到该对象呢?首先需要介绍spring的一个接口类:ApplicationContextAwareSpring容器会检测容器中的所有Bean,如果发现某个B...

2019-06-13 16:27:17 6089 5

原创 idea通过数据库生成java实体类(lombok版)

使用原因:很多插件其实都提供了根据数据库生成实体类的功能,但是都不够简洁且不适合自己去自定义样式,而idea提供了能够自定义生成实体类的脚本,所以非常适合有代码洁癖的程序yuan们~使用前提:需要lombok插件(这个插件的用途就是能让代码更简洁,减少多余的工作量,这里使用了它的@Data注解,它会为我们提供get set等方法),如果没有就需要适当修改下脚本,生成get set方法。如何...

2019-01-14 17:36:40 13811 2

原创 java使用SnowFlake算法生成唯一id

/** * Twitter_Snowflake<br> * SnowFlake的结构如下(每部分用-分开):<br> * 0 - 0000000000 0000000000 0000000000 0000000000 0 - 00000 - 00000 - 000000000000 <br> * 1位标识,由于long基本类型在Java中是带符号的,...

2018-11-29 14:48:46 2251 2

原创 Scala的函数与方法

import java.io.Serializableimport scala.annotation.elidableimport scala.beans.BeanPropertyimport scala.collection.immutable.HashMapimport scala.collection.mutableimport scala.reflect.ClassTag/...

2018-10-26 16:53:43 267

原创 Scala的隐式转换

import java.io.Serializableimport scala.annotation.elidableimport scala.beans.BeanPropertyimport scala.collection.immutable.HashMapimport scala.collection.mutableimport scala.reflect.ClassTag...

2018-10-26 16:46:34 173

原创 Scala的控制语句

import java.io.Serializableimport scala.annotation.elidableimport scala.beans.BeanPropertyimport scala.collection.immutable.HashMapimport scala.collection.mutableimport scala.reflect.ClassTag...

2018-10-26 16:34:11 173

原创 Scala的访问修饰符

之前在学习scala时做的笔记,希望能对大家有点帮助。 import java.io.Serializableimport com.dreamponline.scala_train._import com.sun.istack.internal.NotNullimport org.scalatest.FreeSpecimport scala.annotation.elidab...

2018-10-26 16:23:01 227

原创 redis分布式锁的实现

因为项目中需要用到分布式锁,所以研究了下实现方式。碰到很多坑以及误导人的博客。这里写下自己的感受,大家看的时候还是要抱着怀疑的态度来看实现的合理性。一般分布式锁的实现方式就三种:数据库乐观锁(我上面博客说到过https://blog.csdn.net/lp2388163/article/details/80683383); 基于Redis的分布式锁; 基于ZooKeeper的分布式锁。...

2018-10-26 15:37:11 1730

原创 ETL工具Kettle的使用

之前因为公司项目的报表以及旧项目数据导入新项目涉及到的数据清洗, 所以用到了kettle这个工具, 刚开始用的时候踩了无数坑, 现在闲下来就打算写一篇博客, 希望多多少少能给读者有点帮助.我用这个工具的主要目的就是写报表和数据清洗,迁移.百科:ETL 是Extract-Transform-Load三个单词的简称,即抽取、转换、加载。ETL工具常用于建立数据仓库,但不仅限于这一领域。换句话话说,使用...

2018-07-03 16:22:58 354

原创 Mysql性能优化以及开发规范

Mysql开发规范(参考阿里巴巴规范手册)1.库名、表名、字段名必须使用小写字母,并采用下划线分割2. boolean类型的判断字段使用 is_? 格式命名,比如是否删除 is_delete3. 尽量不要使用char,使用varchar,因为varchar可以自己控制长度4. 使用innerDB存储引擎(默认的),innerDB支持事物,并且默认使用行锁,提供了并发的性能...

2018-06-21 19:02:04 462

原创 Mysql数据同步ElasticSearch方案

在开发中遇到的问题:项目中订单服务的订单数据量太大,mysql中查询订单过慢,如何保证快速的查询并且不会影响订单下单的速度?当时想到的是使用ElasticSearch搜索引擎来解决查询过慢的问题,大概有如下思路:1. 使用mysql与es的同步插件,比如比较流行的elasticsearch-jdbc缺点: 无法灵活的添加数据,比如你对添加进mysql中的数据进行一些聚合,查询等操作...

2018-06-09 15:30:16 7594 1

原创 ElasticSearch父子关联文档实现关系型数据库join操作

声明:以下只针对es6.0以下版本,原因是阿里云上售卖的es服务器是5.5.3版本,所以在写业务的时候是针对6.0以下版本的操作!6.0以下版本如果想实现关系型数据库中一对多的操作,有两种常用方法:1. 非规范化数据比如mysql描述订单以及订单详情 :  order(id, order_no, amount)    ->  order_detail(id, order_id, commod...

2018-06-07 17:42:45 8691

《码出高效:Java开发手册》@www.java1234.com.pdf

阿里出版的有关Java开发的规范以及技术点的描述书籍:《码出高效:Java开发手册》

2019-06-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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