阿里巴巴fastjson中对象转Sting字符串时,自动将首字母大写转小写的最佳解决方案

前言:fastjson由于高性能与简洁的API,受到了国内用户的欢迎,但是如果你碰到一个特殊的场景:java对象转String字符串时如何对象的字段首字母的大写会自动转成小写,这个设计本身没有什么问题,但是由于业务的情况不一样,通常需要就需要原始的field,不需要大小写,本人就是因为第三方接口的首字母必须是大写才遇到了这种情况,下面来说说解决方案。解决方案方案一:在getting方法中使用注解 @JSONField(name="YouName")适合场景:一个对象的只有少部分字段fie
分类: 其他 发布时间: 01-30 23:41 阅读次数: 0

IntelliJ IDEA中超实用的设置

1.自动删除不需要的包引用File -> Settings -> Editor -> General -> Auto Import -> 右侧窗口java 下勾选☑️Optimize imports on the fly// 未完待续。。。
分类: 其他 发布时间: 01-30 23:40 阅读次数: 0

JAVA中BigDecimal的小数位取整策略(Rounding mode)保留小数你真的懂吗

ROUND_DOWN直接舍去后面的小数例如:new BigDecimal("1.12087").setScale(3,BigDecimal.ROUND_DOWN); -> 1.120ROUND_UP 直接舍去后面的小数位,同时保留小数位的最后一位+1)例:new BigDecimal("1.12087").setScale(3,BigDecimal.ROUND_UP); -> 1.121ROUND_HALF_UP 常说的四舍五入,当舍弃部分大于等于>...
分类: 其他 发布时间: 01-30 23:40 阅读次数: 0

JAVA实现平方根公式算法,超简单看不懂算我输

