quinta-feira, 27 de setembro de 2012

Capturar a Hora do Sistema em Java

Sempre que é necessário trabalhar com data e hora em Java acabamos perdendo um tempo. No site do Jardel Morais encontrei os melhores exemplos para captura de data e hora do sistema. Antes vou salientar algo básico sobre tipo de dados em Java:

Date = se refere sempre ao dia, mês e ano.
Time = se refere sempre a hora, minuto e segundo.
Timestamp = Date + Time.

Segue o tutorial, referencia:


  1. 1ª FORMA
  2. SimpleDateFormat dateFormat = new SimpleDateFormat(“dd/MM/yyyy – hh:mm:ss”);
  3. System.out.println(“Hoje é: “ + dateFormat.format( new Date() ));
  4. 2ª FORMA
  5.  
  6. String data = (new java.text.SimpleDateFormat(“dd/MM/yyyy”).format(newjava.util.Date(System.currentTimeMillis()));
  7. 3ª FORMA (GregorianCalendar)
  8.  
  9. public String getHora() {
  10. // cria um StringBuilder
  11. StringBuilder sb = new StringBuilder();
  12. // cria um GregorianCalendar que vai conter a hora atual
  13. GregorianCalendar d = new GregorianCalendar();
  14. // anexa do StringBuilder os dados da hora
  15. sb.append( d.get( GregorianCalendar.HOUR_OF_DAY ) );
  16. sb.append( ”:” );
  17. sb.append( d.get( GregorianCalendar.MINUTE ) );
  18. sb.append( ”:” );
  19. sb.append( d.get( GregorianCalendar.SECOND ) );
  20. // retorna a String do StringBuilder
  21. return sb.toString();
  22. }
  23. 4ª FORMA
  24. String text = ”22/08/2007;
  25. String format = ”dd/MM/yyyy”;
  26. Date date = new SimpleDateFormat(format).parse(text);
  27. 5ª FORMA
  28. System.currentTimeMillis()
  29. 6ª FORMA
  30. new Thread() {
  31. public void run() {
  32. while (true) {
  33. Date date = new Date();
  34. // usa a data pra alguma coisa
  35. try {
  36. Thread.sleep(1000); // espera um segundo
  37. } catch (InterruptedException exc) {
  38. exc.printStackTrace();
  39. }
  40. }
  41. }
  42. }.start();
  43. 7ª FORMA
  44. <!– Script para pegar e tratar a data e a hora do sistema –>
  45. <script language=”JavaScript”>
  46. <!
  47. function Hoje() {
  48. ContrRelogio = setTimeout (“Hoje()”, 1000)
  49. Hr = new Date()
  50. dd = Hr.getDate()
  51. mm = Hr.getMonth() + 1
  52. aa = Hr.getYear()
  53. hh = Hr.getHours()
  54. min = Hr.getMinutes()
  55. seg = Hr.getSeconds()
  56. DataAtual = ((dd < 10) ? “0″ + dd + “/” : dd + “/)
  57. DataAtual += ((mm < 10) ? “0″ + mm + “/” + aa : mm + “/” + aa)
  58. HoraAtual = ((hh < 10) ? “0″ + hh + “:” : hh + “:)
  59. HoraAtual += ((min < 10) ? “0″ + min + “:” : min + “:)
  60. HoraAtual += ((seg < 10) ? “0″ + seg : seg)
  61. document.atendimento.dt_slct.value=DataAtual
  62. document.atendimento.hr_ini_slct.value=HoraAtual
  63. }
  64. //
  65. function CriaArray (n) {
  66. this.length = n }
  67. //
  68. NomeDia = new CriaArray(7)
  69. NomeDia[0] = “Domingo”
  70. NomeDia[1] = “Segunda”
  71. NomeDia[2] = “Terça”
  72. NomeDia[3] = “Quarta”
  73. NomeDia[4] = “Quinta”
  74. NomeDia[5] = “Sexta”
  75. NomeDia[6] = “Sábado”
  76. //
  77. NomeMes = new CriaArray(12)
  78. NomeMes[0] = “Janeiro”
  79. NomeMes[1] = “Fevereiro”
  80. NomeMes[2] = “Março”
  81. NomeMes[3] = “Abril”
  82. NomeMes[4] = “Maio”
  83. NomeMes[5] = “Junho”
  84. NomeMes[6] = “Julho”
  85. NomeMes[7] = “Agosto”
  86. NomeMes[8] = “Setembro”
  87. NomeMes[9] = “Outubro”
  88. NomeMes[10] = “Novembro”
  89. NomeMes[11] = “Dezembro”
  90. //
  91. Data1 = new Date()
  92. dia = Data1.getDate()
  93. dias = Data1.getDay()
  94. mes = Data1.getMonth()
  95. ano = Data1.getYear()
  96. //–>
  97. </script>
  98.  
  99. 8ª FORMA
  100. Calendar.getInstance();
  101.  
  102. 9ª FORMA
  103. new Date();
  104.  
  105. 10ª FORMA
  106. import java.util.Date;
  107. import java.text.DateFormat;
  108. import java.text.SimpleDateFormat;
  109. private String getDateTime() {
  110. DateFormat dateFormat = new SimpleDateFormat(“dd/MM/yyyy HH:mm:ss”);
  111. Date date = new Date();
  112. return dateFormat.format(date);
  113. }
  114.  
  115. 11ª FORMA (Timestamp)
  116. objLogUpdate.setData_atualizacao(new Timestamp(System.currentTimeMillis()));
  117.  
  118. 12ª FORMA (Date())
  119. java.util.Date dataAlteracao = new java.util.Date();
  120. usuario.setDataAlteracao(dataAlteracao);