MyEclipse for Spring 8.5序列号算法

简介:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
import  java.text.DecimalFormat;
import  java.text.NumberFormat;
import  java.text.SimpleDateFormat;
import  java.util.Calendar;
public  class  CalSn {
     private  static  final  String LL =  "Decompiling this copyrighted software is a violation of both your license agreement and the Digital Millenium Copyright Act of 1998 (http://www.loc.gov/copyright/legislation/dmca.pdf). Under section 1204 of the DMCA, penalties range up to a $500,000 fine or up to five years imprisonment for a first offense. Think about it; pay for a license, avoid prosecution, and feel better about yourself." ;
     public  String getSerial(String userId, String type) {
         NumberFormat nf =  new  DecimalFormat( "000" );
         Calendar cal = Calendar.getInstance();
         cal.add(Calendar.YEAR,  3 );
         cal.add(Calendar.DAY_OF_YEAR, - 1 );
         String licenseNum = nf.format(( int ) (Math.random() *  1000 ));
         String expTime =  new  StringBuilder( "-" )
                 .append( new  SimpleDateFormat( "yyMMdd" ).format(cal.getTime()))
                 .append( "0" ).toString();
         String need =  new  StringBuilder(userId.substring( 0 1 )).append( "Y" )
                 .append(type).append( "-100" ).append(licenseNum).append(expTime)
                 .toString();
         String dx =  new  StringBuilder(need).append(LL).append(userId)
                 .toString();
         int  suf =  this .decode(dx);
         String code =  new  StringBuilder(need).append(String.valueOf(suf))
                 .toString();
         return  this .change(code);
     }
     private  int  decode(String s) {
         int  i;
         char [] ac;
         int  j;
         int  k;
         i =  0 ;
         ac = s.toCharArray();
         j =  0 ;
         k = ac.length;
         while  (j < k) {
             i = ( 31  * i) + ac[j];
             j++;
         }
         return  Math.abs(i);
     }
     private  String change(String s) {
         byte [] abyte0;
         char [] ac;
         int  i;
         int  k;
         int  j;
         abyte0 = s.getBytes();
         ac =  new  char [s.length()];
         i =  0 ;
         k = abyte0.length;
         while  (i < k) {
             j = abyte0[i];
             if  ((j >=  48 ) && (j <=  57 )) {
                 j = (((j -  48 ) +  5 ) %  10 ) +  48 ;
             else  if  ((j >=  65 ) && (j <=  90 )) {
                 j = (((j -  65 ) +  13 ) %  26 ) +  65 ;
             else  if  ((j >=  97 ) && (j <=  122 )) {
                 j = (((j -  97 ) +  13 ) %  26 ) +  97 ;
             }
             ac[i] = ( char ) j;
             i++;
         }
         return  String.valueOf(ac);
     }
     public  static  void  main(String[] args) {
         String userId =  "qiang" ;
         CalSn myeclipsegen =  new  CalSn();
         String res = myeclipsegen.getSerial(userId,  "E3MS" );
         System.out.println( "Serial:"  + res);
     }
}


运行结果:

运行结果:
运行:D:\Java\jdk1.8.0\bin\java.exe CalSn
Serial:dLR8ZF-655880-6151685350542957
输出结束,返回值是[0].

所以序列号为:
qiang
dLR8ZF-655880-6151685350542957

本文转自 梦朝思夕 51CTO博客,原文链接:http://blog.51cto.com/qiangmzsx/1221748



相关文章
|
4月前
|
负载均衡 算法 Java
Spring Cloud全解析:负载均衡算法
本文介绍了负载均衡的两种方式:集中式负载均衡和进程内负载均衡,以及常见的负载均衡算法,包括轮询、随机、源地址哈希、加权轮询、加权随机和最小连接数等方法,帮助读者更好地理解和应用负载均衡技术。
107 2
|
Java 测试技术 Android开发
|
3月前
|
Java 应用服务中间件 Android开发
Eclipse创建Spring项目
本文介绍了在Eclipse中创建Spring项目的步骤,包括如何配置Tomcat服务器、创建项目、部署项目到Tomcat以及添加Spring框架所需的JAR包。
90 1
Eclipse创建Spring项目
|
5月前
|
算法 NoSQL Java
spring cloud的限流算法有哪些?
【8月更文挑战第18天】spring cloud的限流算法有哪些?
104 3
|
8月前
|
算法 Java Spring
用 Spring Boot 实现秒杀系统的流量控制:计数器算法与令牌桶算法
用 Spring Boot 实现秒杀系统的流量控制:计数器算法与令牌桶算法
160 0
|
8月前
|
消息中间件 算法 Java
三面“有赞”Java岗斩获offer:Spring+JVM+并发锁+分布式+算法
年末离职,年初为面试也筹备挺长一段时间,找了不少复习资料,刷了很多题在网上投了很多简历最终面试了有赞,还有幸拿到offer!
|
8月前
|
设计模式 前端开发 Java
Spring Boot之Spring MVC的工作原理 以及使用eclipse开发Spring MVC的Web应用实战(附源码)
Spring Boot之Spring MVC的工作原理 以及使用eclipse开发Spring MVC的Web应用实战(附源码)
99 0
|
8月前
|
消息中间件 算法 NoSQL
45k以上突击面试必备,redis+mysql+并发+spring+算法+导图等
今天小编给大家带来的一篇关于Java面试相关的电子文档资源,介绍了关于Java、面试题方面的内容,本书是由Java官网出版,格式为DOC,资源大小62.5 MB,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:8.7。
|
算法 NoSQL 关系型数据库
【Spring Cloud系列】 雪花算法原理及实现
【Spring Cloud系列】 雪花算法原理及实现
581 0
|
消息中间件 算法 Java
三面“有赞”Java岗斩获offer:Spring+JVM+并发锁+分布式+算法
年末离职,年初为面试也筹备挺长一段时间,找了不少复习资料,刷了很多题在网上投了很多简历最终面试了有赞,还有幸拿到offer!

推荐镜像

更多