Como se captura a hora?

Bom dia a todos.

Estou tentando capturar a hora por completo, mas só consigo capturar separadamente.

Calendar dia1 = Calendar.getInstance(); int hr = dia1.get(Calendar.HOUR_OF_DAY); int mn = dia1.get(Calendar.MINUTE);

Dessa forma eu capturo, mas as variáveis são em Int, gostaria de saber como faço para capturar a hora normalmente, ou seja, HH:MM e qual seria a variável que utilizaria.

Grato pela atenção.

String formatoDeOrigem = "yyyy-MM-dd hh:mm:ss";
String formatoDestino = "dd/MM/yyyy hh:mm:ss";
Date agora = Calendar.getInstance().getTime();
SimpleDateFormat formatador = new SimpleDateFormat( formatoDeOrigem );
Date dataFormatada = formatador.parse( agora );
formatador.applyPattern( formatoDestino );

System.out.println( "Data e hora no formato brasileiro é: "+ formatador.format( dataFormatada ) );
Calendar cal = Calendar.getInstance();
		// formato 24h (0-23)
		int hourOfDay = cal.get(Calendar.HOUR_OF_DAY);
		int minutes = cal.get(Calendar.MINUTE);
		// formata hora e minuto com zero à esquerda, se precisar
		DecimalFormat formatter = new DecimalFormat("00");
		StringBuilder sb = new StringBuilder(32);
		sb.append(formatter.format(hourOfDay)).append("h");
		sb.append(formatter.format(minutes)).append(".");
		
		
		return sb.toString();

Neste caso não esqueça de import java.text.DecimalFormat;

Opa, beleza!!Pode fazer algo assim também:

SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss"); sdf.format(new Date());
O objeto sdf retornará as horas pra você!

Beleza galera valeu mesmo, mas agora apareceu outro problema. Quando tento compilar aparece o seguinte erro:

Compiling 1 source file to C:\Programas\Java\MexeBD\build\web\WEB-INF\classes
C:\Programas\Java\MexeBD\src\java\Banco.java:50: reference to Date is ambiguous, both class java.sql.Date in java.sql and class java.util.Date in java.util match
             sdf.format(new Date());

Sei q isto aparece por estar usando as classes java.sql.Date e java.util.Date, só que elas são necessárias. Existe alguma forma de burlar isso ?

Agradeço desde já.

Opa, beleza!!Não tem porque você usar duas vezes!!

Na verdade está assim:

import java.io.*;
import java.text.*;
import java.util.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;

Mas como falei anteriormente, ambas são necessárias.

Defina o que você quer em util ou sql. Veja em quais dos pacotes você precisa usar menas classes. Exemplo:

import java.util.List;
import java.util.Set;
import java.util.HashSet;
java.sql.*;

Ou vice-versa!

Rapaz parece coisa de doido, mas só foi trocar o * de util por Date, q deu certo. Agora ficou assim:

import java.io.*; import java.text.*; import java.util.Date; import javax.servlet.*; import javax.servlet.http.*; import java.sql.*;

Valeu pela ajuda chefe. Precisando estamos aí. Um abração.