import java.math.BigDecimal;public class SquareRoot { //精确小数位数,越精确,效率越低 public static int SCALE = 5; /**精确格式 如:String.format("0.%05d",1) = 0.00001*/ private static Double SCALE_DOUBLE = Double.valueOf(String.format("0.%0"+SCALE+"d",1)); pu...
分类: 其他 发布时间: 01-30 23:40 阅读次数: 0

Intellij IDEA中非常实用又容易忘的快捷键整理

在Intellij IDEA中有一些快捷键使用频率没有那么高,但是有非常有用的快捷键。每当要用到这些快捷键的时候就记不住了,下面来一起整理一下Ctrl +W :智能选取,可连续按Alt + 鼠标 :列编辑(一直按住鼠标左键向下或向上移动光标,非常方便)Ctrl + J :智能模板(内含非常丰富的模板,这些模板都可以通过键盘输入来确定)Ctrl + F12 : 列出当前类的所有方法Shift + F6 :变量名或者类名重命名Ctrl + Shift + Backsp...
分类: 其他 发布时间: 01-30 23:40 阅读次数: 0

nginx与keepalived+tomcat高可用搭建

安装环境准备yum -y install pcre-devel opemssl opemssl-develnginx安装解压 tar -zxvf nginx-1.14.0.tar.gz 2. 配置安装 cd nginx-1.14.0 ./configer make && make install3. 启动与关闭 cd 安装目录 ...
分类: 其他 发布时间: 01-30 23:39 阅读次数: 0

keepalived 安装与配置(centos6.5版本nginx)

准备1.环境 centos6.52.文件 keepalived-1.2.13.tar.gz3.环境准备 下载相关依赖 yum -y install pcre-developenssl openssl-devel4.上传安装包至/usr/local/安装1.解压tar -zxvfkeepalived-1.2.13.tar.gz2.进入目录cd keepalived-1.2.133.配置./configure4.编译安装makemake...
分类: 其他 发布时间: 01-30 23:39 阅读次数: 0

Nginx添加至服务并设置开机启动

环境:centos6.5,本人nginx安装路径:/usr/local/nginx/1.编写nginx启动脚本vim ngin.sh脚本如下(纯手敲,可能有误):#!/bin/bash# chkconfig: 2345 30 30 if [ $1 == "start" ]then if [ -f /user/local/nginx/logs/nginx.pid ] then echo "failed,nginx is running"
分类: 其他 发布时间: 01-30 23:39 阅读次数: 0

linux新增用户修改密码账号锁定等用户常见操作

新增用户新建一个用户,不指定用户组group# 1 默认新建一个test组,建一个对应的用户主目录/home/test/useradd test#2 创建一个系统用户 不会创建/home/test/目录useradd -r test#3 创建用户并指定组useradd -g tests test修改密码或账号锁定 # 修改密码,然后按照提示操作即可passwd test#锁定账号passwd -l test#解锁账号passwd -u test .
分类: 其他 发布时间: 01-30 23:39 阅读次数: 0

高效理解排序之——冒泡排序-含JAVA实现(简洁明了,非无脑COPY)

前言冒泡排序(Bubble Sort),像水底的气泡一样不断往上冒,谁的能量大谁就最出人头地。基本思路(从小到大)从第一个元素开始与相邻的下一个元素比较大小,如果元素大于下一个相邻的元素就交换位置;接着从第二个元素开始向下一个元素开始比较,如果...(如果上面的文字你没看懂也没关系,看下面的图解)图解...
分类: 其他 发布时间: 01-30 23:39 阅读次数: 0

高效理解排序之——插入排序-含JAVA代码(简洁明了,非无脑COPY)

前言插入排序(Insertion Sort)大家应该都玩过扑克牌斗地主(不是欢乐斗地主啊),最喜欢除了炸弹外就是5张以上的顺子了(我们家乡话叫链子)。在每起一张牌的时候你总是能够准确的插入到一个有顺序的位置,这种按牌的大小插入到一个有序的序列中就是插入排序的思想。基本思路默认第一个元素就是有序的,选择第二个元素与第一个元素比较,第二个元素小于第一个元素就与之交 换位置。这样前面两个元素就是有序的了。 用第三个元素依次与前面二个有序的元素比较。如果小于之前的元素就交换位置,这样前面三个元素
分类: 其他 发布时间: 01-30 23:38 阅读次数: 0

高效理解排序之——选择排序-含JAVA代码(简洁明了,非无脑COPY)

前言选择排序(Selection Sort),(从小到大的排序)每次选择一个最值放入第一个位置,个人认为原理比冒泡排序的原理更好理解。基本思路在所有的元素中选择一个最小的元素,与第一个位置的元素交换位置。 在剩下的元素中选择一个最小的元素与第二个元素交换位置。 重复...(如果上面的思路描述你没看懂也没关系,看下面的图解)图解第一轮:在6个元素中找到最小的元素1,与第一个位置的元素交换位置​​​​如何找出最小的元素?第一个元素与相邻的后一个元素比较大小(2<3)。找出两者中
分类: 其他 发布时间: 01-30 23:38 阅读次数: 0

Centos7虚拟机设置静态网络IP

查看主机的网络信息1.进入目录:cd /etc/sysconfig/network-scripts查看文件名义ifcfg-xxxx的文件。如:ifcfg-ens33的文件(可能文件名不是这个)2.修改修改重点:IPADDR=192.168.1.13 此处前三位必须与主机保持同一个网段 broadcast=192.168.1.255 此处前三位必须主机前三位保持一致,后面一位255结尾即可 GATEWAY=192.168.1.1 与主机的默认网关相同 DNS1=22..
分类: 其他 发布时间: 01-30 23:38 阅读次数: 0

解决ideal控制台乱码的问题-所有的都设置成UTF8了还是乱码?怎么调都不行可能不是idea的锅

分清楚是tomcat的控制台信息,还是你的输出日志信息乱码:如果你尝试了其他人的帖子还没有解决问题,看看是否是如下图这样?那就是tomcat的锅再tomcat安装目录/config/logging.properties文件中添加(别把这个放到linux上去哦)java.util.logging.ConsoleHandler.encoding = GBK...
分类: 其他 发布时间: 01-30 23:37 阅读次数: 0

springrabbitmq中使用@RabbitListener实现监听消息-传统spring-springmvc项目整合rabbitmq

前言现在java项目使用rabbitmq大多都使用spring-boot,但由于有些传统的Springmvc项目中需要改造引入rabbitmq,这一块的资料比较少,质量也差,官方文档也。。。,本人整理由自己学习也共给大家参考,请大家根据实际情况选择使用。使用配置手动监听简单,百度下资料也有很多。有强迫症的人肯定接受不了这种每次增加一个队列都需要改一下配置文件的傻瓜式操作。本章也只讲如何在传统Spring项目中(非Springboot)使用@RabbitListener注解来实现监听如何使用@
分类: 其他 发布时间: 01-30 23:37 阅读次数: 0

Linux中centos7.9安装RabbitMQ(单机版)版本3.8.9

前言本人安装版本rabbitmq版本3.8.9,操作系统centos7.9,每个人的机器与版本不一致可能安装过程张遇到的错误也不尽相同,这里仅供大家参考。下载1.官网下载rpm包,下载符合直接的版本,我这里是centos7,最新版本3.8.9下载地址:https://www.rabbitmq.com/install-rpm.html#downloads2.下载erlang安装包3.8.9版本的推荐erlang是23.x,最小22.3版本(注意一定要下载对版本,发现安装的时候提示的
分类: 其他 发布时间: 01-30 23:37 阅读次数: 0

springmvc 接收前端页面ajax数组/对象等复杂对象参数的多种方式汇总(全)

<html><body><h2>测试接收前端各种参数</h2> 测试接收前端各种参数 <div><button onclick="fun1()">测试1</button></div> <div><button onclick="fun2()">测试2</button></div> <div><butto.
分类: 其他 发布时间: 01-30 23:37 阅读次数: 0

程序设计表示方法--1

题目名称:“三天打鱼两天晒网”题目内容:某人从2010年1月开始“三天打鱼两天晒网”,请问这个人在以后的某一天是打鱼还是晒网。算法设计:1、输入日期:年月日2、判断日期是否合法,不合法则输入合法日期,合法继续下一步3、判断是否为闰年4、为闰年咋额在总天数加366,否则加365;5、计算相隔的总天数(需要注意的闰年二月29天,平年28天)6、用计算出的相隔的总天数对...
分类: 其他 发布时间: 01-30 23:36 阅读次数: 0

C语言_求n个数的最大公约数和最小公倍数

一、题目名称:求N个数的最大公约数和最小公倍数二、算法设计:基本要求:1.构造辗转相除法来求两个数的最大公约数的函数;2.构造根据求最大公约数来求两个数的最小公倍数的函数;3.根据公式,可以知道两个数a,b的乘积等于他们的最大公约数和最小公倍数的积,所以假设他们的最大公约数为c,最小公倍数是d,则d=a*b/c.4.构造求n个数的最大公约数的函数和最小公倍数的函数...
分类: 其他 发布时间: 01-30 23:36 阅读次数: 0

C语言_最大公约数常用算法

四种方法分别为:辗转相除法、穷举法,更相减损法、Stein算法一、辗转相除法1、函数嵌套调用流程图:2、函数递归调用的程序流程图:3、两个数的乘积=这两个数的最小公倍数*最大公约数二、穷举法(利用数学定义)穷举法(也叫枚举法)穷举法求两个正整数的最大公约数的解题步骤:从两个数中较小数开始由大到小列举,直到找到公约数立即中断列举,得到的公约数便是最大公约数 。①定义1:对两个正整...
分类: 其他 发布时间: 01-30 23:36 阅读次数: 0