Java

文件的上传和下载

文件的上传和下载 单文件上传 铭记:在使用Postman 进行接口测试时 , 不仅要选择File , 更要自己亲自写入file , 并且图片的内存也不能太大 , 这样才能测试成功 代码演示: ‍ ‍ 文件下载 ‍ 全部代码演示 ‍

【JDK】理解 Java SPI 机制

1  前言 本节我们来看看 Java SPI,SPI 是一种用于动态加载服务的机制。它的核心思想就是解耦,属于典型的微内核架构模式。SPI 在 Java 世界应用非常广泛,如:Dubbo、Spring Boot 等框架。本文从源码入手分析,深入探讨 Java SPI 的特性、原理,以及在一些比较经典领域的应用。 2  SPI 简介 SPI 全称 Service Pro

HTML5 Canvas 数据持久化存储之属性列表

正常我们设置属性的时候,属性和属性值的 key value 对应,但是在实际开发中,经常遇到属性值可能需要从多项中选择,这个时候用原生的 HTML5 配合 JavaScript 来实现这个功能会让人非常头疼,我试着用 HT for Web 来实现了这个功能,感觉整体实践起来还是比较容易的,所以在这边跟大家分享一下。 本例链接: http://www.hightopo.

Vue3中的几个坑,你都见过吗?

Vue3 目前已经趋于稳定,不少代码库都已经开始使用它,很多项目未来也必然要迁移至Vue3。本文记录我在使用Vue3时遇到的一些问题,希望能为其他开发者提供帮助。 1. 使用reactive封装基础数据类型 传统开发模式中,数据声明很简单。但是在Vue中有多个响应式变量声明方式,整体的使用规则如下: 使用reactive来封装Object,Array,Map,Set数据类型; 使用ref封装Str

redis-实战篇-短信登录

黑马点评,前后端分离的架构模式。前端分布在nginx上,后端分布在tomcat。 短信登陆 导入黑马点评项目: 打开项目,重新设置maven仓库位置。更新src/main/resources下的application.yaml中的数据库配置和redis配置。 后端部署: 点击services添加springboot,启动HmDianPingApplication,如下图所示。 前端部署: 打开n

redis-实战篇-商户查询缓存

基本思路 添加缓存的原则:动态数据不要加缓存 缓存cache:数据交换的缓冲区。一般读写性能较高。比如浏览器缓存,浏览器会将一些经常使用的数据缓存到本机,这样在多次加载时就不需要访问服务器,而浏览器未命中的缓存则会去tomcat获取。 缓存的作用:降低后端负载、提高读写效率、降低响应时间 缓存的成本:数据一致性成本、代码维护成本、运维成本 实现queryShopById()方法和queryByI

记一次 Redisson 线上问题 → ERR unknown command 'WAIT' 的排查与分析

开心一刻   昨晚和一个朋友聊天   我:处对象吗,咱俩试试?   朋友:我有对象   我:我不信,有对象不公开?   朋友:不好公开,我当的小三 问题背景   程序在生产环境稳定的跑着   直到有一天,公司执行组件漏洞扫描,有漏洞的 jar 要进行升级修复   然后我就按着扫描报告将有漏洞的 jar 修复到指定的版本   自己在开发环境也做了主流业务的测

HTML5(H5)新特性

HTML5(H5)是HTML标准的第五个版本,引入了许多新特性和改进,以下是一些H5的新特性: 语义化标签:H5引入了一系列新的语义化标签,如<header>、<footer>、<nav>、<article>等,有助于更清晰地描述页面结构和内容。 视频和音频支持:H5提供了<video>和<audio>标签,可以直接在

Java创建List的4种方法 Stream.of("a", "b").collect(Collectors.toList()); List list3 = Lists.newArrayList("f", "g");

Java创建List的4种方法 原文链接:https://blog.csdn.net/senlin1202/article/details/116135993   1、通过构造方法,例如:List<String> list = new ArrayList<>(); 然后调用list.add增加元素,如果知道初始化的值,

vue~对象的浅拷贝

浅拷贝 上面对浅拷贝的解释是否有问题?具我所知,浅拷贝只是复制了对象的属性,而复制出来的对象的引用与原始对象是不同的,这就是说,在修改新对象时,它不会影响到原始对象。 javascript中的实现 JavaScript 中可以使用不同方法实现对象的浅拷贝。浅拷贝只复制对象的第一层属性,不会复制嵌套对象内部的属性。以下是几种常见的浅拷贝方法: 1. 扩展运算符(Spread Operator): 使

