自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(80)
  • 收藏
  • 关注

原创 SLF4J: Class path contains multiple SLF4J bindings.解决

该方案可以快速解决java依赖冲突问题,一般依赖冲突问题都可复用此方案Maven Helper插件很好用,详细功能可自行百度。

2023-12-28 17:20:47 921

原创 同一 tomcat 不同项目 session 共享实现

工程A将用户登录信息加密响应给前端,前端在请求工程B时将用户加密信息放入请求header,工程B解密获得用户信息。开启biz-m-rest、mams-rest服务session共享,sessionCookiePath=“/” 配置很重要,没有该配置 两个工程中打印的sessionId 不同。网上很多博客用固定的key(session字符串),固定key虽然实现session共享,但是没有解决安全问题。工程A登录接口封装方法,将用户信息存入session中,sessionId 为key。

2023-06-21 17:52:51 3250

原创 并发编程详解

eg:和其他系统集成,某个接口执行完需要10分钟,其他系统不关心执行过程,只关心结果,不希望等10分钟,想立即拿到结果(实际上是一个同步转异步),怎么处理?eg:货车拉来了一批货,需要尽快卸货,如果1个工人搬运,需要花费10个小时,如果请10个工人同时搬运,理论上只要1个小时。线程1进来拿到ticket 值为2,进入了休眠,线程2同时进来也拿到了ticket 值也为2,再自减就打印了1。分析:创建了5个线程来消费ticket这个公共资源,循环5次,每次自减1,结果应该是0,为啥会打印的结果实1?

2023-04-02 12:11:21 1085 1

原创 postgreSQL分组查询中位数,偶数行输出中间两条记录

2.percentile_disc函数,表示最接近请求百分位的离散值,传参0.5即50%,如果有偶数行,0.5默认把小的中位数取出来,传参0.51把偶数行较大的中位数取出来,并集结果输出。多条记录中按姓名分组,分组后的结果取中位数,若同一组记录行数为基数,打印正中间记录;若同一组记录行数为偶数,打印中间两条记录。1.percentile_disc(0.5) within group (order by income) 表示取中位数。

2023-03-17 16:55:51 645

原创 nginx详解(概念、Linux安装、配置、应用)

通过代理服务器屏蔽用户信息的过程。其特点是:目标服务器不知道请求用户的信息,比如请求IP。总结发现,通过简单分类,这里面涉及到三种类型的机器,分别是:用户机器、代理机器、目标服务机器我们上网的一般过程是,客户端发出请求,服务器接收处理请求做出响应,客户端接收响应展示给用户。仿佛不需要代理了,这个理解是对的,那么什么场景会用到正向代理?比如国内用户需要访问google,但是由于政策原因没有,国内用户访问不了google(没有开通防火墙),这个时候还需要访问google的资源,怎么做呢?

2023-03-13 18:04:51 2158

原创 Java 常用设计模式——单例模式

适⽤于⼀些重量级的对象,在计算机系统中,线程池、连接池、缓存、⽇志对象、对话 框、打印机、显卡的驱动程序对象常被设计成单例。单例模式确保某个类只有⼀个实例,⽽且⾃⾏实例化并向整个系统提供这个实例。只⽤在使⽤的时候才会创建实例对象。类加载的时候就创建好实例对象。

2023-03-08 17:36:19 97

原创 Linux命令总结

Linux不是一个操作系统,严格来讲,linux只是一个操作系统中的内核,内核是什么?内核建立了计算机软件与硬件之间通讯的平台,内核提供系统服务,比如内存管理,虚拟内存,设备I/O等;发行版本:一些组织或公司在内核基础上进行二次开发而重新发行的版本,Linux的发行版本有很多种,CentOs和Unbentu用的都很多,两者的命令略有区别,本文命令基于CentOS版本。

2023-03-08 11:09:16 155

转载 三分钟看懂ChatGPT

使用机器学习算法来分析和理解文本输入的含义,然后根据该输入生成响应。该模型在大量文本数据上进行训练,使其能够学习自然语言的模式和结构。

