MyEclipse8.6 for spring 注册码

还在为了Myeclipse到期而烦恼吗?我们还在百度,google来做伸手党吗?

虽然破解不是什么体面的事情,但是总的

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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
 
public class MyEclipseKeyGen {
	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) {
		try {
			System.out.println("please input register name:");
			BufferedReader reader = new BufferedReader(new InputStreamReader(
					System.in));
			String userId = null;
			userId = reader.readLine();
			if (userId == null || "".equals(userId)) {
				System.out.println("name is null");
				System.exit(0);
			}
			MyEclipseKeyGen myeclipsegen = new MyEclipseKeyGen();
			String res = myeclipsegen.getSerial(userId, "E3MS");
			System.out.println("Serial:" + res);
			reader.readLine();
		} catch (IOException ex) {
			ex.printStackTrace();
		}
	}
}

Linux下的多线程下载

经常使用国外的服务器,使用wget下载资源很爽的,但是无奈今天要从国内的服务器拉资源,那么就有点怀念起来了迅雷

那么只好使用多线程下载了。Axel

32位CentOS
wget -c http://pkgs.repoforge.org/axel/axel-2.4-1.el5.rf.i386.rpm
rpm -ivh axel-2.4-1.el5.rf.i386.rpm
64位CentOS
wget -c http://pkgs.repoforge.org/axel/axel-2.4-1.el5.rf.x86_64.rpm
rpm -ivh axel-2.4-1.el5.rf.x86_64.rpm

或者去 http://down.72xit.com

axel 参数 文件下载地址
-n 指定线程数
-o 指定另存为目录
-s 指定每秒的最大比特数
-q 静默模式

shell 添加jar到classpath

我们写应用程序的时候需要写Shell来做启动,那么手工添加jar到环境变量太悲催了吧,既然用shell来做的话,那么shell能做的更多:)