Spring Cloud Gateway:新一代微服务 API 网关,用起来真优雅!

1.网关介绍 如果没有网关,难道不行吗?功能上是可以的,我们直接调用提供的接口就可以了。那为什么还需要网关? 因为网关的作用不仅仅是转发请求而已。我们可以试想一下,如果需要做一个请求认证功能,我们可以接入到 API 服务中。但是倘若后续又有服务需要接入,我们又需要重复接入。这样我们不仅代码要重复编写,而且后期也不利于维护。 由于接入网关后,网关将转发请求。所以在这一层做请求认证,天然合适。这样这

vue兄弟组件传参

实现兄弟组件之间的参数传递可以通过以下方法: 使用共同的父组件来传递参数。 在父组件中定义一个数据属性,用于保存需要传递给兄弟组件的参数。 Copy 在父组件的模板中引用两个兄弟组件,并通过props属性将参数传递给它们。 Copy 在兄弟组件中通过props属性接收父组件传递的参数。 Copy 然后可以在兄弟组件中使用传递过来的参数。 使用事件

Burp Suite Extension Development Guide

Burp Suite是什么? Burp Suite是一款Web应用程序渗透测试工具,可以帮助用户发现和利用Web应用程序中的漏洞,提高渗透测试的效率和精度。 Web应用程序最常用的传输数据的协议就是HTTP/HTTPS,所以我们将从HTTP协议的数据格式开始介绍。 HTTP/HTTPS协议内容简要划分 Burp中最为核心的对象就是HTTP数据包,我们的所有操作、各种API接口都是围绕HTTP数据包

分享一个 SpringBoot + Redis 实现「查找附近的人」的小技巧

前言 SpringDataRedis提供了十分简单的地理位置定位的功能,今天我就用一小段代码告诉大家如何实现。 正文 1、引入依赖 2、更新用户位置信息 编写一个更新用户位置信息的接口,其中几个参数的含义如下: userId:要更新位置信息或查询附近的人的用户ID。 longitude:新的经度值或查询附近的人时指定的中心经度。 latitude:新的纬度值或查询附近的人时指定的中心

DOMPurify 使用方法,如何安全地操作DOM |.sanitize()|.innerHTML|TypeScript TS