2023-02-28 17:05:14 5855

原创 SQL 中的笛卡尔积

进一步可以发现笛卡尔积和内连接的sql语句可以相互转化,这对我们理解内连接的本质和笛卡尔积的查询条件很重要内连接不加关联条件的结果就是笛卡尔积笛卡尔积在表数据量大的情况下查询结果会倍增,实际应用中一般会加查询条件过滤数据怎么理解迪卡儿积中的查询条件,可以将笛卡尔积sql转化成内连接sql去理解。

2022-12-01 15:22:05 25481 1

原创 SpringBoot+JPA框架 配置多数据源

【代码】SpringBoot+JPA框架 配置多数据源。

2022-09-02 17:45:46 1905

原创 SpringBoot 集成 Spark demo

测试类中一共有写了四个测试方法,包含分析txt文件,csv文件,json数据处理,直连mysql数据库,方法都经过测试,可以正常打印结果,特别是jdbc 直连mysql可以直接写sql语句,很方便。

2022-08-04 11:30:20 2204

原创 Spark简介及linux环境搭建(local本地模式)

Spark是用于大规模数据处理的统一分析引擎。

2022-08-04 11:18:00 1354

转载 linux 增加swap内存空间

启动服务报错,内存不够:commit_memory,希望增加swap内存空间二:操作过程1.free -h查看内存占用情况可以看到Mem内存还有,Swap内存只有121M2.Swap新增1G 内存空间3设置分区文件并激活4查看内存Mem和Swap的区别对于memory没什么可说的就是机器的物理内存,读写速度低于cpu一个量级,但是高于磁盘不止一个量级。所以,程序和数据如果在内存的话,会有非常快的读写速度。但是,内存的造价是要高于磁盘的,虽然相对来说价格一直在降低。除此之外,内存的断电丢失数

2022-06-29 18:26:37 743

原创 java进阶之路——番外篇

引子写了一些java基础,也沉淀了好久(好久没有更新),下一阶段准备写写进阶篇,今天突发奇想,写一篇java番外篇java的晋级之路,就像打怪升级,初遇问题,就像遇到巨无霸的怪兽,好恐怖,好厉害呀,各种办法试过了还是不能打败怪兽。但问题总要解决,不管你找各种资料,还是请人助攻,怪兽终归不能战胜正义,死在光明之下。有趣的是,下次又遇到这个怪兽,一刀灭之,不费吹灰之力,念叨一声,哪里来的野怪怪兽变弱了吗,不,是我们变强了阿里、腾讯等大厂都有自己的职级体系,以管理岗位P1-P9/技术岗位L1-L9为例

2022-05-27 18:21:34 1444

原创 初级java开发必备技能三——debug调试【基础】

前言debug的重要性不言而喻,为啥是必备技能三,还有两个技能是啥?就像《林海雪原》中杨子荣上威虎山“过坎子”一样,初级java开发必备的三个技能,分别是:git、maven、debug第一关,不会使用git,项目不能下载、提交,那还玩个屁,出师未捷身先死第二关,maven,项目下载下来后,要让你的项目跑起来,项目跑不起来,或者在别人的帮助下才勉强跑起来,都是不行的第三关,项目跑起来,leader为了让你尽快熟悉项目,可能会让你改一些简单的bug,如果不会debug,卒git和maven的使用

2022-05-27 10:55:19 1489

原创 程咬金三板斧,解决maven项目启动报错问题——初识maven【基础】

一.Maven 概念百度百科百度百科的解释实在不敢恭维,云里雾里。Maven到底是什么?为什么要用Maven?我理解的Mavenmaven是一个很实用的依赖管理工具知识储备什么是依赖?互联网发展至今,我们早已站在巨人的肩膀之上,不是从0开始。要实现什么功能,都有对应的框架(jar包),所实现的功能越多,引用的框架(jar包)越多。这里有一个问题,框架(jar包)也不是从0开始,也会用到其他的jar包,jar包之间会存在相互引用、版本不一致、冲突等种种问题,这时你听起来可能已经有点乱了,有没有一

