4 Janson_Lin

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 3w+

消息中间件 RabbitMq应用场景

一.异步处理场景:发送手机验证码,邮件传统古老处理方式如下图这个流程,全部在主线程完成,注册--->入库--->发送邮件--->发送短信,由于都在主线程,所以要等待每一步完成才能继续执行。由于每一步的操作时间响应时间不固定,所以主线程的请求耗时可能会非常长,如果请求过多,会导致IIS站点巨慢,排队请求,甚至宕机,严重影响用户体验。现在大多数的处理方式如下图这个做法是主线程只做耗时非常短的入库操作,发送邮件和发送短信,会开启2个异步线程,扔进去并行执行,主线程不管

2020-09-15 09:01:07

微信小程序:wx.switchTab传值和跳转

微信小程序有多种页面跳转以及传值方式。官方给出了navigateTo / redirectTo / switchTab / navigateBack / reLaunch ,这五种方式,其中navigateTo这个我有一篇博文中有讲到。我们今天就讲讲这个switchTab,剩下几个,后面在进行讲解。我们还是按照惯例,查看官方的文档,这里提到,跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面,也就是使用了其他方式跳转的页面会被关闭,直接打开tabBar 页面,这里还有一个坑就是

2020-09-14 10:37:02

POI excel添加数据有效性验证以及解决DataValidation超长的问题

背景业务功能的需要,要求要去生产一个带有数据校验的导入模板。了解工具XSSFDataValidationConstraint(XSSF数据有效性验证约束):创建约束的时候,可以指定数据类型,以及数据列。例如:String strFormula = hiddenSheetName + "!$"+colStr+"$1:$"+colStr+"$65535"; XSSFDataValidationConstraint constraint = new XSSFDat

2020-09-03 11:54:45

Java文件类操作【工具类】