DOMPurify是一个仅限DOM的,超快速的,超级宽容的XSS清理器,用于HTML,MathML和SVG。 它也非常简单易用和入门。DOMPurify于2014年2月启动,同时已达到v3.0.5版本。 DOMPurify是用JavaScript编写的,适用于所有现代浏览器(Safari(10+),Opera(15+),Edge,Firefox和Chrome - 以及几乎所有使用Blink,Gec

【校招VIP】java语言考点之异常

考点介绍: 导致程序的正常流程被中断的事件,叫做异常。异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的。异常发生的原因有很多,通常包含以下几大类:  1.用户输入了非法数据。2.要打开的文件不存在。3.网络通信时连接中断,或者JVM内存溢出 答案详情解析和文章内容可扫下方海报二维码或点击链接即可查看! 一、考点试题 1、下面关于java.lang.Excep

使用java将csv文件转成json文件

使用java将csv文件转成json文件,仅供参考。 csv文件转json文件的完整代码如下:  

一行代码引发的性能暴跌 10 倍

代码测试 上面的一个简单的代码是测试 Java 创建对象的性能,如果没有 System.out.println(user); 输出的时间是 300ms左右,如果加上性能是 3000ms 左右,整整慢了 10 倍左右。(具体需要时间根据电脑的配置决定)。 看似很简单的代码,却会带来这样的性能消耗,确实很让人费解。为了弄清楚这个问题,我们需要讨论下,java 代码分配的规则。 对象分配规则 在前

jdk jre jvm

JDK JRE JVM 1.JDK(java development kit)   2.JRE(java runtime environment)   3.JVM(java vitual machine)      

Java并发编程的艺术-PDF下载-firebook-书火网

Java并发编程的艺术-PDF下载-firebook-书火网 资源链接:https://pan.baidu.com/s/19vG6Dd3YBr69i6D2NHeCaQ 提取码:wv4f 第1章介绍Java并发编程的挑战,会向读者说明可能会遇到哪些问题,以及如何解决。 第2章Java并发编程的底层实现原理,从CPU和JVM2个层面剖析。 第3章详细深入介绍了Java的内存模型。 第4章从介绍多线程

GitHub Failed to connect to github.com port 443 after 75006 ms: Couldn't connect to server 临时解决方案

发生状况:Mac 链接vpn状态,依旧无法拉取代码。     报错信息:Failed to connect to github.com port 443 after 75006 ms: Couldn't connect to server 解决方案: 开启配置 http、https 全局代理 git config --global http.proxy http://127.0.0.1:1080

ElasticSearch集成IK分词器

一、IK分词器简介 IKAnalyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包。从2006年12月推出1.0版开始IKAnalyzer已经推出 了3个大版本。最初,它是以开源项目Lucene为应用主体的,结合词典分词和文法分析算法的中文分词组件。新版本的IKAnalyzer3.0则发展为 面向Java的公用分词组件,独立于Lucene项目,同时提供了对Lucene的默认优化实现

文盘Rust -- 给程序加个日志

日志是应用程序的重要组成部分。无论是服务端程序还是客户端程序都需要日志做为错误输出或者业务记录。在这篇文章中,我们结合log4rs聊聊rust 程序中如何使用日志。 log4rs类似java生态中的log4j,使用方式也很相似 log4rs中的基本概念 log4rs 的功能组件也由 appender 和 logger构成。 appender 负责向指定文件或控制台追加日志 logger 包

关于Android开发中推送消息通知推送消息到前台的问题

为什么推送点击发送按钮之后没有消息进行发送?(以简单音乐播放器为例) 1. 前景 创建了一个Activity : ForegroundServiceActivity.java 创建了一个相关联的XML文件 创建了一个音乐播放器的服务 页面效果如下: 2. 问题解决 在AndroidManifest.xml文件中开启前台权限 在AndroidManifest.xml文

RocketMQ 系列(四) 消息存储

RocketMQ 系列(四) 消息存储 本文是 RocketMQ 系列的第四篇,下面是前面几篇的文章,不清楚的话点击看一下吧。 RocketMQ系列(一) 基本介绍 RocketMQ 系列(二) 环境搭建 RocketMQ 系列(三) 集成 SpringBoot RocketMQ 作为一款优秀的分布式消息中间件,可以为业务方提供高性能低延迟的稳定可靠的消息服务。其核心优势是可靠的消费存储、消

LAXCUS分布式操作系统是什么?

​  今天收集了一些用户对Laxcus分布式操作系统的提问,贴出来给大家看看,也许对各位理解Laxcus分布式操作有些帮助。   1. 华为META60手机能够摆脱CIA监控,Laxcus分布式操作系统能不能做到这一点? 答:完成没问题!Laxcus分布式操作系统是我们团队的全体系自主设计研发,全域安全模型负责系统全体系全流程的安全处理,使用多种技术保证用户每一步操作安全可控。

解密Linux中的通用块层:加速存储系统,提升系统性能

通用块层 通用块层是Linux中的一个重要组件,用于管理不同块设备的统一接口,减少不同块设备的差异带来的影响。它位于文件系统和磁盘驱动之间,类似于Java中的适配器模式,让我们无需关注底层实现,只需提供固定接口即可。 通用块层的设计目的是为了提高磁盘读写的效率和可靠性。它通过对I/O请求进行排队和调度,以最大化磁盘的吞吐量和响应时间。通用块层可以管理多个块设备,并将它们抽象为一个统一的接口,使得文

easy javadoc easyjavadoc快捷键

应用场景 开发过程中,需要对类和方法添加注释,类的注释比较好实现,通过设置模板,在创建时即可自动创建预设的注释。而为方法添加注释,则就没那么容易,最主要的影响在于参数的处理上。 虽然IDEA自身的Live Template功能可以实现,但配置比较繁琐,特别是获取方法的参数列表,还需要写groovy脚本,注意的地方也比较多,详见我的另一篇专门介绍的博文,传送门。 而采用Easy Javadoc插件的

<<  <  679  680  681  682  683  684  685  686  687  688  689  >  >>