2022-05-26 18:45:49 879

转载 什么是主数据

原文地址:https://zhuanlan.zhihu.com/p/168672437一:什么是主数据概念:维基百科主数据 (Master Data):在企业中用来定义业务对象的、具有持续性、非交易类的数据。相对于交易类数据,主数据是相对稳定的数据。二、主数据的特点根据定义可以发现:主数据是具有共享性的基础数据,可以在企业内跨越各个业务部门被重复使用,处于相对高价值,高共享,相对稳定的状态。所以,主数据具有以下几个特征。超越部门:主数据是组织范围内共享的、跨部门的数据,不归属某一特定的

2021-07-21 11:44:10 13029 2

原创 redis 基本使用(linux数据库查值)

1.建立连接redis-cli -h 10.2.123.33 //连接10.2.123.33上redis2.StringGET key //查key为xxx的string数据Hash3.HGETALL key //获得hash key为xxx的所有数据4.HGET key field //key和属性5.del key //删除key

2020-12-21 17:56:17 3108

原创 国际版时区问题解决方案之:mysql函数

背景数据库存的是东八区时间,需要根据用户时区时间按 天,周,月统计数据分析将用户时区时间转化为东八区查数据库,查到结果再转化为用户时区但这里涉及到用户时间分组,若分组的维度是东八区,那根据东八区聚合会导致数据计算错误。需要按用户时区分组想过一种方案是将 数据库关于统计相关表加上时区字段,每条记录根据24个时区生成24条记录。这样会产生大量冗余数据(原来1万条,现在24万),影响数据库性能后来找到更优方案使用mysql函数,将数据库中原来东八区数据计算为用户时区时间,根据计算后的时间查询e

2020-12-17 18:19:53 846

原创 国际化项目时区问题解决方案

一:背景1.mysql数据库中存储时间的时区:东八区2.web端用户设置的时区3.pc端系统时区二:pc端时区会影响时间戳的转化同一个时间戳,改变pc端系统时区,得到的格式化时间会 变解决:不返回时间戳,返回格式化后的字符串三:方案一使用Spring AOP统一修改(点击此标题,查看详情)优点:代码量小缺点: 不适合复杂统计(用户时区天,星期,月)四:方案二:sql语句中时区函数和子查询将源数据中东八区时间,改为用户时区时间优点:数据库层面做的时区转换,适用范围广,适合复杂

2020-12-16 11:50:59 3845

原创 Spring AOP实际应用之:根据时区全局修改用户时间

背景国际版项目,每个用户有自己的时区,数据库存储的时间固定是东八区,现在需要根据用户设置的时区显示时间解决方案很多,这里的方案是 实体类增加时间格式化属性(赋值,前端显示),使用 Spring AOP 全局修改返回对象属性值实体类可以不加属性,直接修改原来的Date有个问题是Date类型的数据以时间戳的形式返回给前端,时间戳会根据浏览器客户端时区的改变而改变所以需要后端定义一个String类型格式化时间,前端显示String一:实体类增加格式化属性二:自定义注解package com.s

2020-12-11 18:22:52 1304 2

原创 上传空文件报错:Current request is not a multipart request

异常org.springframework.web.multipart.MultipartException: Current request is not a multipart request at org.springframework.web.method.annotation.RequestParamMethodArgumentResolver.handleMissingValue(RequestParamMethodArgumentResolver.java:196) at org.spr

2020-12-10 18:25:41 1297 3

转载 mongodb已知表添加字段

1.给contact_segment_member_015 表添加version字段 ,默认值为1db.contact_segment_member_015.update({},{$set:{version:1}},{multi:true})2.删除contact_segment_member_015 表version字段db.contact_segment_member_015.update({},{$unset:{version:1}},false, true)MongoDB 使用 update

2020-12-03 15:21:10 2294

原创 linux 环境mongoDB 根据id查询数据

