备忘
文章平均质量分 54
yimcarson
Javaee software engineer.
展开
-
AES加密解密long型id
Java实现的一个生成系统内唯一且无法被伪造的订单号的工具,基本思路是对long型自增的id加密解密,加密算法是AES,需要结合其他encode/decode方法。AESUtil加密解密的工具类import javax.crypto.BadPaddingException;import javax.crypto.Cipher;import javax.crypto.IllegalBlockSizeException;import javax.crypto.NoSuchPaddingExcept原创 2020-08-19 11:02:08 · 1201 阅读 · 0 评论 -
谷歌身份验证器二维码
otpauth://totp/ACCOUNT?secret=SECRET&issuer=NAMEACCOUNT账户名称SECRET密钥NAME发布者、公司、网站的名称e.g.otpauth://totp/yimcarson?secret=VIABPOEXKBBMLZD2&issuer=CSDN原创 2020-07-24 23:11:53 · 9207 阅读 · 0 评论 -
Java生成纳秒时间戳
记一次生成高精度时间戳,类似与.net的时间戳,码着备忘。long timestamp = System.currentTimeMillis() * 1000000L + System.nanoTime() % 1000000L;System.currentTimeMillis()生成的毫秒时间戳,有时并不能满足需求,如在有并发的系统内将时间戳作为唯一标示。System.nanoTime()API的本意是用来计算时间差的,生成的纳秒时间戳虽然不能作为精确的时间戳,但是生成的纳秒值可以为我所用。10.原创 2020-05-14 14:19:17 · 10576 阅读 · 0 评论 -
Java实现谷歌身份验证器
生成一个随机秘钥 public static String generateSecretKey() throws NoSuchAlgorithmException { SecureRandom sr = SecureRandom.getInstance("SHA1PRNG"); sr.setSeed(Base64.decodeBase64("fooabrbal...原创 2020-02-15 10:57:31 · 4014 阅读 · 0 评论 -
git转移到新的仓库
git remote rename origin old-origingit remote add origin git@git.github.com:yimcarson/***.gitgit push -u origin --allgit push -u origin --tags原创 2019-10-31 10:58:43 · 166 阅读 · 0 评论 -
nexux安装与配置
nexux安装与配置安装nexux下载Nexus Repository Manager OSS 3.x,官网地址https://www.sonatype.com/download-oss-sonatype,复制下载链接,使用wget下载wget https://sonatype-download.global.ssl.fastly.net/repository/repositoryManag...原创 2019-10-24 08:05:34 · 949 阅读 · 0 评论 -
MacOS微信双开
实现方式,启动两次微信线程。使用快捷方式无法启动第二个线程,正确的打开方式如下:退出现在登录的微信在程序扩展坞右键微信退出。编写command文件在桌面或者其他其他方便访问的路径下新建一个.command文件,如WeChatStart.command,用文本编辑器打开,输入下面这行代码(命令),其实就是微信可执行程序文件WeChat的全路径。/Applications/WeChat....原创 2018-12-28 12:36:57 · 1315 阅读 · 0 评论 -
macOS终端字体颜色DIY教程
换了mac book后经常用Terminal登录Linux系统,强迫症的趋势下,决定修改mac终端的主题,目标是看起来跟Ubuntu一样。修改终端的偏好设置打开终端的偏好设置,选一个喜欢的主题,Pro是预设的黑白配,字体我喜欢 Menlo。添加变量编辑~/.bash_profile,添加三个变量vim .bash_profileexport LS_OPTIONS='--co...原创 2019-02-19 13:43:22 · 1668 阅读 · 0 评论 -
Spring Boot 部署脚本
写在前面的话这里是一个在Linux环境上,使用Git+Maven实现Spring Boot项目的快捷部署和启动的脚本,推荐给JavaEE开发和运维同学们。干货在项目跟路径上新建一个 deploy.sh文件vim deploy.sh把这段脚本改吧改吧黏贴进去dir=/data/demo-apiport=8899project=demo-apiversion=1.0.0.B...原创 2019-05-23 14:45:59 · 546 阅读 · 0 评论 -
Libra链节点安装
Libra节点安装官方文档https://developers.libra.org/docs/my-first-transactionclone源码git clone https://github.com/libra/libra.git安装Libra Corecd libra./scripts/dev_setup.sh提示需要安装一些依赖 build Libra Core....翻译 2019-06-25 11:28:55 · 727 阅读 · 0 评论 -
方法封装如何使用带范型的集合
public static <T> List<T> foo(Class clazz, /* 其他参数*/) throws IllegalAccessException, InstantiationException { List<T> result = new ArrayList<>(); T item = c...原创 2019-09-28 00:26:19 · 412 阅读 · 0 评论 -
国际区号+手机号正则校验
项目中设计国际短信的发送,就需要检查国际区号与手机号是否匹配,也要校验手机号是否正确从而决定是否调用短信通道这里是一个存储一些手机号正则表达式的枚举public enum MobileRegularExp { CN("中国","^(\\+?0?86\\-?)?1[345789]\\d{9}$"), TW("台湾","^(\\+?886\\-?|0)?9\\d{8}$"),...原创 2018-12-26 18:39:29 · 27091 阅读 · 1 评论 -
Linux环境安装maven
下载官网下载地址wget http://mirrors.ocf.berkeley.edu/apache/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.tar.gz解压tar -zxvf apache-maven-3.6.0-bin.tar.gz移动到/usr/local/mv apache-maven-3.6.0...原创 2018-12-07 19:30:04 · 11863 阅读 · 0 评论 -
版本号命名规则
版本号的格式为 X.Y.Z(又称 Major.Minor.Patch),递增的规则为:X 表示主版本号,当 API 的兼容性变化时,X 需递增。Y 表示次版本号,当增加功能时(不影响 API 的兼容性),Y 需递增。Z 表示修订号,当做 Bug 修复时(不影响 API 的兼容性),Z 需递增。详细的规则如下:X, Y, Z 必须为非负整数,且不得包含前导零,必须按数值递增,如 1....转载 2018-11-09 11:18:45 · 45925 阅读 · 5 评论 -
Windows环境安装MySQL server
从MySQL官网下载安装包,下载Community Server的zip即可,如mysql-5.7.23-winx64.zip,也可以下载Installer版,这里说的是Community Server版。把下载好的zip包解压到一个合适的位置,本文给出的命令是基于解压在D:\mysql-5.7.23-winx64下。在安装之前检测一下当前环境是否有VS环境,没有的话去微软官网下一个Visua...原创 2018-11-09 17:57:26 · 33517 阅读 · 0 评论 -
Windows环境使用bat方式快速修改IP
Windows环境中一个使用bat文件方式快速修改IP原创 2018-11-10 00:08:26 · 21329 阅读 · 1 评论 -
Ethereum节点安装
基于Ubuntu安装安装依赖apt-get install software-properties-common python-software-properties获取源add-apt-repository -y ppa:ethereum/ethereum安装apt-get updateapt-get install ethereum基于Cnetos安装准...原创 2018-11-07 12:13:09 · 7300 阅读 · 0 评论 -
Markdown简介&语法
主要内容Markdown是什么?谁创造了它?为什么要使用它?怎么使用?谁在用?尝试一下正文1. Markdown是什么?Markdown是一种轻量级标记语言,它以纯文本形式(易读、易写、易更改)编写文档,并最终以HTML格式发布。Markdown也可以理解为将以MARKDOWN语法编写的语言转换成HTML内容的工具。2. 谁创造了它?它由Aaron Swartz和Joh...转载 2018-11-10 13:44:49 · 33312 阅读 · 0 评论 -
RSA加密工具类(Java)
干货package com.hht.exchange.utils;import javax.crypto.Cipher;import java.security.*;import java.security.spec.PKCS8EncodedKeySpec;import java.security.spec.X509EncodedKeySpec;import java.util.Ba...原创 2018-11-14 18:58:36 · 39061 阅读 · 4 评论 -
SpringMVC接收文件
场景前端或APP端设置头像或发表评论等功能,需要服务端接收图片,然后保存到nginx代理路径,返回前端图片的URL。form表单提交前段使用form表单提交时,服务端使用org.springframework.web.multipart.MultipartFile接收。@Controller@RequestMapping("/user")public class UserControl...原创 2018-12-04 12:34:19 · 18682 阅读 · 0 评论 -
macOS环境中用终端命令快速打开Visual Studio Code
vscode作为一个轻量级的IDE,用途很多,有些时候从别的项目复制一段代码,但是用Finder找的话,包的路径太长了不方便;用IDEA打开的话,又是校验又是载入Maven慢的很。此时,可以用vscode打开,我的vscode没装什么插件,不能用来code,但是启动很快,用来看一看还是可以的。方案给vscode加一个软连接cd /usr/local/bin/sudo ln -s "/...原创 2018-12-04 14:10:19 · 1447 阅读 · 0 评论 -
使用Atom编写以太坊智能合约
以太坊智能合约开发环境安装库创建项目编写合约编译合约部署合约呼叫合约结语安装库使用nodejs安装ethereumjs-testrpc和truffle。ethereumjs-testrpc是开发时用到的模拟以太坊网络,如果有私链或者其他节点服务器可以不安装;truffle是solidity开发比较主流的一个框架。npm install -g ethereumjs-testrpc truffl...原创 2018-11-27 17:56:01 · 21657 阅读 · 0 评论 -
maven私有服nexux安装与配置&maven项目发布jar包到nexux
nexux安装与配置安装nexux下载Nexus Repository Manager OSS 3.x,官网地址https://www.sonatype.com/download-oss-sonatype,复制下载链接,使用wget下载wget https://sonatype-download.global.ssl.fastly.net/repository/repositoryManag...原创 2018-12-05 13:26:43 · 14266 阅读 · 0 评论 -
java-ipfs-api.jar的食用方法
引入java-ipfs-api.jar从仓库引入在pom.xml中添加仓库 &lt;repositories&gt; &lt;!-- 阿里云镜像,不需要的可以忽略 --&gt; &lt;repository&gt; &lt;id&gt;public&lt;/id&gt; &am原创 2018-11-06 19:28:07 · 35332 阅读 · 1 评论