Hola a todos, recurro nuevamente a ustedes ya que tengo un problema bastante frustrante, resulta que tengo en una base de datos un campo de tipo "Datetime" y bueno, estoy intentando tomar el valor de varias filas y almacenarlas en una lista. he intentado con los metodos obsoletos como el "gethour", "getsecond" etc y me lanza error "null", luego intente con
SimpleDateFormat utilizando el siguiente codigo.
La fecha me la devuelve correctamente, pero las horas, minutos y segundos me los devuelve como 00:00:00
Espero que puedan ayudarme, lo único que se me ocurre es que no se este almacenando en el ResultSet la fecha+hora, pero mucho menos sabría arreglar eso hahaha, bueno espero que puedan ayudarme
de antemano muchas gracias.
Les dejo una imagen de el valor en la base de datos y del resultado que obtengo.
ahh y el codigo del metodo con la query.
Código Java:
Ver originalpublic static Transaction buscarMetricasLentas(int fechaInicio, int fechaFin, int tranID){
int contador = 0;
Transaction transaccion = null;
try {
String query
= "Use SyntheticMonitoring " + "SELECT TransactionID, StartTimeUTC, StartTime, TotalGood, TotalBad, TotalUnavailable "
+ "FROM TransactionDetails "
+ "WHERE StartTimeUTC >= ? and StartTimeUTC <=? and TransactionID = ? "
+ "and not LocationID = 44 and TotalBad = 1";
buscar.setInt(1, fechaInicio);
buscar.setInt(2, fechaFin);
buscar.setInt(3, tranID);
while(rs.next()){
contador = contador+1;
transaccion = new Transaction(rs.getInt("TransactionID"), rs.getInt("StartTimeUTC"),
rs.getDate("StartTime"), rs.getInt("TotalGood"), rs.getInt("TotalGood"), rs.getInt("TotalUnavailable"));
System.
out.
println(dateFormat.
format(transaccion.
getStartTime())); }
System.
out.
println("Numero de filas: "+contador
); buscar.close();
conexion.close();
System.
err.
println("Error :( "); System.
err.
println(e.
getMessage()); }
return transaccion;
}
public static void main
(String[] args
) { try {
buscarMetricasLentas(1407699422, 1407706023, 226);
System.
err.
println("Error :( "); System.
err.
println(e.
getMessage()); }
}