- 前言 对于 10W+ 以上的数据导出,可以有以下思路: 提示:这里主要讲解如果利用多线程导出 大数据 excel (文件不落地),并生成 zip 流 上传 - Work_easyExcel多线程大数据导出 maven+1.8jdk+poi+easyExcel <!--xls--> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</arti
2024-11-221.volatile与synchronized的区别 2.volatile为什么不能保证原子性 定义: 即一个操作或者多个操作 要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行。 原子性是拒绝多线程操作的,不论是多核还是单核,具有原子性的量,同一时刻只能有一个线程来对它进行操作。简而言之,在整个操作过程中不会被线程调度器中断的操作,都可认为是原子性。例如 a=1 是原子性操作,但是 a++ 和 a +=1 就不是原子性操作。需要多个操作 先读 再操作 再写 不是原子操作 Java
2024-11-221.redis的理解 2.ES的理解 3.zookeeper的理解 4.springcloud的理解 5.Dubbo的理解 6.JVM的理解 7.Spring的理解 spring bean的生命周期 spring的循环依赖问题 8.消息队列(MQ)的理解 9.MVCC的理解 10.分布式事务的解决方案 11.Docker的理解 12.如何在不加锁的情况下保证线程安全 原子性、可见性、顺序性 CAS自旋锁 乐观锁 减少共享对象的 13.死锁的理解
2024-11-22最近看到不少人在用mybatis plus,代码生成工具更好用。想起之前用mybatis 自己花了很大的功夫去实现这个代码生成工具,生成的代码只有dao层(即,那个mapper)层。我们今天就来搭建一个spring boot + mybatis plus 项目,实现一个代码生成器。 1.准备 先来看看我们的数据库表,这里有一个student表,只有3个字段,如下图: 2. 搭建 2.1 先搭建一个基础springboot (1)点击IDEA左上角的File | new Project 到下面界
2024-11-22绘图 绘图主要使用的是JPanel对象,需要重写对应的paintComponen方法,这里需要注意的是,在该方法中我们获得是Graphics对象,如果我们需要获得Graphics2d对象,需要运行以下代码进行转换。 Graphics2D graphics2D= (Graphics2D) g; 可以通过Math的随机数设置画布的颜色,RGB定义,重写的方法如下。 package GuiTest; import javax.swing.*; import java.awt.*; public
2024-11-22逻辑删除功能 由于数据库中所有表均采用逻辑删除策略,所以查询数据时均需要增加过滤条件is_deleted=0。 上述操作虽不难实现,但是每个查询接口都要考虑到,也显得有些繁琐。为简化上述操作,可以使用Mybatis-Plus提供的逻辑删除功能,它可以自动为查询操作增加is_deleted=0过滤条件,并将删除操作转为更新语句。具体配置如下,详细信息可参考。 方法一:在application.yml中增加如下内容 mybatis-plus: global-config: db-conf
2024-11-22一、前言 在当今数字化转型的时代背景下,教育行业也在积极探索利用信息技术提升教学质量和效率的方式。在线考试系统作为教育信息化的重要组成部分,正逐渐成为学校、培训机构乃至企业进行考核评价的首选工具。它不仅能够有效解决传统纸质考试的诸多局限,如成本高、效率低、资源浪费等,还能通过大数据分析,为教育决策提供有力的数据支持。 本文介绍基于springboot+vue实现的在线考试系统。介绍项目功能,所用技术等。 二、技术概述 系统所需的环境和技术为: jdk1.8maven3.6sp
2024-11-22(一)指针 (Pointer) (1)指针的定义 var p *int (2)指针的地址 fmt.Printf(&p) (3)指针的赋值 指针的赋值依靠 * 操作符 ,比如: *p = 12 和c 语言不同, go语言没有指针运算 (4)指针的操作——实战演示 实战1: package main import "fmt" func main() { // 使用变量地址给指针赋值 x := 12 p := &x fmt.Println("指针p的值为:", *p) fmt.
2024-11-22是专业的Java Excel API,使开发人员无需使用Microsoft Office或Microsoft Excel即可创建,管理,操作,转换和打印Excel工作表。 顾名思义,逗号分隔值 (CSV) 文件是仅包含数字和字母的纯文本文件,通常用逗号分隔。它可用于在应用程序之间交换数据。本文演示了如何使用Spire.XLS for Java将 Excel 转换为 CSV 以及如何将 CSV 转换为 Excel。 更多产品购买信息请点击 将 Excel 转换为 CSV Spire.XLS fo
2024-11-22模板定义: type Config struct { {{- $len := len .DbConfigs -}} {{- $i := 0 -}} {{- range $key, $value := .DbConfigs}} {{title $key}} *DbConfig ` + "`yaml:\"{{lower $key}}\"`" + `{{if lt $i (sub $len 1)}},{{end}} {{- $i = add $i 1 -}} {{- end}} } 实例
2024-11-22