Java

SpringBoot如何解决跨域问题

什么是跨域 跨域问题的本质是浏览器为了保证用户的一种安全拦截机制,它的初衷是为了保证用户的安全,防止恶意网站窃取数据。 跨域三种情况 在发起请求时,如果出现了以下情况中的任意一种,那么它就是跨域请求: 协议不同,如 http 和 https; 域名不同; 端口不同。 也就是说,即使域名相同,如果一个使用的是 http,另一个使用的是 https,那么它们也属于跨域访问。 想要解决跨

【海图Maritime】隐藏MCS服务陆地要素

默认情况下,在海岸周边的海图数据,是具备陆地信息,因此在发布服务之后,是能够看到陆地要素的,如下 而在某些业务场景,我们需要的隐藏陆地要素,通常有两种做法 自己具备陆地要素的地图服务,那么将海图服务放在底层,陆地地图服务放在上层即可 如本身不具备完整的陆地地图服务,那么以上做法则无法满足要求,则需要对海图MCS服务进行控制,本文介绍这种处理方式 MCS服务端控制 海图数据本身是分物标对象存储

springboot使用@Async异步(简易)

实际项目中, 使用@Async调用线程池,推荐使用自定义线程池的模式,不推荐直接使用@Async直接实现异步,直接使用会不断的创建线程,最终会导致系统占用内存过高。 1、自定义线程池  2、service层使用   记录一些代码和问题处理方式,需要参考的请谨慎。

Java 函数式编程

一、Lambda表达式1.1 函数式编程思想概述在数学中,函数就是有输入量、输出量的一套计算方案,也就是“拿数据做操作” 面向对象思想强调“必须通过对象的形式来做事情” 函数式思想强调则金量忽略面向对象的复杂语句:“强调做什么,而不是以什么形式去做” 而我们要学习的Lambda表达式就是函数式思想的体现 1.2 体验Lambda表达式需求:启动一个线程,在控制台输出一句话:多线程程序启动了 方式1

SSM - SpringMVC - Syntax

1. 环境搭建 导入包:junit, servlet-api, jsp-api, jstl, spring-context(5.3.29) 早期版本回顾 @ https://docs.spring.io/spring-framework/docs/4.3.24.RELEASE/spring-framework-reference/  , 里面介绍了很多基本和基础概念所有版本下载

docker安装kibana关联es

es 浏览器访问 kibana 查看容器日志:docker logs kibana 关联es运行   未配置es地址则启动后修改配置文件   访问   elasticsearch 介绍 es 是基于 lucene 的的基础上开发而成的, 提供了一套分布式、高扩展、高实时的搜索与数据分析引擎, 使用 Java 语言

梅花香自苦寒来

解压看到一张图片拉到010看到很长一串像是16进制,直接跑脚本会自动生成一个之后把坐标转换成一个没有符号的可以让软件识别的模样输出如下之后用gnuplot生成二维码

4.ElasticSearch~进阶(二)