1.mongo //找到mongodb2.show dbs //展示数据库3.use xx //进入xx库,没有则创建4.show collections //查看数据库中的表(文档)5.db.文档名.find("_id":ObjectId(“5fc237a78d60174dffc0cb7f”)}) //查询id为5fc237a78d60174dffc0cb7f的记录6.db.文档名.find(“email”:“123.com”).pretty() //pretty()函

2020-11-28 22:46:57 1845

原创 java 使用mongoTemplate 按月分组、聚合的实现 (要求返回非分组字段)

一.需求统计当前用户过去一年中每个月新增联系人(联系人表存储在mongoDB)二.分析:根据createTime 中的月分组,聚合返回字段有:用户id,分组月份,该月记录条数三:mongo 查询语句说明:$project:映射,查询的字段,1显示,0不显示$match:过滤,查询条件(相当于sql中的where)$group:分组,这里用到了 mongo 自带的 $month函数,可以根据createTime中的月分组注意分页、排序等语句可以在后面累加;映射,过滤,分组,分页,排序

2020-11-20 14:21:24 3433

原创 idea clean Process terminated

一:Process terminated(进程终止)二.错误信息显示 重复的子模块三.模块重复,删除一个四.总结造成进程终止的原因很多,clean 进程终止一般都是pop.xml文件的问题。根据具体的报错信息解决...

2020-11-06 11:36:18 10465 2

原创 utf-8中文标点占几个字节

