前言最近在工作中需要将一大批数据导入到数据库中,因为种种原因这些数据不能使用同步数据的方式来进行复制,而是提供了一批文本,文本里面有很多行url地址,需要的字段都包含在这些url中。最开始是使用的正常的普通方式去写入,但是量太大了,所以就尝试使用多线程来写入。下面我们就来介绍一下怎么使用多线程进行导入。1.文本格式格式就是类似于这种格式的url,当然这里只是 ......
607
0
0
2022-12-09
前言本篇文章主要讲述的是SpringBoot整合Mybatis、Druid和PageHelper 并实现多数据源和分页。重点是讲述在多数据源下的如何配置使用Druid和PageHelper。http://www.cnblogs.com/xuwujing/p/8260935.htmlDruid介绍和使用在使用Druid之前,先来简单的了解下Druid。Drui ......
333
0
0
2022-12-09
虽然我们都知道有23个设计模式,但是大多停留在概念层面,真实开发中很少遇到。Mybatis源码中使用了大量的设计模式,阅读源码并观察设计模式在其中的应用,能够更深入的理解设计模式。Mybatis至少遇到了以下的设计模式的使用:1、Builder模式,例如SqlSessionFactoryBuilder、XMLConfigBuilder、XMLMapperBu ......
309
0
0
2022-12-09
本文章将通过结合consul config来讲解在springboot中如何加载远程配置:通过consul config加载consul server中存储的配置。我们先来说下在spring中常规的加载配置文件的方式。加载配置文件方式对于一个工程来说,我们一般都会需要有各种配置,在spring工程里面,一般都是yml或者properties文件,如下所示:s ......
359
0
0
2022-12-09
MyBatis功能架构设计功能架构讲解:我们把Mybatis的功能架构分为三层:(1)API接口层:提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库。接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理。(2)数据处理层:负责具体的SQL查找、SQL解析、SQL执行和执行结果映射处理等。它主要的目的是根据调用的请求完成一次数据库操作 ......
382
0
0
2022-12-09
1、为什么要用锁?锁-是为了解决并发操作引起的脏读、数据不一致的问题。2、锁实现的基本原理2.1、volatile★Java编程语言允许线程访问共享变量, 为了确保共享变量能被准确和一致地更新,线程应该确保通过排他锁单独获得这个变量。Java语言提供了volatile,在某些情况下比锁要更加方便。 volatile在多处理器开发中保证了共享变量的“ 可见性” ......
308
0
0
2022-12-09
本文最后更新于 232 天前,其中的信息可能已经有所发展或是发生改变。传值还是传引用?一直以来,我认为在 Java 中传递方法实参时,当传入的类型为基本数据类型时,则传入的是值;当传入的类型为对象时,则传入的是引用。但是,这个观念是实际上是错误的。事实上,Java 始终传递值。为什么这么说呢,让我们看一下如下代码:public static void mai ......
348
0
0
2022-12-09
想要进阶自己的开发水平,JDK源码中一些优秀的设计必须要经常学习,哪怕不学习,应对面试的时候,还是要能够应对几招,代表自己对这些东西还是有所了解。而线程池的源码,这块更是面试中经常被问到的东西,先试着列几个问题,看看自己对线程池的掌握程度:创建线程池的参数有哪些,分别代表什么意思?为什么阿里要求不能直接使用Executors工具类创建线程池?线程池线程的数量 ......
395
0
0
2022-12-09
Java中的线程池,相信大家都接触过或者使用过,它里面到底是怎么运作的,不知道大家有没有去实际了解过?这篇文章将带领大家去看看它内部结构和实现原理。继承关系public class ThreadPoolExecutor extends AbstractExecutorService {} public abstract class AbstractEx ......
318
0
0
2022-12-09
前言Filter是什么?Filter是servlet规范中定义的java web组件, 在所有支持java web的容器中都可以使用 它是位于前端请求到servlet之间的一系列过滤器,也可以称之为中间件,它主要是对请求到达servlet之前做一些额外的动作:1、权限控制2、监控3、日志管理4、等等这里涉及到两个接口:Filter和FilterChainFi ......
479
0
0
2022-12-09
最近经过查阅各种资料,并结合自己的思考和实践,对volatile有了比较深刻的认识,在此总结并分享给大家。可见性如何理解可见性,还是来看个会出现死循环的例子:(注意:运行时请加上jvm参数:-server,while循环内不要有标准输出):这是为什么呢?先来看看java的内存模型,如下图:java内存分为工作内存和主存工作内存:即java线程的本地内存,是单 ......
429
0
0
2022-12-09
单点登出功能跟单点登录功能是相对应的,旨在通过Cas Server的登出使所有的Cas Client都登出。Cas Server的登出是通过请求“/logout”发生的,即如果你的Cas Server部署的访问路径为“https://localhost:8443/cas”时,通过访问“https://localhost:8443/cas/logout”可以触 ......
413
0
0
2022-12-09
构造一个线程池为什么需要几个参数?如果避免线程池出现OOM?Runnable和Callable的区别是什么?本文将对这些问题一一解答,同时还将给出使用线程池的常见场景和代码片段。基础知识Executors创建线程池Java中创建线程池很简单,只需要调用Executors中相应的便捷方法即可,比如Executors.newFixedThreadPool(int ......
390
0
0
2022-12-09
关于单点登录SSO的原理,我在之前的文章中已经有详细的讲解,大家可以去看看历史文章。今天这里主要是说下具体的实现逻辑,这里是基于java的,使用到了cas-client这个库。Cas Client主要有四个核心过滤器:1、AuthenticationFilter2、TicketValidationFilter3、HttpServletRequestWrapp ......
459
0
0
2022-12-09
前 言 🍉 作者简介:半旧518,长跑型选手,立志坚持写10年博客,专注于java后端 ☕专栏简介:深入、全面、系统的介绍java的基础知识 🌰 文章简介:本文将深入全面介绍泛型知识,建议收藏备用,创作不易,敬请三连哦 。文章目录一、泛型介绍1 泛型入门2 深入泛型2.1定义泛型接口、类2.2 从泛型类派生子类2.3 并不存在泛型类二、通配符三、泛型类与泛型 ......
368
0
0
2022-12-08