我是靠谱客的博主 天真楼房,最近开发中收集的这篇文章主要介绍工具类|Java生成商城常用的核销码,长度12位~,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

对于一些商城类项目而言,有一些需要核销码的地方,其实核销码有很多种生成方式,今天用一个比较简单的方式生成随机核销码,7位的随机数,如果是小商城,在一天内基本上不会有重复的,如果想校验重复的,可以将每次生成的核销码放到缓存里面,然后新生成的核销码和缓存中的核销码进行校验,重复的话再重新生成一个即可。
思路其实很简单,通过两位数的年,例如2021年取21,三位数的天,例如1月1日是一年的第一天,可以取成001,然后再加上随机数(长度可以自己定义)

上代码:

package com.fengchen.verifycode;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 生成核销码的方法,生成规格为:两位数年 + 当前是今年第几天 + 7位随机数
 * 如果生成的核销码较多,可以通过缓存或者redis进行当天的核销码是否重复判断
 * 
 * @author dafei
 *
 */
public class VerifyCodeGen {

	/**
	 * 生成订单商品核销码
	 * 
	 * @return
	 */
	public static String genVerifyCode() {
		String year = new SimpleDateFormat("yy").format(new Date());
		String day = String.format("%tj", new Date());
		double random = Math.random() * 10000000;
		while (random < 1000000) {
			random = Math.random() * 10000000;
		}
		int intRandom = Double.valueOf(random).intValue();
		String verifyCode = year + day + intRandom;
		return verifyCode;
	}
	
	public static void main(String[] args) {
		System.out.println(genVerifyCode());
	}

}

代码中有一句:
String.format("%tj", new Date());
是获取现在是今年的第几天。长度是3位。

推荐下大飞做的一个Java技术类公众号“Java实战宝典”,主要是收集一些日常工作中常用的工具类,一些实战项目的教学及一些疑难问题整理。
在这里插入图片描述
一个干货满满的公众号,后面会增加越来越多的实例教程。

最后

以上就是天真楼房为你收集整理的工具类|Java生成商城常用的核销码,长度12位~的全部内容,希望文章能够帮你解决工具类|Java生成商城常用的核销码,长度12位~所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(61)

评论列表共有 0 条评论

立即
投稿
返回
顶部