logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

java设计模式之观察者模式

1.简介定义观察者模式(又被称为发布-订阅(Publish/Subscribe)模式,属于行为型模式的一种,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态变化时,会通知所有的观察者对象,使他们能够自动更新自己。观察者模式结构图Subject:抽象主题(抽象被观察者),抽象主题角色把所有观察者对象保存在一个集合里,每个

#设计模式#观察者模式
java 用线程异步导出excel

一、前言现在用的比较多的都是用POI技术来导出Excel,对于导出数据量不大的直接用POI技术按部就班实现即可,但是对于数据量大且需要导出的数据封装业务较复杂,单纯的用POI技术实现在高并发导出数据量较大时就会出现应用程序内存溢出,为了解决此问题,以下通过用线程池异步导出的方式实现。二、线程池从Java线程池ThreadPoolExecutor提供了四个构造方法中了解到,在如下场景的的...

线程池的原理及java实现

一、线程简介 创建线程有两种方式:继承Thread或实现Runnable。Thread实现了Runnable接口,提供了一个空的run()方法,所以不论是继承Thread还是实现Runnable,都要有自己的run()方法。    一个线程创建后就存在,调用start()方法就开始运行(执行run()方法),调用wait进入等待或调用sleep进入休眠期,顺利运行完毕或休眠被中断或运行过程

lucene原理及java实现

Lucene 是一个高效的,基于Java 的全文检索库。所以在了解Lucene之前要费一番工夫了解一下全文检索。那么什么叫做全文检索呢?这要从我们生活中的数据说起。我们生活中的数据总体分为两种:结构化数据 和非结构化数据 。结构化数据: 指具有固定格式或有限长度的数据,如数据库,元数据等。非结构化数据: 指不定长或无固定格式的数据,如邮件,word文档等。

#lucene
java修改操作出错:could not retrieve transation read-only status server

##一、问题描述我们一般在写新增、修改、删除操作业务代码时通常都比较简单,一般不会出现运行错误,但这次操作的是三张表(一张主表,二张关联表)出现了:could not retrieve transation read-only status server错误,具体修改操作业务逻辑是:1、先修改主表,若修改成功即行数大于0则修改下面的关联表;2、先找出第一张关联表要逻辑删除的数据及新增的数据,...

#java#spring#mysql
到底了