Java
oumuv
这个作者很懒,什么都没留下…
展开
-
Springboot+DBunit单元测试,数据库隔离测试
关于DBunit 百度百科:dbunit是一个基于junit扩展的数据库测试框架。 简言之,dbunit是为了在单元测试中,通过备份数据库、导入测试数据、回滚恢复数据库的手段,在不污染数据库的前提下完成一系列单元测试工作。 DBunit关键知识点 IDataSet接口:用于操作表集合 ITable接口:用于操作表数据集合 DatabaseOperation类:对表数据执行一系列操作,比如刷新、删除...原创 2020-03-31 16:43:52 · 4454 阅读 · 1 评论 -
如何在集群中实现session共享、同步
集群中session安全和同步是个最大的问题,下面是收集到的几种session同步的方案,希望能通过分析其各自的优劣找出其适应的场景。 1. 客户端cookie加密 这是我以前采用的方式,简单,高效。比较好的方法是自己采用cookie机制来实现一个session,在应用中使用此session实现。 问题:session中数据不能太多,最好只有个用户id。 参考实现:http://rollerweb...转载 2018-12-27 12:02:53 · 689 阅读 · 0 评论 -
Java多线程:wait、notify(notifyAll)线程唤醒应用
前提概要 在Java的Object类中有三个final的方法允许线程之间进行资源对象锁的通信,他们分别是: wait(), notify() and notifyAll()。 调用这些方法的当前线程必须拥有此对象监视器,否则将会报java.lang.IllegalMonitorStateException exception异常。 wait Object的wait方法有三个重载方法,其中一个方...原创 2019-02-12 10:23:27 · 844 阅读 · 0 评论 -
java多线程:使用BlockingQueue(阻塞队列)实现生产者与消费者应用
前提概要 什么是BlokingQueue BlockingQueue 是一个先进先出的队列(Queue),为什么说是阻塞(Blocking)的呢?是因为 BlockingQueue 支持当获取队列元素但是队列为空时,会阻塞等待队列中有元素再返回;也支持添加元素时,如果队列已满,那么等到队列可以放入新元素时再放入。 BlockingQueue 对插入操作、移除操作、获取元素操作提供了四种不同的方法用...原创 2019-02-12 11:08:03 · 3808 阅读 · 0 评论 -
Java多线程:多线程模拟抢票应用
实现代码 package com.oumuv.ticket; /** * 多线程抢票应用 */ public class TicketModel { public static void main(String[] args) { TicketModel ticketModel = new TicketModel(); Ticket ticket ...原创 2019-02-12 15:33:17 · 3195 阅读 · 0 评论