1、aggregation (执行聚合)聚合提供了从数据中分组和提取数据的能力。最简单的聚合大致等于SQL的聚合函数。在ElasticSearch中,你有执行搜索返回hit,并且同时返回聚合结果,把一个响应中所有hits分隔开的能力,这是非常强大且有效的。您可以执行查询和多个聚合并且在一次使用中得到各自的返回结果,使用一次简介和简化的api来避免网络往返语法 "aggregations" : {

【海图Maritime】隐藏MCS服务海图文件边框范围

本文适用11.1及之前的ArcGIS Maritime Server 通常情况下,海图数据在本身具备比例尺信息,表示其中可显示的比例尺范围,在ArcGIS Maritime Server中,海图MCS服务会在海图数据本身规定的比例尺范围之外的小比例尺下,限制其数据范围边框,如下 如果在用户数据非常多,且需要在小比例尺下浏览查看,那么过多的数据边框便会导致数据的混乱,应对此情况,一般有如下两种

兴达易控modbus转profinet网关三菱变频器通讯

兴达易控modbus转profinet网关与三菱变频器通讯本案例分享兴达易控modbus转profinet网关(MDPN100)连接西门子1200plc,实现三菱变频器485通讯兼容转modbusTCP通信,在博图中配置。拓展图打开博图,并添加PLC加载由兴达易控免费提供的modbus转profinet GSD文件安装网关GSD文件硬件目录找到新增MDPN驱动并选择该驱动工控机本机的IP地址应与本

js中数组常用的方法

javascript(js)中数组常用的方法 1.push():向数组末尾添加一个或多个元素,并返回新数组的长度。 const arr = [1, 2, 3]; arr.push(4); // [1, 2, 3, 4] 2.pop():移除数组末尾的元素,并返回被移除的元素。 const arr = [1, 2, 3]; const poppedElement = arr.pop(); // 3,

SpringBoot获取请求头信息

Http 头信息 HTTP 头(Header)是一种附加内容,独立于请求内容和响应内容。 HTTP 协议中的大量特性都通过Header信息交互来实现,比如内容编解码、缓存、连接保活等等。 request是代表HTTP请求信息的对象,response是代表HTTP响应信息的对象。 如下面的一个请求响应: Request Response SpringBoot 处理头信息 获取指定请求头 通

分类分包思想----信息管理系统

项目介绍 1.通过数组或者集合来作为储存容器(对比:数据结构课设使用的是链表:通过指针连接结点) 2.使用了继承,抽象类和接口来简化程序 3.使用多态来实现统一化编程,来简化代码 使用分类分包思想 1.各种包中的角色各司其职 control:和用户进行交互:向上调用service中提供的方法 service:业务处理层:处理control提交的任务(service也可以调用其他的serviic

SpringBoot 实现扫码登录

1、创建一张表,记录一下谁扫码了,谁登录了,User_Token表 字段如下: uuid : 用于确保唯一性 userId :谁登录的 loginTime :登录时间 createTime :创建时间 用于判断是否过期 state:是否二维码失效 0有效 1失效   2、步骤 PC端打开。调用生成二维码接口 并与 服务端建立链接。链接使用uuid进行绑定

前端开发报表工具所必须的三大能力

摘要:本文由葡萄城技术团队于博客园原创并首发。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 数据分析一直以来都是业务决策中非常重要的一环,在数字化时代尤其如此。然而,数据分析只有在持续的监控和可视化下才能真正发挥作用。如何采用使用一些高效的工具来做相应的数据分析?前端开发报表工具就是一个不错的选择。它可以为企业提供可视化的数据分析,让用户能够快速准确地

订单超时自动取消的技术方案解析及代码实现

前言 订单超时自动取消是电商平台中常见的功能之一,例如在淘宝、京东、拼多多等商城下单后,如果在一定的时间内没有付款,那么订单会自动被取消,是怎么做到的呢?作为技术人员我们应该了解自动取消的原理和实现逻辑,本文将介绍几种常用的技术方案,帮助开发者实现订单超时自动取消的功能。 通过以上图我们可以看到其实超时自动取消的方案有很多,虽然方案多(大多数都是结合延迟队列来实现的),但每个方案都有自己的优缺点

使用 JavaScript 脚本来进行复杂的查询改写

有这么一个需求: 网关里怎样对跨集群搜索进行支持的呢?我想实现: 输入的搜索请求是 lp:9200/index1/_search 这个索引在 3 个集群上,需要跨集群检索,也就是网关能否改成 lp:9200/cluster01:index1,cluster02,index1,cluster03:index1/_search 呢? 索引有一百多个,名称不一定是 app, 还可能多个索引一起的。

3.ElasticSearch~进阶

ES支持两种基本方式检索: 一个是通过使用 REST request URI来发送搜索参数(uri + 检索参数) GET bank/_search?q=*&sort=account_number:asc 另一个是通过 REST request body 来发送他们 (uri + 请求体) 1、match_all :查询所有 GET bank/_search { "que

sqoop安装教程

Sqoop的安装 注意:在安装Sqoop之前要配置好本机的Java环境和Hadoop环境 先把spoop的安装包 sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz 拷贝在系统目录下的 /root/softwares下面 解压配置环境变量 新建配置文件 修改配置文件 配置文件: 按照本系统实际安装的Hadoop系列目录配置好下面的路径: 拷贝MySql驱动 因为

界面控件DevExtreme PivotGrid,拥有新的HTML编码体验!

虽然DevExtreme刚刚发布了v23.1,但今天我们仍然要继续总结一下之前的主要更新(v22.2)中发布的一些与DevExtreme PivotGrid(透视网格)组件相关的重要特性。 DevExtreme拥有高性能的HTML5 / JavaScript小部件集合,使您可以利用现代Web开发堆栈(包括React,Angular,ASP.NET Core,jQuery,Knockout等)构建交

API开放平台

API开放平台//Todo将写好的SDK上传至maven仓库将代码上传至githubmaven多模块构建Restful风格一、API网关(kong、nginx、gateway)1、挡在数据库前面,2、SDK相当于工具类 补!二、技术1、前端:Ant Design Pro、React、Ant Design Pro Components、Umi、Umi Request2、后端:java Spring

Day04-16 数组

1、数组的定义 数组是相同类型数据的有序集合。 数组描述的是相同类型的若干个数据按照一定的先后次序排列组合而成。 其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们。 2、数组的声明和创建 首先必须声明数组变量,才能在程序中使用数组。声明数组变量的语法:        dataType[] arrayRefVa

防缓存穿透利器-布隆滤器(BloomFilter)

布隆过滤器 1、布隆过滤器原理 1.1 什么是布隆过滤器 1.2 使用场景 1.3 原理 1.4 布隆过滤器的优缺点 2、实现方式 2.1 初始化skuId的布隆过滤器 2.1.1 RedisConst常量类 2.1.2 修改启动类 2.2 给商品详情页添加布隆过滤器 1、布隆过滤器原理 1.1 什么是布隆过滤器 布隆过滤器(Bloom Filter)是1970年由布隆

RabbitMQ基础学习笔记

一、简介: RabbitMQ是一个实现了AMQP(Advanced Message Queuing Protocol)高级消息队列协议的消息队列服务,用Erlang语言,是面向消息的中间件:相当于一个快递站点,其只负责接收,存储和转发消息数据。   二、界面介绍: RabbitMQ管理界面: RabbitMQ管理界面操作详情   三、执行流程: 生产者(Producer

day--27--vue生命周期总结

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>生命周期总结</title&g

设计模式--策略模式

概念 策略模式 是一种 行为设计模式;当在处理一个业务时,有多种处理方式,并且需要在运行时决定使哪一种具体实现时,就会使用 策略模式 特点 策略模式体现了面向对象程序设计中非常重要的两个原则: 封装变化的概念 编程中使用接口,而不是使用具体的实现类(面向接口编程) 组成 策略模式 由 抽象策略角色、具体策略角色、环境角色 构成 抽象策略角色(PaymentStrategy):它为所

Zookeeper概述

Zookeeper的功能 1.统一命名服务:对应用和服务进行统一命名 2.统一配置服务:在分布式系统下,让所有节点的配置信息一致,便于修改配置信息 3.统一管理服务:可以监控每个节点的状态变换,同时获取信息并作出调整 4.服务器动态上下线:客户端可以实时洞察服务器上下线变化 5.软负载均衡:可以根据每个节点的访问情况把任务优先交给访问数量较少的节点 Zookeeper工作特点 zookeeper集

在SpringBoot中实践AOP编程

具体实践 Spring AOP是Spring框架中一个支持实现面向切面编程的模块,由于Spring Boot已经把Spring框架组合得非常好用,所以在基于Spring Boot框架的项目中实现AOP编程也是非常方便,具体来说可以分为如下几步: 第一步: 在项目中引入依赖配置。 第二步: 定义切面,切入点和通知,三者可以直接在一个类中完成。 使用注解@Aspect来定义切面(注:需要在应用注解@

SpringBoot集成ElasticSearch时分页排序查询时遇到的坑每次只能返回10条数据

背景 在使用ElasticSearch来分词查询,并分页返回指定的数据条数,但是当我们每次想得到分页数据条数超过十条的时候,ElasticSearch总是只能返回十条。这是因为ElasticSearch为了查询的速度,在默认的情况下已经设置了分页数据只能返回10条,所以我们需要通过改变size(返回数据的大小)去改变分页查询的数据条数大小,若没有设置size只能是返回10条。 一、查询要带上fro

使用流排序时Comparator.reverseOrder() 和 reversed()的区别

两种排序方式  Comparator.reverseOrder() 和 reversed()的区别是前者以某字段进行倒序排列,而reversed是针对已排序数据进行处理,常常用于比较器的末尾。 在使用Stream sorted进行排序的时候,常常需要按照摸个属性进行降序排列,有时候reverseOrder() 和 reversed()都可以实现目标,那他们的区别是什么呢? 区别与不同 r

<<  <  929  930  931  932  933  934  935  936  937  938  939  >  >>