摘要: 前提 首先该场景是一个酒店开房的业务。为了朋友们阅读简单,我把业务都简化了。 业务:开房后会添加一条账单,添加一条房间排期记录,房间排期主要是为了房间使用的时间不冲突。如:账单A,使用房间1,使用时间段为2020-06-01 12:00 - 2020-06-02 12:00 ,那么还需要使用房间1开 阅读全文
posted @ 2020-06-06 09:28 Johnson木木 阅读(539) 评论(0) 推荐(0) 编辑
摘要: 简介 在团队开发当中,有可能每个人都是使用自己本地的数据库。当数据库的表或者字段更新时,往往需要告知团队的其他同事进行更新。 Flyway数据库版本迁移工具,目的就是解决该问题而诞生的(我自己想的)。每当我们更新数据库的时候,只需要添加SQL文件到指定目录中。Flyway会在数据库创建一个表,专门记 阅读全文
posted @ 2020-06-04 10:39 Johnson木木 阅读(644) 评论(0) 推荐(0) 编辑
摘要: Java并发编程系列 "Java并发编程实战 01并发编程的Bug源头" "Java并发编程实战 02Java如何解决可见性和有序性问题" "Java并发编程实战 03互斥锁 解决原子性问题" "Java并发编程实战 04死锁了怎么办" 前提 在 "Java并发编程实战 04死锁了怎么办" 中,讲到 阅读全文
posted @ 2020-05-20 09:31 Johnson木木 阅读(265) 评论(0) 推荐(0) 编辑
摘要: Java并发编程文章系列 "Java并发编程实战 01并发编程的Bug源头" "Java并发编程实战 02Java如何解决可见性和有序性问题" "Java并发编程实战 03互斥锁 解决原子性问题" 前提 在第三篇文章最后的例子当中,需要获取到两个账户的锁后进行转账操作,这种情况有可能会发生死锁,我把 阅读全文
posted @ 2020-05-12 08:13 Johnson木木 阅读(617) 评论(0) 推荐(1) 编辑
摘要: 文章系列 "Java并发编程实战 01并发编程的Bug源头" "Java并发编程实战 02Java如何解决可见性和有序性问题" 摘要 在上一篇文章 "02Java如何解决可见性和有序性问题" 当中,我们解决了可见性和有序性的问题,那么还有一个 问题咱们还没解决。在第一篇文章 "01并发编程的Bug源 阅读全文
posted @ 2020-05-07 08:33 Johnson木木 阅读(448) 评论(0) 推荐(2) 编辑
摘要: 摘要 在上一篇文章 "Java并发编程实战 01并发Bug的源头" 当中,讲到了 CPU缓存导致可见性、线程切换导致了原子性、编译优化导致了有序性问题 。那么这篇文章就先解决其中的可见性和有序性问题,引出了今天的主角: Java内存模型 (面试并发的时候会经常考核到) 什么是Java内存模型? 现在 阅读全文
posted @ 2020-04-20 10:07 Johnson木木 阅读(517) 评论(0) 推荐(0) 编辑
摘要: 摘要 编写正确的并发程序对我来说是一件极其困难的事情,由于知识不足,只知道 这个修饰符进行同步。 本文为学习 "极客时间:Java并发编程实战 01" 的总结,文章取图也是来自于该文章 并发Bug源头 在计算机系统中,程序的执行速度为: CPU 内存 I/O设备 ,为了平衡这三者的速度差异,计算机体 阅读全文
posted @ 2020-04-14 13:57 Johnson木木 阅读(548) 评论(0) 推荐(0) 编辑
摘要: 摘要 我们在Entity、Bo、Vo层数据间可能经常转换数据,Entity对应的是持久层数据结构(一般是数据库表的映射模型)、Bo对应的是业务层操作的数据结构、Vo就是Controller和客户端交互的数据结构。在这些数据结构之间很大一部分属性都可能会相同,我们在使用的时候会不断的重新赋值。 如:客 阅读全文
posted @ 2019-12-31 10:13 Johnson木木 阅读(11522) 评论(3) 推荐(0) 编辑
摘要: 准备工作 maven pom.xml添加七牛云的sdk依赖 配置项 七牛云上传必要的配置有:accessKey、secretKey、bucket 其中accessKey、secretKey在该网址可查看 "https://portal.qiniu.com/user/key" bucket为你的存储空 阅读全文
posted @ 2019-12-18 11:43 Johnson木木 阅读(2120) 评论(0) 推荐(0) 编辑
摘要: 摘要 在开发场景中,大部分数据都是使用请求转发(forward)进行传递,而使用重定向(redirect)传递数据可能比较少。 那么问题来了:请求中的数据生命周期存活时间只在一个请求转发(request)中,当这个请求结束后,那么请求中所带的数据也会随着这个请求一起拜拜了。而重定向会向服务器发起两个 阅读全文
posted @ 2019-12-14 10:36 Johnson木木 阅读(574) 评论(0) 推荐(0) 编辑