测试代码: public static void main(String args[]){ String aaa="中"; String aaa2="s"; String aaa3=","; String aaa4="-"; String aaa5="0"; try { int length = aaa.getBytes("utf-8").length; int length2 = aaa2.getBytes("ut

2020-10-28 15:50:25 1591 1

原创 sql:查询过期时间前N天的记录(N为int类型)

sql: select t.id,t.user_id,t.user_name,t.status, t.create_time,t.update_time,t.disable_time from aaa t WHERE t.`status`= 2 AND date_format(t.disable_time,"%Y-%m-%d")= date_format(DATE_ADD(NOW(),INTERVAL #value:userSetDate# DAY),"%Y-%m-%d")说明:

2020-09-16 09:55:54 463

原创 idea测试类报错:org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named ‘xxx‘

背景:idea 测试dao,报错。分析错误信息说的是找不到这个bean,查看测试配置文件,根路径是对的,测试类之前可以运行,最近也没有改过,排除配置文件本身问题。为什么突然读不到还有一个原因,idea 的资源文件都要指定资源用途,将资源文件重新指定为 测试配置文件,问题解决(就算之前已经指定,也会报这个错,要重新指定)错误信息:org.springframework.beans.factory.BeanCreationException: Error creating bean with

2020-08-26 10:11:56 1948 1

原创 List 根据Object(对象)多维度排序

一.需求IP池根据批量和触发分为两列每列根据地理位置进行分组(组与组根据地理位置添加的时间排列,地理位置添加越早,摆放的越靠上),组内根据0级-最高级的单用池和0级-最高级的复用池 由上往下排列二:分析多维度排序:按要求,排序的优先级有三个(也就是三个维度);第一维度:地理位置添加的时间 (添加时间越早排序越靠前,添加时间相同,则比较第二、三维度)第二维度:单用池和复用池(单用池排在复用池前,名称相同,则比较第三维度)第三维度:等级(由低往高排)三:实现核心代码,比较器public

2020-05-27 14:55:39 783

原创 ajax :同一表单根据下拉框1选中的内容改变下拉框2中内容

需求:一个form表单中有两个下拉框,下拉框1有两个选项,根据1中选中的值动态显示下拉框二的值,下拉框二需要读数据库下拉框一:<tr class="prop"> <td valign="top" class="name"><label for="title">IP分类:</label></td> <td valign="top" class="value"> <select name="overseas" id="ov

2020-05-25 16:57:52 367 1

原创 支付:同步和异步的区别

一.概念同步:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式。 (类似打电话)异步:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方式。 (类似发短信)支付中的同步和异步:指的是用户支付后,服务器获取支付结果的两种不同方法。这两种方法是相互独立的,各有优劣,相辅相成。二:区别(以支付宝支付为例)1.同步回调只有一次,异步回调可以有多次详解:同步回调只有一次,那这一次的结果就是最终结果,回调成功就是成功,回调失败就是失败;异步回调如果失败,在失效时间内会继续

2020-05-22 17:29:37 5206

原创 idea+jetty启动报错:java.net.BindException: Address already in use: bind

一.错误信息2020-01-19 17:01:09.044:INFO:oejs.Server:main: jetty-9.2.1.v201406092020-01-19 17:01:09.093:INFO:oejdp.ScanningAppProvider:main: Deployment monitor [file:/D:/JavaRuanJian/jetty-distribution-9....

2020-01-19 18:24:39 2453

原创 idea npm start启动前端项目报错:ERROR Failed to compile with 1 errors : This dependency was not found:

npm start 报错如图所示找不到依赖,执行命令:npm install --save Vuex解决:淘宝镜像添加依赖(vuex首字母小写):cnpm install --save vuex淘宝镜像启动:cnpm start主意点:1.错误信息中说少依赖,提示的命令首字母大写了,大写报404改成小写试试2.nmp 报错就用cnmp...

2019-12-23 17:35:47 11869

原创 Dos窗口nginx -s quit异常:The system cannot find the file specified

[error] CreateFile() “D:\JavaRuanJian\nginx-1.17.0/logs/nginx.pid” failed (2: The system cannot find the file specified)背景:Windows +r cmd 进入dos窗口进入nginx安装目录,nginx start命令启动nginx ,浏览器上访问时出现无法访问回到...

2019-12-19 17:38:29 849

原创 select 下拉框搜索实现模糊查询 的两种实现方法(h5标签实现、js实现)

方法一(h5 datalist标签实现)效果不输入时:输入1:输入2:code<html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><META content="fason,阿信" name=Author><t...

2019-12-12 17:34:40 17550 1

原创 实际项目中 资源竞争,加锁 redis setnx 具体解决方案

1.概念资源竞争:多个用户同时访问同一个资源。eg:理想情况下,顾客A去买车票,提交订单并付款,付款成功后修改该票状态,由待出售改为已出售,这时其他用户买票,系统查询待出售票就不会查到该票。如果系统中用户较多,多个用户同时购买同一张待出售的票,如果不做处理,就会出现,多个用户都付款成功。但资源只有一个,这显然是有问题的加锁:给资源加锁,并发变成串行,多个用户不能同时访问,只有等一个用户访...

2019-12-02 17:26:33 266

原创 Untracked working tree file would be overwritten by merge.

服务器上使用git checkout 命令切换分支,出现错误:解决:1.git status2.不保存直接删除这三个异常文件,使用 git clean -d -fx “异常文件” 命令删除。该命令一次删除个文件,删除后git status 查看状态,直到所有异常文件删除为止。git clean -d -fx其中x -----删除忽略文件已经对git来说不识别的文件d ----...

2019-11-28 10:41:47 593

原创 org.apache.hadoop.hbase.client.RetriesExhaustedWithDetailsException: Failed 4 actions: UnknownHostEx

11-25 16:51:41,791:WARN hconnection-0x45c0148e-shared--pool1-t4 org.apache.hadoop.hbase.client.AsyncProcess - #1, table=global_score, attempt=11/10 failed=4ops, last exception: java.net.UnknownHostExc...

2019-11-25 17:29:07 1943

原创 IDEA 类中找不到main方法请将main方法定义为public static void main. 否则 JavaFX 应用程序类必须扩展javafx.application.Applicati

使用IDEA工具编写java程序时遇到这样的错误:错误在类中找不到main方法,请将main方法定义为 public static void main(String[] args)否则 JavaFX 应用程序类必须扩展javafx.application.Application。但是程序中已经写了main方法,却还是报错网上所说的保存再启动都是使用eclipse工具的,idea怎样ct...

2019-11-15 14:20:46 9921 4

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除