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
三面“有赞”Java岗斩获offer:Spring+JVM+并发锁+分布式+算法
年末离职,年初为面试也筹备挺长一段时间,找了不少复习资料,刷了很多题在网上投了很多简历最终面试了有赞,还有幸拿到offer!
|
4月前
|
消息中间件 算法 NoSQL
45k以上突击面试必备,redis+mysql+并发+spring+算法+导图等
今天小编给大家带来的一篇关于Java面试相关的电子文档资源,介绍了关于Java、面试题方面的内容,本书是由Java官网出版,格式为DOC,资源大小62.5 MB,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:8.7。
|
8月前
|
消息中间件 算法 Java
三面“有赞”Java岗斩获offer:Spring+JVM+并发锁+分布式+算法
年末离职,年初为面试也筹备挺长一段时间,找了不少复习资料,刷了很多题在网上投了很多简历最终面试了有赞,还有幸拿到offer!
|
11月前
|
负载均衡 算法 容灾
Spring Cloud Alibaba - 11 Ribbon 自定义负载均衡策略(同集群优先权重负载均衡算法)
Spring Cloud Alibaba - 11 Ribbon 自定义负载均衡策略(同集群优先权重负载均衡算法)
126 0
|
11月前
|
负载均衡 算法 Java
Spring Cloud Alibaba - 10 Ribbon 自定义负载均衡策略(权重算法)
Spring Cloud Alibaba - 10 Ribbon 自定义负载均衡策略(权重算法)
186 0
|
11月前
|
设计模式 负载均衡 算法
Spring Cloud Alibaba - 07 Ribbon 应用篇及内置的负载均衡算法
Spring Cloud Alibaba - 07 Ribbon 应用篇及内置的负载均衡算法
111 1
|
XML Java API
Spring框架入门以及Eclipse创建 Spring项目
Spring框架入门以及Eclipse创建 Spring项目
Spring框架入门以及Eclipse创建 Spring项目
|
Java Android开发 Spring
spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象
spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象
123 0
spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象
|
Java Android开发 数据安全/隐私保护
spring练习,使用Eclipse搭建的Spring开发环境,属性注入通过构造方法方式实现,模拟用户的正常登录。
spring练习,使用Eclipse搭建的Spring开发环境,属性注入通过构造方法方式实现,模拟用户的正常登录。
86 0
spring练习,使用Eclipse搭建的Spring开发环境,属性注入通过构造方法方式实现,模拟用户的正常登录。
|
Java Android开发 Spring
sping练习,在Eclipse搭建的Spring开发环境中,使用工厂方式创建Bean对象,将创建的Bean对象输出到控制台。
sping练习,在Eclipse搭建的Spring开发环境中,使用工厂方式创建Bean对象,将创建的Bean对象输出到控制台。
196 0
sping练习,在Eclipse搭建的Spring开发环境中,使用工厂方式创建Bean对象,将创建的Bean对象输出到控制台。

热门文章

最新文章

推荐镜像

更多