常用工具类


1.MD5加密

import org.apache.commons.codec.digest.DigestUtils;

public class MD5Util {
	public static String getMD5(byte[] source) {
		String s = null;
		char hexDigits[] = { // 用来将字节转换成 16 进制表示的字符
		'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd',
				'e', 'f' };
		try {
			java.security.MessageDigest md = java.security.MessageDigest
					.getInstance("MD5");
			md.update(source);
			byte tmp[] = md.digest(); // MD5 的计算结果是一个 128 位的长整数,
										// 用字节表示就是 16 个字节
			char str[] = new char[16 * 2]; // 每个字节用 16 进制表示的话,使用两个字符,
											// 所以表示成 16 进制需要 32 个字符
			int k = 0; // 表示转换结果中对应的字符位置
			for (int i = 0; i < 16; i++) { // 从第一个字节开始,对 MD5 的每一个字节
											// 转换成 16 进制字符的转换
				byte byte0 = tmp[i]; // 取第 i 个字节
				str[k++] = hexDigits[byte0 >>> 4 & 0xf]; // 取字节中高 4 位的数字转换,
															// >>>
															// 为逻辑右移,将符号位一起右移
				str[k++] = hexDigits[byte0 & 0xf]; // 取字节中低 4 位的数字转换
			}
			s = new String(str); // 换后的结果转换为字符串

		} catch (Exception e) {
			e.printStackTrace();
		}
		return s;
	}

	public synchronized static String getMD5(final String source) {
		return DigestUtils.md5Hex(source);
	}
}

2、解码编码

