Java学习
文章平均质量分 75
亭子下的李子
每天学习一点点
展开
-
【Netty源码系列(一)】SpringBoot整合Netty实现多端口绑定
spring boot整合Netty实现多端口绑定,进行TCP、HTTP通信原创 2022-11-08 17:01:57 · 3595 阅读 · 1 评论 -
java实现文件断点续传、秒传
最近领导让做个文件断点续传的功能,解决某些用户因网络问题导致文件上传失败的问题。之前就了解过只是一直没有真正使用,正好借这个机会,学习记录一下。断点续传是什么?老生常谈,不了解的去百度一下,这里不做赘述。...原创 2022-07-29 17:12:27 · 1147 阅读 · 0 评论 -
【FormData对象使用汇总】
FormData类型是XMLHttpRequest2级定义的,它是为序列化表以及创建与表单格式相同的数据提供便利。1.利用一些键值对来模拟一系列表单控件即将form中的所有表单元素的name和value组装成一个queryString;2.异步上传二进制文件。与普通Ajax相比,使用FormData的最大优点可以异步上传二进制文件。...转载 2022-07-28 17:17:23 · 1141 阅读 · 0 评论 -
Spring源码学习---Bean对象扫描
SpringBean对象扫描过程,如下图。结合上图的流程和源码,简要分析一下Bean扫描的源码。1 Bean对象的扫描入口// Invoke factory processors registered as beans in the context.// 调用在上下文中注册为 bean 的工厂处理器invokeBeanFactoryPostProcessors(beanFactory);@ComponentScan,提到spring扫描,离不开这个接口,那么它是如何工作的呢?这里就讲到Spr原创 2022-05-25 22:19:17 · 495 阅读 · 0 评论 -
java读取.html文件并获取数据
jar包导入 <dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.8.3</version> </dependency>代码实现 String filePath = "D:\\工作文档\\国民经济行原创 2022-02-21 12:59:56 · 14617 阅读 · 0 评论 -
java实现读取.mdb文件数据
1 背景最近公司要求将Access数据库中导出的.mdb文件数据转储到Sqlserver数据库中,想着用命令去实现,奈何查找相关资料没有什么进展,于是就想着先将.mdb文件中的数据读取出来,再保存到Sqlserver中。2 Access介绍提到.mdb文件就要先说一下Access,它是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点,是 Microsoft Office 的系统程序之一。3 代码实现3.1 引入jar包依赖原创 2021-12-27 11:24:45 · 5540 阅读 · 8 评论 -
java实现从远程Linux服务器下载文件输出到浏览器
方式一:利用文件的url地址建立URL连接,获取文件流,输出到浏览器;但是这种方式无法进行用户名、密码校验,如果远程服务器需要用户登录则无法实现。String urlPath ="http://10.54.22.114:8088/download/resultdir/bufferdir/2021-09-28/bufferDir/xxx.csv"; File file = null; try{ URL url = new URL(urlPath);原创 2021-11-04 16:11:51 · 3615 阅读 · 5 评论 -
springboot项目在静态方法中注入bean对象
方法1:利用set方法。首先声明一个静态属性(redisTemplate);再写一个set方法,并添加Autowired注解,将传入的参数赋值静态属性。当前类要加上注解@Componentprivate static RedisTemplate redisTemplate;@Autowiredpublic void setRedisTemplate(RedisTemplate redisTemplate) { UserUtils.redisTemplate = redisTemplat原创 2021-09-06 10:20:10 · 2795 阅读 · 0 评论 -
Spring Boot实现参数校验
前言在项目开发中,后端对于传参进行校验不可缺少,如何实现呢?除了在代码里面使用if…else…外,本文列举了三种对不同形式的传参进行校验方式。本文项目是基于spring boot开发,版本是2.3.7,pom文件中要先引入validation’依赖,如下:RequestBody实体对象形式...原创 2021-07-05 18:06:11 · 1039 阅读 · 0 评论 -
java实现本地数据缓存
/**@Classname IECItemCacheUtil@Description 模版条目列表缓存@Date 2021/4/13 16:14@Author lichengshuai*/public class IECItemCacheUtil {private static ConcurrentMap<String, List> IEC_ITEM_DATA = Maps.newConcurrentMap();public static synchronized原创 2021-05-06 17:21:01 · 2524 阅读 · 0 评论 -
spring boot利用quartz实现定时任务动态配置
https://www.cnblogs.com/zxfei/p/11726717.htmlhttps://blog.csdn.net/lixiaxin200319/article/details/86599201https://blog.csdn.net/xcc_2269861428/article/details/99996185?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.bai原创 2021-03-25 13:39:31 · 1273 阅读 · 1 评论 -
数据结构之BTree、B+Tree的含义及区别
1.引言前面学习索引时,了解到MySQL索引的数据类型有B+Tree索引和哈希索引,本文将详细介绍一下BTree和B+Tree的含义和他们的区别。2.BTree2.1 概念B树是一种自平衡树数据结构,它维护有序数据并允许以对数时间进行搜索,顺序访问,插入和删除。B树是二叉搜索树的一般化,因为节点可以有两个以上的子节点。与其他自平衡二进制搜索树不同,B树非常适合读取和写入相对较大的数据块(如光盘)的存储系统。它通常用于数据库和文件系统。定义:B树是一种平衡的多分树,通常我们说m阶的B树,它必须满足原创 2021-02-28 23:13:57 · 9831 阅读 · 0 评论 -
Java利用Zxing生成二维码及解析二维码内容
前言Java 操作二维码的开源项目很多,如 SwetakeQRCode、BarCode4j、Zxing 等等本篇文章是介绍利用Zxing来生成二维码图片在web网页上展示,同时解析二维码图片。Zxing概述ZXing是一个开放源码的,用Java实现的多种格式的1D/2D条码图像处理库,它包含了联系到其他语言的端口。Zxing库的主要部分支持以下几个功能:核心代码的使用、适用于J2SE客户端的版本、适用于Android客户端的版本(即BarcodeScanner)、Android的集成(通原创 2021-02-07 11:52:47 · 4234 阅读 · 6 评论 -
分布式任务调度平台XXL-JOB搭建
1、源码下载地址①、GitHub:https://github.com/xuxueli/xxl-job②、码云:https://gitee.com/xuxueli0323/xxl-job2、文档地址①、中文文档:http://www.xuxueli.com/xxl-job/#/②、英文文档:http://www.xuxueli.com/xxl-job/en/#/3、源码结构通过上面给出的源码下载地址,我们将源码clone到IDEA中,如下:4、初始化数据库初始化脚本在上面源码目录的 /转载 2021-01-12 18:09:54 · 428 阅读 · 1 评论 -
WebSocket实践--spring boot实现WebSocket数据发送
什么是WebSocketWebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。简单来说,websocket是类似于http的一种通讯协议,它可以实现浏览器与服务器之间互相发送数据。WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在 WebSocket API 中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。在 WebSocket API 中,浏览器和服务器只需要做一个原创 2020-11-24 18:21:38 · 1308 阅读 · 0 评论 -
java监控Linux磁盘空间的使用情况
jar包引入:<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-io</artifactId> <version>1.3.2</version></dependency><dependency> <groupId>com.alibaba</groupId&转载 2020-11-20 18:23:58 · 1407 阅读 · 0 评论 -
springboot项目部署时,配置文件与jar包分离可配置
今天项目部署时,需要将配置文件外置,这样方便后期运维人员进行修改配置项。Springboot读取核心配置文件(application.properties/yml)的优先级:Jar包同级目录的config目录Jar包同级目录classPath(即resources目录)的config目录classpath目录上面是springboot默认去拿自己的核心配置文件的优先级,还有一种最高优先级的方式是项目启动时通过命令的方式指定项目加载核心配置文件,命令如下java –jar -Dspring.co原创 2020-11-18 18:21:14 · 2106 阅读 · 0 评论 -
java实现mongoDB高级查询
新开发的项目数据库是使用MongoDB,关于MongoDB的查询网上也有很多,在这里做一个学习、记录,后续会持续更新。欢迎留言交流~1. 多表联合查询SQL实现db.AA_Student.aggregate([ { "$lookup":{ "from":"AA_Score", // 从表表名 "localField":"code", // 查询主表的关联字段 "foreignField":"studentCode",原创 2020-08-30 12:28:37 · 1340 阅读 · 0 评论 -
JDK1.8之后Stream流操作学习
1.对List进行排序List<Object> sortStringList = new ArrayList<>(); sortStringList.add("F001"); sortStringList.add("F040"); sortStringList.add("F047"); sortStringList.add("F005"); sortStringList.add("F056");原创 2020-09-27 23:22:29 · 535 阅读 · 0 评论 -
spring boot + jdk1.8实现Excel导入、导出
转载1.jar包导入 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.13</version> </dependency> <dependency>转载 2020-09-26 20:14:04 · 531 阅读 · 0 评论 -
java解决时区8小时问题
相差8个小时原因spring中对于@RestController或者@Controller+@ResponseBody注解的接口方法的返回值默认是Json格式,所以当对于date类型的数据,在返回浏览器端是会被spring-boot默认的Jackson框架转换,而Jackson框架默认的时区GMT(相对于中国是少了8小时)。解决方案1 如果你的项目是 spring-boot在application.properties添加配置 配置spring的时区 这条语句能解决你时间多8个小时问题,若少转载 2020-09-17 17:27:45 · 2967 阅读 · 0 评论 -
java连接mongoDB数据库
大家在工作中经常会使用mongoDB,接下来给大家带来两种Java连接mongoDB数据库的方式,以springboot项目为例。引入jar包<!--mongodb依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb<原创 2020-07-29 22:31:07 · 2865 阅读 · 0 评论 -
将java程序打jar包并部署到服务器上运行
第一步:java程序打包有两种方式,一种是利用idea的工具打jar包,具体步骤网上有很多,可以自行查找第二种是命令行的方式,mvn clean install -Dmaven.test.skip输入命令后点击回车按钮,如果打包成功则会出现如下页面,图中标注的红线则是jar包的位置。第二步:将jar包放到服务器上,切换到jar包所在的文件夹,运行命令:java -jar test.jar这种方式特点是ssh窗口关闭时,程序中止运行.或者是运行时没法切出去执行其他任务nohup java原创 2020-07-27 22:17:10 · 6408 阅读 · 0 评论 -
java分别实现SCP、FTP协议进行服务器间文件传输
最近在做一个文件分发功能,将一台服务器上的文件传输到另外的三台服务器,还要求利用SCP协议进行传输,之前都是使用FTP传输,于是特意到网上了解一下。FTP 基于TCP来传输文件,明文传输用户信息和数据。SFTP 基于SSH来加密传输文件,可靠性高,可断点续传。SCP 是基于SSH来加密拷贝文件,但要知道详细目录,不可断点续传。具体参考:文件传输协议1.SCP协议传输利用SCPClient的put()和get()方法,将本地文件上传至服务器和下载服务器文件。代码参照这里根据jar包ganyme原创 2020-07-26 20:41:23 · 1207 阅读 · 0 评论 -
Java对象与map相互转化
/** * 将对象装换为map * * @param bean * @return */ public static <T> Map<String, Object> beanToMap(T bean) { Map<String, Object> map = Maps.newHashMap(...转载 2020-01-08 23:01:41 · 330 阅读 · 0 评论 -
springboot zuul实现动态路由
@Configurationpublic class DynamicRouteConfiguration {@Autowiredprivate ZuulProperties zuulProperties;@Autowiredprivate ServerProperties server;@Beanpublic DynamicRouteLocator routeLocator() {...原创 2020-01-08 22:57:29 · 1291 阅读 · 0 评论 -
springboot项目中获取前端JSON串形式
今天项目中遇到前端将多个实体类封装成实体类数组后转为json字符串,后端接收时,用String类型接收。若不加@RequestBody注解则接收不到数据,接收到数据后,可以看一下数据格式,一般是K,V的形式,在json串转对象时,需要先通过K,获取V值,再进行对象转换。 public NewResultMsg updateUserAndUserAccount(@RequestBody St...原创 2019-11-24 23:48:12 · 1201 阅读 · 0 评论 -
springboot项目实现邮件发送功能
yml文件配置pom文件导入jar包<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </depen...原创 2019-10-30 17:50:47 · 1005 阅读 · 0 评论 -
java获取本周、下一周的日期数据
最近项目中做预约系统遇到查询本周,下周的数据情况。记录一下!/*** 获取一周的日期数据/@Testpublic void getThisWeekDate(){Calendar cal = Calendar.getInstance();SimpleDateFormat dateFormat = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);...原创 2019-10-29 17:35:42 · 3101 阅读 · 1 评论 -
java获取文件路径,文件内容等实用操作类
1.获取文件夹下对应后缀的文件路径/*** 获取当前文件夹下所有符合后缀的文件绝对路径/@Overridepublic ArrayList readFilesUnderFolder(String filepath, String suffix) {ArrayList filePathList = new ArrayList();File file = new File(filepat...原创 2020-02-01 15:24:17 · 252 阅读 · 0 评论 -
Spring boot微服务架构中,利用RestTemplate调用别人提供的接口
https://segmentfault.com/u/lenve@TOC欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如...原创 2019-09-05 11:09:30 · 3562 阅读 · 0 评论 -
java实现后端分页
java实现后端分页通过分页工具类(Page)来实现,具体参考代码参见下面链接.https://www.cnblogs.com/lixiang1993/p/7360404.htmlmapper.xml文件中的分页查询语句如下:一、Mysql使用limit分页select * from stu limit m, n; //m = (startPage-1)pageSize,n = page...转载 2019-06-26 14:43:25 · 3995 阅读 · 0 评论