上一篇博客【SMB协议的共享文件读写】刚刚出,有位朋友私信,有没有普通的文件类的操作。下面贴出一下自己以前整理过的一些文件类的操作。import java.io.*;import java.util.ArrayList;import java.util.Calendar;import java.util.Date;import java.util.HashMap;import java.util.HashSet;import java.util.List;/** * @ Author

2020-09-03 11:18:34

SMB协议的共享文件读写

背景介绍一、SMB协议SMB协议是基于TCP-NETBIOS下的,一般端口使用为139,445。服务器信息块(SMB)协议是一种IBM协议,用于在计算机间共享文件、打印机、串口等。SMB 协议可以用在因特网的TCP/IP协议之上,也可以用在其它网络协议如IPX和NetBEUI 之上。  SMB 一种客户机/服务器、请求/响应协议。通过 SMB 协议,客户端应用程序可以在各种网络环境下读、写服务器上的文件,以及对服务器程序提出服务请求。此外通过 SMB 协议,应用程序可以访问远程服务器端的文件、以

2020-09-03 11:06:09

微信小程序:自定义button分享

这是一个放在“我的”页面中通过自定义的button用于分享微信小程序的小demo,效果图如下:button-shareminiApp.gif.wxml<view class='share' bindtap='toShare'> <view class='menu-container'> <image class='menu-icon' src='../../images/share (2).png'></image> .

2020-08-31 11:30:19

带你玩转RestTemplate

在微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端。我们可以使用JDK原生的URLConnection、Apache的Http Client、Netty的异步HTTP Client, Spring的RestTemplate。但是,用起来最方便、最优雅的还是要属Feign了。这里介绍的是RestTemplate。什么是RestTemplate?RestTemplate是Spring提供的用于访问Rest服务的客户端,RestTemplate提供了多种便捷访问远

2020-08-31 11:15:28

微信小程序:wx.navigateTo传值和跳转

背景博主是一个后端开发工程师,放下前端已经有很长一段时间了,最近需要开发一个微信小程序,决定还是有捡起自己的前端知识。官方文档一般我们开发都是回去找官方的开发文档,那里才是一手的资料。(传送门)wx.navigateTo(Object object)保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面。使用wx.navigateBack可以返回到原页面。小程序中页面栈最多十层。参数Object object属性 类型 默认值 必填...

2020-08-25 16:14:00

你知道 volatile 关键字吗

volatile关键字基本介绍volatile可以看成是synchronized的一种轻量级的实现,但volatile并不能完全代替synchronized,volatile有synchronized可见性的特性,但没有synchronized原子性的特性。可见性即用volatile关键字修饰的成员变量表明该变量不存在工作线程的副本,线程每次直接都从主内存中读取,每次读取的都是最新的值,这也就保证了变量对其他线程的可见性。另外,使用volatile还能确保变量不能被重排序,保证了有序性。

2020-08-17 16:13:06

CommandLineRunner或者ApplicationRunner接口

前言CommandLineRunner、ApplicationRunner 接口是在容器启动成功后的最后一步回调(类似开机自启动)。CommandLineRunner接口CommandLineRunner官方doc:Interface used to indicate that a bean should run when it is contained within a SpringApplication. Multiple CommandLineRunner beans can b

2020-07-24 10:16:50

Nginx Window版教程

一、Nginx简介Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。它也是一种轻量级的Web服务器,可以作为独立的服务器部署网站(类似Tomcat)。它高性能和低消耗内存的结构受到很多大公司青睐,如淘宝网站架设。先下载直接去官网nginx.org分别有Linux和Windows两个版本点击后就会下载,下载完成后开始安装,其实官网已经告诉了如何安装,右侧“documentation -> nginx wind

2020-07-23 09:44:26

Linux自定义登录成功提示信息

背景一般我们再企业中,会涉及很多服务器,而且再一台服务器中,我们部署的项目的信息也会很多,久而久之,信息越来越来,会给我们自己带来一定的负担。这里我们就采取登录成功后,自定义输出一些辅助信息,这样,我们再服务器上的运维效率也会相对提高。操作修改/etc/motdvim /etc/motd...

2020-07-20 10:32:25

教你如何设置JMeter压力测试工具中文版

安装的Jmeter默认是英文版,对于英语不大好的人来说,使用英文版软件是件令人头疼的事情,那么如何将英文版设置为中文版呢?这里给提供两种解决方案方法一:一次性打开Jmeter找到 options ->choose language ->chinese,根据自己需要选择简体繁体设置完成,界面就变成中文版的了~缺点:一次性下次打开时会恢复成英文版,每次都需要重新设置中文版 ,比较麻烦~方法二:永久性找到Jmeter的安装目录在安装目录的bin目录中找到

2020-07-19 17:54:57

手把手教你使用命令替换jar包中的class文件

一、背景在有时候,我们没有对应的源码,但是需要去改动我们所知jar包中的内容,这时,我们可以通过修改jar包中的class文件,从而使改包中的功能满足我们的开发需求。二、准备准备好你需要的jar包以及需要替换的 .class文件,我这里的class是通过解压jar包出来之后,创建了它们所对应的类之后,进行的编译,现在要替换这个jar包中的两个class文件三、了解jar的命令-c 创建一个jar包-t 显示jar中的内容列表-x 解压jar包-m 指定manifest.mf文

2020-07-14 15:24:55

带你快速上手Optional

1.前言相信不少小伙伴已经被java的NPE(Null Pointer Exception)所谓的空指针异常搞的头昏脑涨,有大佬说过“防止 NPE,是程序员的基本修养。”但是修养归修养,也是我们程序员最头疼的问题之一,那么我们今天就要尽可能的利用Java8的新特性 Optional来尽量简化代码同时高效处理NPE(Null Pointer Exception 空指针异常)2.认识Optional并使用简单来说,Opitonal类就是Java提供的为了解决大家平时判断对象是否为空用 会用 null

2020-07-07 09:46:22

告诉你Java 集合框架

Java 集合,也称作容器,主要是由两大接口 (Interface)派生出来的:Collection 和 Map顾名思义,容器就是用来存放数据的。那么这两大接口的不同之处在于: Collection 存放单一元素; Map 存放 key-value 键值对。 就是单身狗放 Collection 里面,couple 就放 Map 里。(所以你属于哪里?学习这些集合框架,我认为有 4 个目标: 明确每个接口和类的对应关系; 对每个接口和类,熟悉常用的 API...

2020-07-06 09:55:05

【Nacos】配置中心(三)

Nacos配置中心操作步骤:一.进入nacos控制台界面,在”配置列表”点击”加号按钮”新建配置二.在”新建配置”页新建配置相关概念可参考:https://nacos.io/zh-cn/docs/concepts.html三.发布配置四.查看”配置列表”五.编码阶段1.pom<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM.

2020-06-29 16:20:23

JAVA 泛型中的通配符 ’T,E,K,V,?‘是什么

前言Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许开发者在编译时检测到非法的类型。泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。泛型带来的好处在没有泛型的情况的下,通过对类型 Object 的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开发者对实际参数类型可以预知的情况下进行的。对于强制类型转换错误的情况,编译器可能不提示错误,在运行...

2020-06-29 09:55:37

Java轻松的AES加密解密工具

1、背景在开发过程中,设置公用第三方可调用接口,如果通过http发起请求,参数等会是明文的方式,这里为了防止被爆破开放接口,我这里采用了明文加密传输的方式。2、AES是什么高级加密标准(英语:Advanced Encryption Standard,缩写:AES),是一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。那么为什么原来的DES会被取代呢,,原因就在于其使用56位密钥,比较容易被破解。而AES可以使用128、192、和256位密钥,并且用128位分组

2020-06-29 09:52:02

教你MyBatis逆向工程中的Mapper接口以及Example使用

mapper接口中的方法解析(逆向工程插件传送门)方法 功能说明 int countByExample(UserExample example) 按条件计数 int deleteByPrimaryKey(Integer id) 按主键删除 int deleteByExample(UserExample example) 按条件删除 String/Integer insert(User record) 插入数据,返回值的ID String/Integer

2020-06-15 14:03:04

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv3
    勤写标兵Lv3
    授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 原力探索
    原力探索
    参与《原力计划【第二季】——打卡挑战》的文章入选【每日精选】的博主将会获得此勋章。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 原力新人
    原力新人
    在《原力计划【第二季】》打卡挑战活动中,成功参与本活动并发布一篇原创文章的博主,即可获得此勋章。
  • 分享学徒
    分享学徒
    成功上传1个资源即可获取