汇联通执法队后台管理系统
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

CommonTest.java 2.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. /*
  2. * Date: 2013年11月5日
  3. * author: Peream (peream@gmail.com)
  4. *
  5. */
  6. package tests;
  7. import java.io.BufferedReader;
  8. import java.io.BufferedWriter;
  9. import java.io.File;
  10. import java.io.FileInputStream;
  11. import java.io.FileOutputStream;
  12. import java.io.InputStreamReader;
  13. import java.io.OutputStreamWriter;
  14. import java.util.HashMap;
  15. import java.util.Map;
  16. import java.util.concurrent.TimeUnit;
  17. import java.util.concurrent.atomic.AtomicInteger;
  18. import org.junit.Test;
  19. import cn.com.taiji.common.pub.json.JsonTools;
  20. /**
  21. *
  22. * @author Peream <br>
  23. * Create Time:2013年11月5日 下午5:22:30<br>
  24. * <a href="mailto:peream@gmail.com">peream@gmail.com</a>
  25. * @since 1.0
  26. * @version 1.0
  27. */
  28. public class CommonTest extends MyBaseTest
  29. {
  30. @Test
  31. public void all() throws Exception
  32. {
  33. Map<Integer, Data> maps = new HashMap<Integer, Data>(15000000);
  34. BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(new File(
  35. "resources/ballot.txt")), "UTF-8"));
  36. long begin = System.currentTimeMillis();
  37. for (int i = 1; i < 15000000; i++)
  38. {
  39. // maps.put(i, new Data("01234567890123", "陈培安", i));
  40. writer.write(new Data("01234567890123", "陈培安", i).toJson());
  41. writer.newLine();
  42. if (i % 50000 == 0)
  43. {
  44. writer.flush();
  45. System.out.println("time used:" + (System.currentTimeMillis() - begin) + "\ti=" + i);
  46. }
  47. }
  48. writer.close();
  49. System.out.println("time used:" + (System.currentTimeMillis() - begin));
  50. begin = System.currentTimeMillis();
  51. Data data = maps.get(810216);
  52. System.out.println(data);
  53. System.out.println("get used:" + (System.currentTimeMillis() - begin));
  54. TimeUnit.MINUTES.sleep(2);
  55. }
  56. @Test
  57. public void readFromFile() throws Exception
  58. {
  59. long begin = System.currentTimeMillis();
  60. BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream("resources/ballot.txt"),
  61. "UTF-8"));
  62. String line = null;
  63. Map<Integer, Data> map = new HashMap<Integer, Data>(15000000);
  64. int i = 0;
  65. while ((line = reader.readLine()) != null)
  66. {
  67. i++;
  68. Data data = JsonTools.json2Object(line, Data.class);
  69. map.put(data.getList(), data);
  70. if (i % 50000 == 0)
  71. {
  72. System.out.println("time used:" + (System.currentTimeMillis() - begin) + "\ti=" + i);
  73. }
  74. }
  75. reader.close();
  76. System.out.println("time used:" + (System.currentTimeMillis() - begin));
  77. System.out.println(map.size());
  78. TimeUnit.MINUTES.sleep(2);
  79. }
  80. @Test
  81. public void atomicIntger()
  82. {
  83. AtomicInteger ai = new AtomicInteger(0);
  84. System.out.println(ai.get());
  85. ai.incrementAndGet();
  86. System.out.println(ai.get());
  87. ai.decrementAndGet();
  88. System.out.println(ai.get());
  89. ai.decrementAndGet();
  90. System.out.println(ai.get());
  91. ai.incrementAndGet();
  92. System.out.println(ai.get());
  93. }
  94. }