Problema con la clase Date

kana
04 de Agosto del 2004
Hola a [email protected]:
Tengo que hacer un programa en java q conecte con una base de datos.Mi problema es q tengo una fecha expresada en segundos y la tengo q pasar a formato time y date para almacenarlo en la base de datos.Buscando en internet encontre q con la clase Date pasandole al constructor el tiempo de tipo long va bien, pero he estado haciendo pruebas y pasando el tiempo en milisegundos q es realmente como tiene q pasarse me dice al compilar q es demasiado largo para un integer.Os paso el codigo con el q hice pruebas.

Date date=new Date();
long ti=date.getTime();
System.out.println(ti); // muestra por pantalla 1091572100318
Date date2=new Date(ti);
long ti2=date2.getTime();
System.out.println(ti2); //muestra por pantalla 1091572100318
long ti3=1091572100318; // no me compila,pq es demasiado largo
Date date3=new Date(ti3);// lo q a mi me interesa hacer

Os agradeceria mucho vuestra ayuda

Un saludo

David

kana
04 de Agosto del 2004
Hola de nuevo:
Ya encontre la solucion, al parecer el compilador interpreta el long como un integer, para q lo interprete con un long, se necesita utilizar un const long, y esto se consigue poniendo una "L" al final del número, es decir sustituir el número por :
long ti3=1091572100318L;
Lo comprobé y funciona perfectamente.

Un saludo