自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 资源 (1)
  • 收藏
  • 关注

原创 nginx配置反向代理,兼容websocket

【代码】nginx配置反向代理,兼容websocket。

2023-07-24 15:45:52 476 1

原创 java利用jacob,文字转语音文件,windows

java根据文字生成语音文件

2022-07-13 17:08:43 698 1

原创 java多线程处理业务,合并处理结果

java多线程处理业务,合并处理结果

2022-06-01 13:45:56 1582

原创 java 实现多个子线程执行完毕后,再执行主线程

public static void main(String[] args) throws InterruptedException { List<String> list = new ArrayList<>(); //1、 创建CountDownLatch 对象, 设定需要计数的子线程数目 final CountDownLatch latch=new CountDownLatch(3); System.out.println("主线程开始执行....

2022-05-13 15:15:30 2746

原创 jar包瘦身

先通过idea,将项目完整打一个jar包,得到一个含有依赖文件的jar包,此时jar包的体量可能很大。用压缩文件打开jar包,找到BOOT-INF下的lib文件夹,将lib文件夹都复制出来。在maven打包插件中,添加配置,打包时,排除依赖文件,其实重新打包,发现jar包的大小变小了windows环境中,将lib和新jar包放在同一个目录下,打开cmd窗口,输入java -Dloader.path="lib/" -jar "xx.jar",即可启动后续如果添加新的pom依赖,就.

2021-12-13 15:37:15 868

原创 把多个文件打成压缩包并输出到客户端浏览器中

public static void downloadZipFiles(List srcPaths, String zipFileName) { try { HttpServletResponse response =((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getResponse(); // 重点突出 response.reset(); .

2021-06-28 11:58:11 423

原创 删除文件夹,递归删除文件

/** * 删除目录及目录下的文件 * * @param dir:要删除的目录的文件路径 * @return 目录删除成功返回true,否则返回false */public static boolean deleteDirectory(String dir) { // 如果dir不以文件分隔符结尾,自动添加文件分隔符 if (!dir.endsWith(File.separator)){ dir = dir + File.separator; } .

2021-06-28 11:57:19 168

原创 递归导出文件夹,保存文件夹文件结构

public static void downloadZipByDir(String srcDir, String zipFileName) { try { HttpServletResponse response =((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getResponse(); // 重点突出 respon.

2021-06-28 11:51:37 167

原创 windows下,解决docker2375端口连不上,telnet不通

1、首先看ip地址能不能ping的通2、看防火墙有没有关闭,或者对2375端口有没有放开3、在Docker Desktop 中设置2375端口对外开放但是这个默认是绑定localhost的所以用管理员身份运行cmd,执行以下命令,进行端口代理。其中your-public-ip就是你本机的IP地址netsh interface portproxy add v4tov4 listenport=2375 connectaddress=127.0.0.1 connectport=2375

2021-04-14 16:01:06 2985

原创 springboot生成验证码,保存在cache中

1、maven依赖<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>18.0</version> </dependency> <dependency>

2021-04-02 14:33:19 1188

原创 idea集成docker,一键部署springboot项目

1、前提条件VMware下准备linux环境(centos7)2、centos7下安装jdk、maven,过程比较简单,自行百度3、centos7下安装docker运行yum命令,安装docker,并启动与设置开机自启yum install docker --安装docker命令systemctl start docker.service --启动dockersystemctl enable docker.service --开启开机自启

2021-04-01 17:19:08 381

原创 SpringCloud集成SpringCloudConfig分布式配置中心

前言SpringCloud全家桶中的分布式配置中心SpringCloudConfig, 它使用git来管理配置文件, 在修改配置文件后只需要调用一个接口就可以让新配置生效, 非常方便.一.快速开始SpringCloudConfig分为两部分, 服务端和客户端, 服务端是用来提供配置文件信息的, 而客户端是用来使用配置文件信息的, 我们接下来就开始集成.1.SpringCloudConfig服务端新建一个Module之后next, 完成项目创建, 工程目录是这样的, 别忘了impo

2021-03-18 15:07:06 220

原创 SpringCloud集成Hystrix服务保护

一.简介Hystrix是一套完善的服务保护组件, 可以实现服务降级, 服务熔断, 服务隔离等保护措施 使用它可以合理的应对高并发的情况 做到保护服务的效果二.发现问题有人可能会问 为什么要使用服务保护功能呢? 我的服务器明明跑的很好的... 好的 那这里 我就举个例子来说明一下 为什么要进行服务保护 设想这样一种情况 你的服务器由于用户量访问过大 而瘫痪 这样的例子不在少数 比如某宝双11活动或是12306过年抢票 都导致过网站崩溃 有的是不能进行访问, 有的是在那里一直转圈加载, 这样做显然是

2021-03-18 14:53:35 102

原创 springcloud负载均衡

一.简介通俗的讲 就是一个服务器 我们在开发中主要用于做反向代理与负载均衡功能 下面就跟着我们的镜头一起来看吧!二.安装Nginx官网:http://nginx.org/en/,自行安装nginx,安装成功之后,打开localhost:8080来访问一下看到如上图的样子说明Nginx已经启动成功了。接下来你有可能会有疑问 接下来我们用它做啥子呢?我在文章开头已经说过了Nginx主要实现两个功能反向代理和负载均衡三.开始使用1.反向代理什么是反向代理呢? 其实很好理解 就是通.

2021-03-18 14:45:37 102

原创 SpringCloud集成Zuul网关

一.简介网关顾名思义很好理解 就是控制网络请求出入的关卡 生活中参考海关 有些东西可以通行 但是有些国家严令禁止的东西 是过不去海关的。因为我们很好理解 网关就是做一下过滤或拦截操作 让我们的服务更加安全 用户访问我们服务的时候就要先通过网关 然后再由网关转发到我们的微服务。二.快速开始在SpringCloud全家桶中使用Zuul来搭建网关 下面我们就来创建一个网关吧!之后我们配置一下网关的配置文件server: #服务端口号 port: 8085spring: ap

2021-03-18 14:34:22 186

原创 搭建SpringCloud环境

一.什么是微服务就是把一整个后台项目拆分成多个模块, 每一个模块称作一个服务, 每个服务都可以独立运行, 这样做的好处是其中有一个服务挂掉后, 另外的服务不受影响, 这些服务使用接口相互通信, 减少了依赖和耦合。二.快速开始整个项目是由maven进行管理的, 依赖包就是我们开发时需要用到的第三方jar包, 也就是框架, 这里为什么什么也不选? 我说一下, 因为我们要做的是微服务, 所以框架结构为一个基座+多个子模块, 我们上面建立的就是基座, 你可以把它当成一个工作空间用途是管理子模块.

2021-03-18 14:27:41 298

原创 springboot集成elasticSearch,实现增删改查,(多个或单个字段)分页高亮显示

1、安装elasticSearch和ik分词器2、新增实体类package io.renren.modules.elasticsearch.entity;import com.fasterxml.jackson.annotation.JsonFormat;import lombok.Data;import org.springframework.data.annotation.Id;import org.springframework.data.elasticsearch.annotation

2021-03-04 15:44:54 687 2

原创 windows下安装elasticSearch、ik分词器

1、下载elasticSearch和ik分词器,官网上面下载太慢,这里贴出百度网盘下载链接链接:https://pan.baidu.com/s/1WQkbdqTAmMx0DZf9G4krnw提取码:fed2下载完成后,将elasticSearch解压到磁盘中打开config文件下的elasticesearch.yml文件,修改一下内容然后双击运行bin目录下的elasticsearch.bat文件打开浏览器,输入127.0.0.1:1994(...

2021-03-04 14:26:00 575 1

原创 mybatis resultMap collection 返回List<String>

一般情况下,利用mybatis 一对多使用collection,返回的是一个对象list,但是特殊情况下,只需要一个String类型的List。下面就是返回String类型List的resultMap<resultMap id="patientPDFMap" type="com.huimu.common.entity.vo.screen.PatientPDFVo"> <result column="patientId" property="patientId"/> .

2021-01-15 14:09:03 16258 2

原创 java 封装tree树形结构

treeNode源码public class TreeNode<T> implements Serializable { private static final long serialVersionUID = 1L; /** * 主键 */ private Long id; /** * 上级ID */ private Long pid; /** * 子节点列表 */ pri

2020-08-06 17:57:06 948

原创 解决 error: failed to push some refs to ‘https://github.com/mxp520/test-spring-cloud-base.git‘

在使用git对源代码进行push的到github时,可能会出现错误,如下图所示出现错误的主要原因是github中的README.md文件不在本地代码目录中可以通过如下命令进行代码合并【注:pull=fetch+merge]执行上面代码后可以看到本地代码库中多了README.md文件此时再执行语句 git push -u origin master即可完成代码上传到github...

2020-07-27 11:45:48 3676 1

原创 spring中@Transcation(事务)的运用及注意事项

一、什么是事务?事务,是指作为单个逻辑工作单元执行的一系列操作,结果只有成功和失败两种,要么全部成功,要么全都失败,及时成功了一部分,也视为失败,执行全部回滚操作二、事务的4个特性是什么原子性、一致性、持久性、隔离性三、spring支持的两种事务管理方式1、编程式事务2、声明式事务@Transcation注解,就属于声明式事务管理,声明式事务管理是建立在AOP之上的,其...

2020-04-29 13:54:30 614

原创 zookeeper+kafka windows环境下环境搭建

Zookeeper下载与安装下载zookeeper,可以去官网下载 修改配置文件解压下载下来的压缩包,将cfg文件夹下的zoo_sample.cfg文件重命名为zoo.cfg在压缩包解压目录下新增data文件夹,配置环境变量如果出现下面的问题是,由于安装jdk是exe文件安装,没有手动配置环境变量,只需要在bin目录下的zkEnv.cmd...

2020-04-27 10:50:50 189

原创 java 给图片添加水印(MultipartFile )

/** * * @param file 文件 * @param path 上传文件路径 * @param folder 保存文件的文件夹 * @return 返回文件路径 * @throws Exception */ public static String addWatermark(MultipartFile...

2020-04-21 10:01:39 1735 1

原创 JavaMailSender发送163邮件

import com.sun.istack.ByteArrayDataSource;import javax.activation.DataSource;import org.springframework.mail.SimpleMailMessage;import org.springframework.mail.javamail.JavaMailSender;import org...

2020-03-18 11:05:23 756 1

原创 java多线程 实例变量与线程安全

自定义线程类中的实例变量针对其他线程可以有共享和不共享之分。当每个线程都有给的实例变量时,就是变量不共享。共享数据的情况就是多个线程可以访问同一个变量,public class MyThread extends Thread{ private int count = 5; @Override public void run() { count--;...

2020-03-03 10:19:54 106

原创 利用JavaMailSender发送邮件,邮件名称过长,名称被截取的问题

话不多说,直接看代码,在启动类或者发送邮件的页面代码里面加上下面的代码System.setProperty("mail.mime.splitlongparameters","false")

2020-01-19 10:44:09 559

原创 常用sql语句

1、根据一个字段分组后,获取每组最新的一条数据SELECT * FROM table t RIGHT JOIN(SELECT MAX(TIME) maxtime FROM table GROUP BY id) c ON t.TIME=c.maxtime

2019-12-09 14:51:51 71

原创 按日期分组统计,补齐没有结果的日期,补0

在实际项目中,不免有数据分析模块,例如按时间分组,需要统计每天的数量,作为后端,可以在逻辑层进行处理,便利一边结果集,没有补0,也可以在数据层,查出来之后,直接就是想要的结果。下面介绍在数据层,直接获取已经处理好的数据。这里利用存储过程,往临时表里插入指定日期范围的所有日期。临时表结构如下:CREATE TABLE `calendar` ( `date` date NOT NUL...

2019-09-24 10:10:51 1792

原创 MYSQ主从复制(一主两从)+mycat读写分离

在MySQL中间件出现之前,对于MySQL主从集群,如果要实现其读写分离,一般是在程序端实现,这样就带来一个问题,即数据库和程序的耦合度太高,如果我数据库的地址发生改变了,那么我程序端也要进行相应的修改,如果数据库不小心挂掉了,则同时也意味着程序的不可用,而这对很多应用来说,并不能接受。在这里,我用三个实例组成MySQL主从集群,来验证MyCAT的读写分离功能。Mysql主从复制:ht...

2019-07-19 10:11:16 436

原创 windows10系统中实现mysql主从复制(一主多从)

主从复制应用场景MySQL 主从复制集群功能使得 MySQL 数据库支持大规模高并发读写成为可能,同时有效地保护了物理服务器宕机场景的数据备份。1、从服务器作为主服务器的实时数据备份。2、主从服务器实现读写分离,从服务器实现负载均衡。3、把多个从服务器根据业务重要性进行拆分访问。主从复制实战(一主多从)这里准备三台主机,没有条件,可以用虚拟机代替主服务器:192.168...

2019-07-17 14:43:46 1244 1

原创 使用Arthas更新线上jar包代码

在实际项目中,打包之后发现代码错误,要么重新打包,要么替换掉jar包中的class文件,但是这两种方法都需要停掉服务器,可能会造成一定的损失,下面介绍利用arthas来热更新jar包中的文件首先我们写一个测试接口,@RestController@RequestMapping("/test")public class testMain { @GetMapping("r...

2019-07-15 10:58:11 2201

原创 替换可执行文件Jar包中的class文件

在实际项目中,当项目打包成可执行文件后,发现参数写错了,第一反应就是重新打包,这样的话,如果打包时间过长,可能会浪费时间,现在我们可以使用命令,替换掉jar包中错误的class文件,这样就不需要重新打包==打完jar包之后,测试jar包,并打印日志在jar包目录,进入doc窗口,查看需要替换的class文件位置输入命令:jar tf jar包名称 | find "寻找的cla...

2019-07-15 10:26:42 4112

原创 从HttpServletRequest获取当前请求中的文件列表,解决前端无法传文件数组问题

public static List<MultipartFile> getMultipartFileList( HttpServletRequest request) { List<MultipartFile> files = new ArrayList<MultipartFile>(); try { ...

2019-07-12 11:56:35 2164

原创 Mybatis常见语法与问题

一、什么是Mybatis1、Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement语句等繁杂的过程。程序员直接编写原生态的sql,可以严格控制sql执行性能,灵活度高。2、Mybatis可以使用XML或注释来配置和映射原生信息,将POJO映射成数据库中的记录,避免了几乎所有的JD...

2019-07-11 09:02:01 215

原创 HashMap实现原理

HashMap实现了Map接口,所以它存储数据的方式是键值对形式,并允许null键和null值,其内元素是无序的,如果要保证有序,可以使用LinkedHashMap,HashMap是线程不安全的。HashMap中用到最多的方法就是get()和put(),当我们put一个键值对时,会事先调用key的hashCode方法,计算出BucketIndex值,但可能这个位置有多个元素,这样就会发生碰撞,...

2019-07-10 15:53:36 94

原创 SpringBoot自定义注解,实现AOP切面

此处就不解释AOP到底能做什么的了。废话不多说,直接上代码,看效果定义一个注解@Target(ElementType.METHOD) //使用位置(类,方法)@Retention(RetentionPolicy.RUNTIME) //加载到jvm里运行@Documentedpublic @interface MyAnnotation { String name() def...

2019-07-09 12:00:34 674

原创 springboot整合ActiveMQ两种模式

点对点模式:当生产者生产消息时,无论有多少个消费者,只有一个消费者能够接受到消息发布/订阅模式:当生产者生产(发布)消息时,所有的订阅者(消费者)都能接受到消息下载ActiveMq,然后双击运行浏览器输入http://127.0.0.1:8161,登录admin/admin,验证是否启动成功先引入jar包依赖<dependency> <groupI...

2019-07-09 11:10:46 736

原创 搭建sonar+sonar-scanner,代码审查环境

一、先决条件本地配置maven环境(必须3.x版本) 检测标准:终端输如:mvn -version,出现maven版本 下载SonarQube 官网下载地址:https://www.sonarqube.org/downloads/ 下载sonar-scanner官网下载地址:https://docs.sonarqube.org/display/SCAN/Analyzing+with...

2019-06-28 13:47:20 289

原创 mongoDB4.0添加用户权限

下面信息给自己做笔记,防止时间长,会忘记在mongo安装的bin目录,打开cmd,登录mongo,使用以下命令,创建用户db.createUser ( { user : “root” , pwd : “root” , roles : [ { role : “userAdminAnyDatabase” , db : “admin” }, “re...

2019-06-20 10:31:34 1020

Linux下安装wenlogic

详细的描述了如何在linux环境下通过命令行安装weblogic

2018-02-23

空空如也

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

TA关注的人

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