public class UrlEncoder { 
    public static void main(String[] args) {
        String name = "上海";
        String address = "%E4%B8%8A%E6%B5%B7";
        try {
            name = java.net.URLEncoder.encode(name, "utf-8");
            address = java.net.URLDecoder.decode(address, "utf-8");
            System.out.println(name);
            System.out.println("--->"+address);
        } catch (UnsupportedEncodingException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

3、xml转json

public class Xml_json { 
    public static void main(String[] args) {
    	//fidder返回数据为xml,通过hutool的json包可以转换为json。
		String xml = "14038      2  1210811666    
住宅 2 163 43 30 18 2.5 0 1 0 上海 闵行 浦江 外环以外 pujiangzhen.fang.com/ 43054 6.57 -0.78 2050.00 2018-05-30 03:02:26.523 5,130,61,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,5,139,48,6,0,0,0,0, 2,17,11,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,2,19,8,1,0,0,0,0, 1:250.0-280.0~2:320.0-410.0~3:370.0-585.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 -43.05 612 0.06 0.55 121.51358795166016 31.083389282226562 121.5136,31.0854_121.5137,31.0851_121.5131,31.0853_121.5131,31.0850_121.5132,31.0847_121.5138,31.0846_121.5133,31.0845_121.5126,31.0844_121.5119,31.0842_121.5120,31.0839_121.5127,31.0841_121.5134,31.0842_121.5139,31.0844_121.5138,31.0840_121.5139,31.0837_121.5139,31.0834_121.5139,31.0832_121.5132,31.0830_121.5125,31.0828_121.5122,31.0851_121.5114,31.0849_121.5116,31.0845_121.5124,31.0847_121.5127,31.0837_121.5120,31.0835_121.5121,31.0831_121.5129,31.0833_ 27 2575,黄浦一中心世博小学,l _ 1210811666 2005-09-28 1 0 2825.0000 3650.0000 4200.0000 0 0 22 0 1300.0000 0 124626 浦江世博家园 0 优质教育 近地铁 0 0 0 1 shhttps://m.fang.com/xiaoqu/sh/1210811666.html
2 1210423238
住宅 2 630 134 77 66 5.0 0 1 0 上海 浦东 三林 中外环间 sanlin.fang.com/ 60096 11.59 4.04 4800.00 2018-05-30 03:02:26.523 180,324,194,1,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,8,130,193,398,0,0,0,0, 15,34,27,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,0,14,21,43,0,0,0,0, 1:305.0-442.0~2:336.0-680.0~3:436.0-740.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 -4.00 1829 0.19 0.83 121.53052520751953 31.15558433532715 121.5323,31.1576_121.5314,31.1576_121.5291,31.1570_121.5291,31.1565_121.5283,31.1566_121.5278,31.1565_121.5344,31.1574_121.5283,31.1552_121.5291,31.1555_121.5287,31.1549_121.5298,31.1554_121.5307,31.1556_121.5307,31.1561_121.5300,31.1559_121.5307,31.1575_121.5300,31.1574_121.5280,31.1562_121.5283,31.1557_121.5289,31.1560_121.5307,31.1566_121.5312,31.1567_121.5336,31.1567_121.5341,31.1569_121.5330,31.1571_121.5323,31.1570_121.5315,31.1572_121.5330,31.1565_121.5299,31.1565_121.5347,31.1572_121.5337,31.1575_121.5330,31.1576_ 31 15599,尚博实验小学,l _ 1210423238 2006-06-01 1 0 3925.0000 4800.0000 6300.0000 0 0 80 0 1500.0000 0 359704 0 优质教育 近地铁 11 104 506 2351 shhttps://m.fang.com/xiaoqu/sh/1210423238.html
2 1210349950
住宅 2 127 80 21 34 2.5 0 1 0 上海 闵行 浦江 外环以外 pujiangzhen.fang.com/ 44329 10.47 3.22 2400.00 2018-05-30 03:02:26.523 7,77,62,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,7,81,62,0,0,0,0,0, 2,12,8,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,2,11,9,0,0,0,0,0, 1:270.0-270.0~2:339.0-445.0~3:388.0-480.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 -36.84 563 0.06 0.55 121.51268005371094 31.08095932006836 121.5140,31.0828_121.5141,31.0825_121.5142,31.0823_121.5142,31.0820_121.5143,31.0817_121.5129,31.0811_121.5136,31.0813_121.5144,31.0814_121.5144,31.0812_121.5137,31.0810_121.5130,31.0808_121.5131,31.0806_121.5138,31.0807_121.5145,31.0809_121.5130,31.0825_121.5123,31.0823_121.5125,31.0818_121.5132,31.0821_121.5135,31.0816_121.5127,31.0814_ 20 2575,黄浦一中心世博小学,l _ 1210349950 2005-09-28 1 0 2250.0000 3600.0000 5000.0000 0 0 33 0 1550.0000 0 0 优质教育 近地铁 0 0 0 1 shhttps://m.fang.com/xiaoqu/sh/1210349950.html
2 1210011548
住宅 2 77 13 20 10 5.0 0 1 0 上海 黄浦 蓬莱公园 内环以内 penglaigongyuan.fang.com/ 98103 14.60 1.77 12900.00 2018-05-30 03:02:26.523 3,71,21,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,0,0,0,8,13,78,0,0, 0,15,4,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,0,0,0,1,2,16,0,0, 1:0.0-0.0~2:750.0-1250.0~3:1050.0-1450.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 3.20 682 0.07 1.5 121.49764251708984 31.205318450927734 121.4978,31.2058_121.4988,31.2060_121.4986,31.2055_121.4989,31.2056_ 4 2410,上外黄浦外国语小学,l _ 1210011548 2001-01-01 1 0 0.0000 10300.0000 0.0000 0 0 14 0 0.0000 0 0 优质教育 近地铁 8 28 152 639 shhttps://m.fang.com/xiaoqu/sh/1210011548.html
2 1210273544
住宅 2 470 82 33 34 3.5 0 1 0 上海 宝山 顾村 外环以外 gucun.fang.com/ 39302 4.24 0.30 3300.00 2018-05-30 03:02:26.523 80,372,24,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,246,229,10,0,0,0,0,0, 8,20,6,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,21,12,3,0,0,0,0,0, 1:210.0-251.0~2:246.0-320.0~3:285.0-430.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 -2.94 2159 0.22 1.20 121.3725814819336 31.355194091796875 121.3754,31.3549_121.3751,31.3553_121.3748,31.3557_121.3746,31.3553_121.3714,31.3545_121.3750,31.3546_121.3744,31.3544_121.3739,31.3547_121.3740,31.3551_121.3741,31.3555_121.3743,31.3558_121.3734,31.3561_121.3724,31.3548_121.3726,31.3561_121.3718,31.3545_121.3720,31.3555_121.3714,31.3553_121.3712,31.3556_121.3744,31.3549_121.3711,31.3548_121.3709,31.3552_121.3731,31.3549_121.3732,31.3553_121.3734,31.3557_121.3719,31.3558_121.3726,31.3553_121.3726,31.3557_121.3721,31.3550_121.3716,31.3548_ 29 16204,上海市宝山区宝虹小学,l _ 1210273544 2007-06-01 1 0 2700.0000 3450.0000 3640.0000 0 0 82 0 1500.0000 182 0 优质教育 近地铁 24 185 831 2001 shhttps://m.fang.com/xiaoqu/sh/1210273544.html
2 1210811660
住宅 2 200 70 26 32 2.5 0 1 0 上海 闵行 浦江 外环以外 pujiangzhen.fang.com/ 43864 10.58 1.28 1900.00 2018-05-30 03:02:26.523 7,122,97,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,4,93,63,90,0,0,0,0, 2,13,12,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,1,10,9,11,0,0,0,0, 1:282.0-320.0~2:370.0-420.0~3:400.0-570.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 5.55 1196 0.12 0.8 121.5081787109375 31.088144302368164 121.5095,31.0879_121.5073,31.0873_121.5071,31.0875_121.5071,31.0879_121.5095,31.0882_121.5093,31.0884_121.5092,31.0887_121.5070,31.0881_121.5068,31.0884_121.5092,31.0890_121.5087,31.0877_121.5079,31.0875_121.5078,31.0879_121.5085,31.0881_121.5084,31.0886_121.5076,31.0884_121.5068,31.0887_121.5074,31.0888_121.5083,31.0890_121.5089,31.0892_ 20 2575,黄浦一中心世博小学,l _ 1210811660 2006-04-13 1 0 1900.0000 3450.0000 4290.0000 0 0 19 0 1600.0000 0 124626 浦江世博家园 0 优质教育 近地铁 4 27 208 685 shhttps://m.fang.com/xiaoqu/sh/1210811660.html
2 1823619942
住宅 2 2 1 0.0 0 1 0 上海 上海周边 昆山 中环以外 13620 5.35 1.00 1747.00 2018-05-30 03:02:26.523 4,108,322,39,9 0,50,50,80,80,100,100,120,120,150,150,200,200,300,300,+∞_0,48,26,203,198,44,6,0, 2,34,56,11,4 0,50,50,80,80,100,100,120,120,150,150,200,200,300,300,+∞_0,21,7,32,42,12,2,0, 1:63.0-180.0~2:46.0-129.0~3:60.0-155.0~4:87.0-180.0~5:128.0-180.0~99:0.0-0.0~ 0 0.28 1070 0.11 1.00 121.02478790283203 31.25845718383789 121.0247,31.2584_121.0245,31.2614_121.0248,31.2600_121.0261,31.2585_121.0250,31.2617_121.0242,31.2596_121.0242,31.2584_121.0243,31.2579_121.0247,31.2596_121.0248,31.2589_121.0253,31.2578_121.0253,31.2583_121.0257,31.2590_121.0241,31.2590_121.0259,31.2596_121.0265,31.2599_121.0257,31.2599_121.0262,31.2602_121.0264,31.2606_121.0257,31.2606_121.0243,31.2600_121.0244,31.2605_121.0260,31.2609_121.0259,31.2613_121.0259,31.2617_121.0250,31.2613_121.0244,31.2609_121.0246,31.2619_121.0260,31.2620_121.0260,31.2625_121.0256,31.2626_121.0247,31.2625_ 32 11108,昆山市千灯镇炎武小学,l _ 1823619942 2012-05-15 1 0 636.0000 1456.0000 1748.0000 0 0 0 0.0000 59 167226 0 优质教育 20 114 564 2028 shhttps://m.fang.com/xiaoqu/sh/1823619942.html
2 1210035793
住宅 2 246 36 37 19 5.0 0 1 0 上海 黄浦 蓬莱公园 内环以内 penglaigongyuan.fang.com/ 95001 4.45 1.94 7350.00 2018-05-30 03:02:26.523 13,116,139,2,14 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,0,0,3,9,35,237,17,1, 3,16,16,0,1 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,0,0,1,3,9,27,2,0, 1:450.0-800.0~2:800.0-1160.0~3:1050.0-1670.0~4:0.0-0.0~5:2488.0-2488.0~99:0.0-0.0~ 0 2.08 1358 0.14 1.80 121.49624633789062 31.208965301513672 121.4959,31.2095_121.4966,31.2090_121.4964,31.2085_121.4971,31.2084_ 4 2410,上外黄浦外国语小学,l _ 1210035793 2005-05-02 1 0 3000.0000 9500.0000 11200.0000 0 0 15 0 2173.0000 2 286268 0 优质教育 近地铁 0 0 0 1 shhttps://m.fang.com/xiaoqu/sh/1210035793.html
2 1210085723
住宅 2 97 5 15 3 5.0 0 1 0 上海 黄浦 董家渡 内环以内 dongjiadu.fang.com/ 86754 5.75 0.09 13000.00 2018-05-30 03:02:26.523 0,29,58,24,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,0,0,0,6,26,81,0,0, 0,6,7,2,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,0,0,0,3,4,9,0,0, 1:0.0-0.0~2:730.0-998.0~3:1180.0-1450.0~4:1650.0-1650.0~5:0.0-0.0~99:0.0-0.0~ 0 -7.14 856 0.09 2 121.5062255859375 31.218494415283203 121.5067,31.2186_121.5068,31.2190_121.5056,31.2183_121.5060,31.2192_121.5062,31.2192_121.5058,31.2183_121.5062,31.2192_121.5069,31.2186_ 8 1210085723 2007-02-28 1 0 6500.0000 10900.0000 15500.0000 0 0 12 0 3490.0000 21 16029 1 1 e 0 157352 0 近地铁 4 16 115 433 shhttps://m.fang.com/xiaoqu/sh/1210085723.html
2 1211207376
住宅 2 168 5 32 4 2.5 0 1 0 上海 闵行 浦江 外环以外 pujiangzhen.fang.com/ 27031 7.04 1.57 2300.00 2018-05-30 03:02:26.523 24,158,13,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,123,7,0,0,0,0,0,0, 5,21,5,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,19,3,0,0,0,0,0,0, 1:150.0-165.0~2:183.0-300.0~3:260.0-300.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 2.22 319 0.03 1.3 121.5075454711914 31.036701202392578 121.5063,31.0374_121.5061,31.0365_121.5067,31.0366_121.5076,31.0366_121.5073,31.0370_121.5076,31.0373_121.5061,31.0378_121.5061,31.0369_121.5067,31.0377_121.5074,31.0378_ 10 1211207376 1 0 1678.0000 2200.0000 0.0000 0 0 0 0.0000 0 116608 永康城 0 0 0 1 3 shhttps://m.fang.com/xiaoqu/sh/1211207376.html
2 1210030756
住宅 2 256 17 77 10 5.0 0 1 0 上海 普陀 长寿路 内环以内 changshoush.fang.com/ 72787 -0.27 3.34 8500.00 2018-05-30 03:02:26.523 23,185,114,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,0,5,12,187,104,23,0,0, 7,38,29,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,0,2,4,44,22,4,0,0, 1:320.0-630.0~2:505.0-940.0~3:578.0-1320.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 -17.07 1001 0.10 1.60 121.43745422363281 31.25000762939453 121.4380,31.2497_121.4372,31.2496_121.4364,31.2498_121.4362,31.2502_121.4373,31.2501_121.4368,31.2505_ 6 1935,上海市普陀区明山小学,l _ 1210030756 2004-05-01 1 0 6200.0000 10000.0000 13000.0000 0 0 12 0 2296.0000 5 159018 0 优质教育 近地铁 9 92 279 725 shhttps://m.fang.com/xiaoqu/sh/1210030756.html
2 1211180602
住宅 2 343 24 29 12 4.0 0 1 0 上海 闵行 浦江 中外环间 pujiangzhen.fang.com/ 26414 5.62 -0.06 2500.00 2018-05-30 03:02:26.523 57,195,115,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,122,0,0,0,0,0,0,0, 7,16,6,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,8,0,0,0,0,0,0,0, 1:135.0-148.0~2:175.0-259.0~3:200.0-220.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 6.38 808 0.08 1.2 121.51332092285156 31.040353775024414 121.5117,31.0413_121.5123,31.0414_121.5129,31.0415_121.5135,31.0415_121.5135,31.0409_121.5125,31.0409_121.5117,31.0409_121.5117,31.0404_121.5135,31.0405_121.5135,31.0399_121.5116,31.0399_121.5117,31.0394_121.5126,31.0394_121.5135,31.0394_121.5126,31.0390_121.5116,31.0390_ 16 1211180602 2014-11-01 1 0 2100.0000 2500.0000 3096.0000 0 0 0 0.0000 0 116608 永康城 0 0 0 0 1 shhttps://m.fang.com/xiaoqu/sh/1211180602.html
2 1210068552
住宅 2 131 31 46 11 4.0 0 1 0 上海 浦东 三林 中内环间 sanlin.fang.com/ 58329 3.26 0.23 6150.00 2018-05-30 03:02:26.523 12,85,62,5,2 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,0,6,29,121,9,11,0,0, 5,19,19,1,1 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,0,3,11,30,3,3,0,0, 1:345.0-480.0~2:400.0-800.0~3:420.0-1200.0~4:1119.0-1119.0~5:650.0-650.0~99:0.0-0.0~ 0 -5.38 927 0.09 2 121.51604461669922 31.16034698486328 121.5170,31.1607_121.5170,31.1611_121.5167,31.1615_121.5157,31.1612_121.5149,31.1609_121.5147,31.1607_121.5157,31.1607_121.5163,31.1610_121.5161,31.1600_121.5167,31.1600_121.5173,31.1603_121.5161,31.1605_121.5164,31.1596_121.5174,31.1598_ 14 2335,联丰小学,l _ 1210068552 2005-01-01 1 0 3883.0000 6200.0000 8000.0000 0 0 18 0 686.0000 93 0 优质教育 近地铁 4 42 218 778 shhttps://m.fang.com/xiaoqu/sh/1210068552.html
2 1211177536
住宅 2 21 8 2.5 0 1 0 上海 闵行 浦江 中外环间 pujiangzhen.fang.com/ 25131 -2.18 -3.48 2400.00 2018-05-30 03:02:26.523 12,17,0,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,12,0,0,0,0,0,0,0, 3,5,0,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,3,0,0,0,0,0,0,0, 1:152.0-158.0~2:190.0-215.0~3:0.0-0.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 0.00 125 0.01 1.31 121.50997924804688 31.037254333496094 121.5089,31.0366_121.5089,31.0379_121.5095,31.0367_121.5100,31.0367_121.5100,31.0373_121.5095,31.0373_121.5090,31.0372_121.5094,31.0379_121.5100,31.0380_ 9 1211177536 2013-12-20 1 0 0.0000 0.0000 0.0000 0 0 0 0.0000 0 116608 永康城 0 0 0 0 1 shhttps://m.fang.com/xiaoqu/sh/1211177536.html
2 1210934798
住宅 2 204 375 50 33 4.0 0 1 0 上海 浦东 三林 中内环间 sanlin.fang.com/ 56273 6.30 1.79 2200.00 2018-05-30 03:02:26.523 47,173,39,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,13,79,135,46,0,0,0,0, 7,33,10,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,3,14,25,10,0,0,0,0, 1:300.0-360.0~2:296.0-650.0~3:390.0-595.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 -21.42 677 0.07 0.8 121.5254898071289 31.162761688232422 121.5253,31.1622_121.5259,31.1624_121.5265,31.1626_121.5238,31.1635_121.5245,31.1637_121.5252,31.1639_121.5259,31.1641_121.5250,31.1614_121.5269,31.1619_121.5274,31.1621_121.5273,31.1624_121.5267,31.1622_121.5261,31.1620_121.5253,31.1619_121.5247,31.1617_121.5247,31.1619_121.5255,31.1615_121.5270,31.1628_121.5268,31.1630_121.5261,31.1629_121.5255,31.1628_121.5249,31.1627_121.5262,31.1617_121.5244,31.1624_121.5242,31.1627_121.5240,31.1630_121.5248,31.1630_121.5253,31.1631_121.5258,31.1632_121.5266,31.1634_121.5263,31.1637_121.5257,31.1636_121.5251,31.1634_121.5245,31.1633_121.5239,31.1632_ 35 1210934798 2010-01-15 1 0 2500.0000 4800.0000 6000.0000 0 0 34 0 1800.0000 0 16312 1 1 e 0 158482 0 近地铁 11 105 350 1514 shhttps://m.fang.com/xiaoqu/sh/1210934798.html
2 1211263958
住宅 2 80 24 2.5 0 1 0 上海 闵行 浦江 外环以外 pujiangzhen.fang.com/ 29376 3.03 -0.64 2775.00 2018-05-30 03:02:26.523 32,66,4,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,70,3,0,0,0,0,0,0, 8,15,1,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,17,1,0,0,0,0,0,0, 1:157.0-215.0~2:210.0-258.0~3:300.0-300.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 18.08 245 0.02 1.2 121.54302978515625 31.045085906982422 121.5433,31.0452_121.5433,31.0456_121.5429,31.0455_121.5424,31.0451_121.5425,31.0447_121.5432,31.0447_ 6 1211263958 2013-01-01 1 0 0.0000 0.0000 0.0000 0 0 19 0 0.0000 0 112940 瑞和华苑 0 7 31 178 517 shhttps://m.fang.com/xiaoqu/sh/1211263958.html
2 1210912770
住宅 2 71 13 21 3 2.0 0 1 0 上海 闵行 浦江 外环以外 pujiangzhen.fang.com/ 36882 7.23 2.53 1665.00 2018-05-30 03:02:26.523 28,38,24,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,44,28,22,0,0,0,0,0, 4,12,5,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,9,8,5,0,0,0,0,0, 1:183.0-240.0~2:258.0-370.0~3:475.0-488.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 -55.00 360 0.04 0.2 121.49950408935547 31.08383560180664 121.5005,31.0838_121.4998,31.0836_121.5001,31.0834_121.4990,31.0835_121.4983,31.0833_121.5003,31.0841_121.4997,31.0839_121.4990,31.0838_121.4982,31.0836_121.5003,31.0844_121.4988,31.0841_121.4980,31.0839_121.4999,31.0847_121.4984,31.0843_121.4989,31.0831_ 15 1210912770 2004-01-01 1 0 2913.0000 3900.0000 3767.0000 0 0 6 0 1285.0000 0 109378 景江苑 0 7 32 106 428 shhttps://m.fang.com/xiaoqu/sh/1210912770.html
2 1210880172
住宅 2 128 29 32 14 3.5 0 1 0 上海 闵行 浦江 外环以外 pujiangzhen.fang.com/ 35543 6.06 2.69 2500.00 2018-05-30 03:02:26.523 30,32,94,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,35,34,89,5,0,0,0,0, 6,6,18,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,6,8,17,1,0,0,0,0, 1:133.0-265.0~2:250.0-360.0~3:380.0-500.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 -21.87 535 0.05 0.5 121.50155639648438 31.081403732299805 121.5009,31.0801_121.5012,31.0819_121.4996,31.0812_121.5000,31.0819_121.5017,31.0803_121.4999,31.0822_121.4991,31.0820_121.5017,31.0800_121.5016,31.0806_121.5008,31.0805_121.5013,31.0812_121.5006,31.0808_121.4999,31.0805_121.5012,31.0816_121.5005,31.0812_121.5009,31.0798_121.4997,31.0808_121.4994,31.0815_121.5007,31.0821_121.4991,31.0817_121.5006,31.0824_121.5004,31.0826_121.4997,31.0825_121.4990,31.0823_ 24 1210880172 2007-11-01 1 0 3400.0000 3200.0000 5053.0000 0 0 17 0 1725.0000 0 16607 1 1 e 0 109764 景舒苑 0 4 37 197 597 shhttps://m.fang.com/xiaoqu/sh/1210880172.html
2 1211208346
住宅 2 131 5 25 3 3.0 0 1 0 上海 闵行 浦江 外环以外 pujiangzhen.fang.com/ 26409 4.14 -1.59 2800.00 2018-05-30 03:02:26.523 29,123,8,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,117,0,0,0,0,0,0,0, 6,17,2,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,15,0,0,0,0,0,0,0, 1:145.0-152.0~2:190.0-216.0~3:260.0-284.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 7.69 168 0.02 121.5047836303711 31.034862518310547 121.5050,31.0352_121.5050,31.0341_121.5049,31.0356_121.5038,31.0355_121.5040,31.0349_121.5049,31.0346_121.5040,31.0342_121.5041,31.0337_121.5049,31.0336_ 9 1211208346 2014-04-18 1 0 0.0000 0.0000 0.0000 0 0 5 0 0.0000 0 116608 永康城 0 8 44 224 704 shhttps://m.fang.com/xiaoqu/sh/1211208346.html
2 1210612278
住宅 2 378 155 52 65 5.0 0 1 0 上海 浦东 三林 中外环间 sanlin.fang.com/ 58358 7.35 1.53 4500.00 2018-05-30 03:02:26.523 58,223,142,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,7,78,145,207,0,0,0,0, 11,30,11,0,0 0,200,200,300,300,400,400,500,500,800,800,1000,1000,2000,2000,3000,3000,+∞_0,2,14,19,19,0,0,0,0, 1:269.0-375.0~2:290.0-610.0~3:510.0-630.0~4:0.0-0.0~5:0.0-0.0~99:0.0-0.0~ 0 -4.25 1176 0.12 0.5 121.53450012207031 31.155460357666016 121.5334,31.1549_121.5345,31.1548_121.5340,31.1541_121.5347,31.1543_121.5337,31.1545_121.5354,31.1546_121.5361,31.1547_121.5366,31.1549_121.5357,31.1551_121.5354,31.1554_121.5362,31.1555_121.5359,31.1558_121.5354,31.1564_121.5347,31.1562_121.5347,31.1554_121.5339,31.1552_121.5340,31.1559_ 17 2319,浦东新区新时代小学,l _ 1210612278 2007-04-30 1 0 3400.0000 4900.0000 6600.0000 0 0 37 0 2400.0000 0 16427 1 1 e 0 105550 金禾新苑 0 优质教育 优质教育 近地铁 14 95 472 1337 shhttps://m.fang.com/xiaoqu/sh/1210612278.html
什么是小区评级?小区评级主要通过四个方面的维度综合评估,包括小区活跃度、小区物业、小区所在板块、小区的教育资源\r\n" + "根据这四个维度能够比较全面的认识该小区的软硬件信息,为购房者提供相对全面合理的购房参考小区评级1403810121.2839088439941431.19502830505371
"; JSONObject json =XML.toJSONObject(xml); System.out.println(json); } }

4、解析json

1.import org.json.JSONArray;
  import org.json.JSONObject;

JSONObject json = new org.json.JSONObject(result);    
JSONArray list = json.getJSONArray("List");

2.import com.alibaba.fastjson.JSONArray;
  import com.alibaba.fastjson.JSONObject;
 //pom文件中需要添加依赖
 //       
 //           com.alibaba
 //           fastjson
 //           1.2.68
//        
   
 JSONObject json = JSONObject.parseObject(result);
 JSONArray list = json.getJSONArray("list ");

5、本地读取文件以及生成文件

1.
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;

public class FileWrite {

    public static void wirteFile(String path, String value) {
        File file = new File(path);
        FileWriter fw = null;
        BufferedWriter writer = null;
        try {
            fw = new FileWriter(file);
            writer = new BufferedWriter(fw);
            writer.write(value);
            writer.flush();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                writer.close();
                fw.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }

    public static String readFile(String path) throws IOException {
        File file = new File(path);
        if (!file.exists() || file.isDirectory())
            throw new FileNotFoundException();
        FileInputStream fis = new FileInputStream(file);
        byte[] buf = new byte[1024];
        StringBuffer sb = new StringBuffer();
        while ((fis.read(buf)) != -1) {
            sb.append(new String(buf));
            buf = new byte[1024];
        }
        return sb.toString();
    }
}


2.
public static void main(String[] args) {
        String filePath = "D:\\1.txt";
        
        try {
            File file = new File(filePath);
            if(file.isFile() && file.exists()) {
              InputStreamReader isr = new InputStreamReader(new FileInputStream(file), "utf-8");
              BufferedReader br = new BufferedReader(isr);
              String lineTxt = null;
              while ((lineTxt = br.readLine()) != null) {
                System.out.println(lineTxt);
              }
              br.close();
            } else {
              System.out.println("文件不存在!");
            }
          } catch (Exception e) {
            System.out.println("文件读取错误!");
          }
      }

 6、生成实体类

private static final GenerateEntity INSTANCE = new GenerateEntity();

    private String tableName;// 表名
    private String[] colNames; // 列名数组
    private String[] colTypes; // 列名类型数组
    private int[] colSizes; // 列名大小数组
    private boolean needUtil = false; // 是否需要导入包java.util.*
    private boolean needSql = false; // 是否需要导入包java.sql.*
    private static final SimpleDateFormat SDF = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    private static final String SQL = "SELECT * FROM ";// 数据库操作

    // TODO 需要修改的地方
    private static final String URL = "jdbc:mysql://ip+端口/库名";
    private static final String NAME = "admin";
    private static final String PASS = "123456";
    private static final String DRIVER = "com.mysql.jdbc.Driver";
    private String packageOutPath = "com.test.model";// 指定实体生成所在包的路径
    private String authorName = "smith.Shi";// 作者名字
    private String[] generateTables = { "t_weibo_api_timeline_request" };// 指定需要生成的表的表名,全部生成设置为null
//    private static final String URL = "jdbc:sqlserver://ip+端口;DatabaseName=库名";
//    private static final String NAME = "admin";
//    private static final String PASS = "123";
//    private static final String DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
//    private String packageOutPath = "node.bds.node_investing.model";// 指定实体生成所在包的路径
//    private String authorName = "smith.shi";// 作者名字
//    private String[] generateTables = { "investing_xianjin" };// 指定需要生成的表的表名,全部生成设置为null
    
    /**
     * 类的构造方法
     */
    private GenerateEntity() {
    }

    /**
     * @return
     * @description 生成class的所有内容
     * @author paul
     * @date 2017年8月18日 下午5:30:07
     * @update 2017年8月18日 下午5:30:07
     * @version V1.0
     */
    private String parse() {
        StringBuffer sb = new StringBuffer();
        sb.append("package " + packageOutPath + ";\r\n");
        sb.append("\r\n");
        // 判断是否导入工具包
        if (needUtil) {
            sb.append("import java.util.Date;\r\n");
        }
        if (needSql) {
            sb.append("import java.sql.*;\r\n");
        }
        sb.append("import org.nutz.dao.entity.annotation.*;\r\n");
        // 注释部分
        sb.append("/**\r\n");
        sb.append(" * tablename:  " + tableName + "\r\n");
        sb.append(" * \r\n");
        sb.append(" * auth: " + authorName + "\r\n");
        sb.append(" * \r\n");
        sb.append(" * create time: " + SDF.format(new Date()) + "\r\n");
        sb.append(" */ \r\n");
        // 实体部分
        sb.append("@Table(\"" + tableName + "\")");
        sb.append("\r\n");
        sb.append("public class " + getTransStr(tableName, true) + "{\r\n\r\n");
        processAllAttrs(sb);// 属性
        sb.append("\r\n");
        processAllMethod(sb);// get set方法
        sb.append("}\r\n");
        return sb.toString();
    }

    /**
     * @param sb
     * @description 生成所有成员变量
     * @author paul
     * @date 2017年8月18日 下午5:15:04
     * @update 2017年8月18日 下午5:15:04
     * @version V1.0
     */
    private void processAllAttrs(StringBuffer sb) {
        for (int i = 0; i < colNames.length; i++) {
            if (i == 0) {
                sb.append("    @Id\r\n");
            }
            sb.append("    @Column\r\n");
            sb.append("\tprivate " + sqlType2JavaType(colTypes[i]) + " " + toStr(colNames[i]) + ";\r\n");
        }
    }

    /**
     * @param sb
     * @description 生成所有get/set方法
     * @author paul
     * @date 2017年8月18日 下午5:14:47
     * @update 2017年8月18日 下午5:14:47
     * @version V1.0
     */
    private void processAllMethod(StringBuffer sb) {
        for (int i = 0; i < colNames.length; i++) {
            sb.append("\tpublic void set" + toUperFirst(colNames[i]) + "(" + sqlType2JavaType(colTypes[i]) + " "
                    + toStr(colNames[i]) + "){\r\n");
            sb.append("\t\tthis." + toStr(colNames[i]) + "=" + toStr(colNames[i]) + ";\r\n");
            sb.append("\t}\r\n");
            sb.append(
                    "\tpublic " + sqlType2JavaType(colTypes[i]) + " get" + toUperFirst(colNames[i]) + "(){\r\n");
            sb.append("\t\treturn " + toStr(colNames[i]) + ";\r\n");
            sb.append("\t}\r\n");
        }
    }

    /**
     * @param str
     *            传入字符串
     * @return
     * @description 将传入字符串的首字母转成大写
     * @author paul
     * @date 2017年8月18日 下午5:12:12
     * @update 2017年8月18日 下午5:12:12
     * @version V1.0
     */
    private String initCap(String str) {
        char[] ch = str.toCharArray();
        if (ch[0] >= 'a' && ch[0] <= 'z')
            ch[0] = (char) (ch[0] - 32);
        return new String(ch);
    }

    /**
     * @return
     * @description 将mysql中表名和字段名转换成驼峰形式
     * @author paul
     * @date 2017年8月18日 下午4:55:07
     * @update 2017年8月18日 下午4:55:07
     * @version V1.0
     */
    private String getTransStr(String before, boolean firstChar2Upper) {
        // 不带"_"的字符串,则直接首字母大写后返回
        if (!before.contains("_"))
            return firstChar2Upper ? initCap(before) : before;
        String[] strs = before.split("_");
        StringBuffer after = null;
        if (firstChar2Upper) {
            after = new StringBuffer(initCap(strs[0]));
        } else {
            after = new StringBuffer(strs[0]);
        }
        if (strs.length > 1) {
            for (int i = 1; i < strs.length; i++)
                after.append(initCap(strs[i]));
        }
        return after.toString();
    }

    /**
     * 首字母大写
     */
    private String toUperFirst(String s) {
        if (Character.isUpperCase(s.charAt(0)))
            return s;
        else
            return (new StringBuilder()).append(Character.toUpperCase(s.charAt(0))).append(s.substring(1)).toString();
    }

    /**
     * 直接生成数据库对应字段名
     */

    private String toStr(String before) {
        return before;
    }

    /**
     * @return
     * @description 查找sql字段类型所对应的Java类型
     * @author paul
     * @date 2017年8月18日 下午4:55:41
     * @update 2017年8月18日 下午4:55:41
     * @version V1.0
     */
    private String sqlType2JavaType(String sqlType) {
        if (sqlType.equalsIgnoreCase("bit")) {
            return "boolean";
        } else if (sqlType.equalsIgnoreCase("tinyint")) {
            return "byte";
        } else if (sqlType.equalsIgnoreCase("smallint")) {
            return "short";
        } else if (sqlType.equalsIgnoreCase("int")) {
            return "int";
        } else if (sqlType.equalsIgnoreCase("bigint")) {
            return "long";
        } else if (sqlType.equalsIgnoreCase("float")) {
            return "float";
        } else if (sqlType.equalsIgnoreCase("decimal") || sqlType.equalsIgnoreCase("numeric")
                || sqlType.equalsIgnoreCase("real") || sqlType.equalsIgnoreCase("money")
                || sqlType.equalsIgnoreCase("smallmoney")) {
            return "double";
        } else if (sqlType.equalsIgnoreCase("varchar") || sqlType.equalsIgnoreCase("char")
                || sqlType.equalsIgnoreCase("nvarchar") || sqlType.equalsIgnoreCase("nchar")
                || sqlType.equalsIgnoreCase("text")) {
            return "String";
        } else if (sqlType.equalsIgnoreCase("datetime")) {
            return "Date";
        } else if (sqlType.equalsIgnoreCase("image")) {
            return "Blod";
        }
        return null;
    }

    /**
     *
     * @description 生成方法
     * @author paul
     * @date 2017年8月18日 下午2:04:20
     * @update 2017年8月18日 下午2:04:20
     * @version V1.0
     * @throws Exception
     */
    private void generate() throws Exception {
        // 与数据库的连接
        Connection con;
        PreparedStatement pStemt = null;
        Class.forName(DRIVER);
        con = DriverManager.getConnection(URL, NAME, PASS);
        System.out.println("connect database success...");
        // 获取数据库的元数据
        DatabaseMetaData db = con.getMetaData();
        // 是否有指定生成表,有指定则直接用指定表,没有则全表生成
        List tableNames = new ArrayList();
        if (generateTables == null) {
            // 从元数据中获取到所有的表名
            ResultSet rs = db.getTables(null, null, null, new String[] { "TABLE" });
            while (rs.next())
                tableNames.add(rs.getString(3));
        } else {
            for (String tableName : generateTables)
                tableNames.add(tableName);
        }
        String tableSql;
        PrintWriter pw = null;
        for (int j = 0; j < tableNames.size(); j++) {
            tableName = tableNames.get(j);
            tableSql = SQL + tableName;
            pStemt = con.prepareStatement(tableSql);
            ResultSetMetaData rsmd = pStemt.getMetaData();
            int size = rsmd.getColumnCount();
            colNames = new String[size];
            colTypes = new String[size];
            colSizes = new int[size];
            // 获取所需的信息
            for (int i = 0; i < size; i++) {
                colNames[i] = rsmd.getColumnName(i + 1);
                colTypes[i] = rsmd.getColumnTypeName(i + 1);
                if (colTypes[i].equalsIgnoreCase("datetime"))
                    needUtil = true;
                if (colTypes[i].equalsIgnoreCase("image") || colTypes[i].equalsIgnoreCase("text"))
                    needSql = true;
                colSizes[i] = rsmd.getColumnDisplaySize(i + 1);
            }
            // 解析生成class的所有内容
            String content = parse();
            // 输出生成文件
            File directory = new File("");
            String dirName = directory.getAbsolutePath() + "/src/main/java/" + packageOutPath.replace(".", "/");
            File dir = new File(dirName);
            if (!dir.exists() && dir.mkdirs())
                System.out.println("generate dir 【" + dirName + "】");
            String javaPath = dirName + "/" + getTransStr(tableName, true) + ".java";
            FileWriter fw = new FileWriter(javaPath);
            pw = new PrintWriter(fw);
            pw.println(content);
            pw.flush();
            System.out.println("create class 【" + tableName + "】");
        }
        if (pw != null)
            pw.close();
    }

    /**
     * @param args
     * @description 执行方法
     * @author paul
     * @date 2017年8月18日 下午2:03:35
     * @update 2017年8月18日 下午2:03:35
     * @version V1.0
     */
    public static void main(String[] args) {
        try {
            INSTANCE.generate();
            System.out.println("generate classes success!");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

}

 7.new 一个十秒执行的线程

//线程类
public  class  TestThread  extends  Thread {
     public  void  run() {
         while ( true ){
             try  {
                 sleep( 6 * 1000 );
                                 //这里可以写你自己要运行的逻辑代码
                 System.out.println( "一分钟运行一次" );
             }  catch  (InterruptedException e) {
                 // TODO Auto-generated catch block
                 e.printStackTrace();
             }
             
         }
     }

//main方法
     public  static  void  main(String[] args) {
         // TODO Auto-generated method stub
         TestThread testThread =  new  TestThread();
         testThread.start();
     }
 }