EG: 我们把/home/tmsp/apache-tomcat-6.0.35/lib/* 目录下的所有jar 都导入环境变量。

1
2
3
4
for i in /home/tmsp/apache-tomcat-6.0.35/lib/*; 
do CLASSPATH=$i:"$CLASSPATH"; 
done 
echo "$CLASSPATH"

shell 监控网卡流量

需要统计网卡流量,除了依赖其他第三方的统计外,只能自己写了,原因你懂吧?:),因为生产环境没办法啊,只能自己写啊,悲催哇。

这个是统计packets的信息,可能1和9会更准一些,不过我也不清楚了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/bin/bash
eth=$1
mkdir -p /home/tmsp
while [ "1" ]
RXpre=$(cat /proc/net/dev | grep $eth | tr : " " | awk '{print $2}')
TXpre=$(cat /proc/net/dev | grep $eth | tr : " " | awk '{print $10}')
sleep 1
do
RXnext=$(cat /proc/net/dev | grep $eth | tr : " " | awk '{print $2}')
TXnext=$(cat /proc/net/dev | grep $eth | tr : " " | awk '{print $10}')
ctime=$(date "+%Y-%m-%d %H:%M:%S")
RX=$((${RXnext}-${RXpre}))
TX=$((${TXnext}-${TXpre}))
echo "$ctime|RX:$RX|TX:$TX|TRX:$RXnext|TTX:$TXnext" >> /home/tmsp/$1.log
sleep 1
done

这个是简单的记录信息,那么需要后续的工作还很多,比如脚本切割,比如话单入库等等,后续完善吧。

PS:最后补充如何运行,如果你保存为 nic.sh 先给执行权限chmod +x nic.sh 然后运行,./nic.sh eth0 参数是你想要监控的网卡信息。

不足之处,不能监控到具体的端口,目前迷惘中。欢迎指点。

Nginx 根据访问终端跳转页面

有些需求需要同一个域名识别终端来展示不同的界面,使用Nginx获取UA来判断终端类型,实现简单的跳转操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
server {
 server_name g3.tm-sp.com;
 listen 80;
 access_log off;
 location / {
 if ($http_user_agent ~ "((MIDP)|(WAP)|(UP.Browser)|(Smartphone)|(Obigo)|(Mobile)|(AU.Browser)|(wxd.Mms)|(WxdB.Browser)|(CLDC)|(UP.Link)|(KM.Browser)|(UCWEB)|(SEMC\-Browser)|(Mini)|(Symbian)|(Palm)|(Nokia)|(Panasonic)|(MOT)|(SonyEricsson)|(NEC)|(Alcatel)|(Ericsson)|(BENQ)|(BenQ)|(Amoisonic)|(Amoi)|(Capitel)|(PHILIPS)|(SAMSUNG)|(Lenovo)|(Mitsu)|(Motorola)|(SHARP)|(WAPPER)|(LG)|(EG900)|(CECT)|(Compal)|(kejian)|(Bird)|(BIRD)|(G900/V1.0)|(Arima)|(CTL)|(TDG)|(Daxian)|(DAXIAN)|(DBTEL)|(Eastcom)|(EASTCOM)|(PANTECH)|(Dopod)|(Haier)|(HAIER)|(KONKA)|(KEJIAN)|(LENOVO)|(Soutec)|(SOUTEC)|(SAGEM)|(SEC)|(SED)|(EMOL)|(INNO55)|(ZTE)|(iPhone)|(Android)|(Windows CE)|(Wget)|(Java)|(curl)|(Opera))"){
	rewrite ^/(.*)$ http://221.180.20.228:8081/wap/$1 ;
}
if ( $http_user_agent ~ ^$ )  {  
	rewrite ^/(.*)$ http://221.180.20.228:8081/wap/$1 ;  
}         
 proxy_pass http://221.180.20.228:8080;
 }
}

ERROR: JDWP Unable to get JNI 1.2 environment

在JDK1.6版本中出现如此问题,需要在main函数最后加上
System.exit(0);来解决。

ERROR: JDWP Unable to get JNI 1.2 environment, jvm->GetEnv() return code = -2
JDWP exit error AGENT_ERROR_NO_JNI_ENV(183):  [../../../src/share/back/util.c:820]

72xit回国了

72xit是在10年的时候创建开始写博客的,那时候经历过一次备案,无奈没有通过,只好在国外飘着,前段时间阿里云搞活动,又手痒购买了一个阿里云,既然回国了就彻底折腾吧,关站,备案,等待1个月,终于备案下来了,好吧,收到了N多短信,还以为是短信轰炸,最后发现是备案通过的消息,好吧,有了良民证了,可以在国内俺家了,本来想着把博客开出来爽一爽,但是想了又想,还是重新筛选吧,毕竟回国了,有了良民证了,需要收敛了。 你懂的,大家都懂得 。

敬请期待吧:)

利用.htaccess 实现301重定向

今天和朋友讨论网站被收录的问题,无意中发现
site:72xit.com 和 site:www.72xit.com 被搜索引擎收录的不一致 无形间减少了页面的权重,研究一下,利用.htaccess 实现301重定向:

1
2
3
4
Options +FollowSymLinks
rewriteEngine on
rewriteCond %{http_host} ^72xit.com [NC]
rewriteRule ^(.*)$ http://www.72xit.com/$1 [R=301,L]

这下没有带www的访问被重定向到了www, 大家有需要借鉴吧。

商家是赚钱,还是信誉,还是良心

我觉得这是一个伪命题,人所谓无奸不商,无商不奸,可能大概就是这个意思。
作为商人,要想赚钱,必然要丢掉良心,要有良心就赚不了钱,于是我们一直在这里徘徊,到底是要钱,还是要脸……

这些天经历的一些事情,有人做免费的,然后要验证费,然后骗了不少钱,跑路了。

有些人搞什么优惠,价格非常低,吸引了一大群人,然后圈了不少钱,跑路了。

这些都是骗子,跑路了,所谓最贵的服务就是免费的服务,不无道理。

有些商家没打算跑路,搞活动,先提价在优惠,然后价格基本没变,有的比原来还贵,这就是天朝特色,减价啦,减价啦,原价26.9 现价29.6……

前几天,有人说免费的ssh平台开始圈钱了,换平台了,收费了,也不用解释了,本来平台就分为免费组和收费组,谈什么圈钱,况且新平台只是合理利用资源,

踢掉占着茅坑不拉屎的人,唉,总有人说要跑路,跑路,等着看吧,就算跑路也不会携款跑路……

今天去京东抢书去了,满200立减50% 真金白银,什么也不说了,老刘就是财大气粗。

于是有了,骗子,没有信誉,没有良心,赚钱跑了。

我们有信誉,有良心,没钱赚。

老刘,有信誉有良心的把钱赚了。