Data diretamente do servidor

Alguém sabe como eu faço para pegar a data diretamente do servidor em uma aplicação, porque se eu pegar a data do sistema, como eu estou fazendo, o usuário pode estar com a sua data incorreta… por favor, preciso de ajuda…

Como seria essa aplicação ela servidor de banco de dados, eu pegaria a hora direto pelo banco…

T++

[quote=“yuusuke_urameshi2”]Como seria essa aplicação ela servidor de banco de dados, eu pegaria a hora direto pelo banco…

T++[/quote]

Eu teria que pegar esta data de um servidor de banco de dados, que também é um servidor de aplicação

Então pegue a data do banco e não a data do cliente.
A data que será do banco é mesma do servidor.

No oracle por exemplo:

select to_char(sysdate,'HH:MI') as hora_atual from dual;

Ok

[quote=“yuusuke_urameshi2”]Então pegue a data do banco e não a data do cliente.
A data que será do banco é mesma do servidor.

No oracle por exemplo:

select to_char(sysdate,'HH:MI') as hora_atual from dual;

Ok[/quote]

Deu certo aki na minh base de dados, mas como eu faria para pegar também os segundos?

[quote=“Ping”][quote=“yuusuke_urameshi2”]Então pegue a data do banco e não a data do cliente.
A data que será do banco é mesma do servidor.

No oracle por exemplo:

select to_char(sysdate,'HH:MI') as hora_atual from dual;

Ok[/quote]

Deu certo aki na minh base de dados, mas como eu faria para pegar também os segundos?[/quote]

Consegui só mudar para

select to_char(sysdate,'HH:MI:SS') as hora_atual from dual;

[quote=“Ping”][quote=“Ping”][quote=“yuusuke_urameshi2”]Então pegue a data do banco e não a data do cliente.
A data que será do banco é mesma do servidor.

No oracle por exemplo:

select to_char(sysdate,'HH:MI') as hora_atual from dual;

Ok[/quote]

Deu certo aki na minh base de dados, mas como eu faria para pegar também os segundos?[/quote]

Consegui só mudar para

select to_char(sysdate,'HH:MI:SS') as hora_atual from dual; [/quote]

Mais uma coisinha, neste projeto que eu estou envolvido a gente usa o Banco de Dados Oracle, e o JDeveloper. Você não saberia como, através do meu ViewObject, executar o sql acima e pegar o resultado dele.
Obs: Na faculdade eu aprendi como fazer isso da maneira mais “simples”, através de um Connection, um Statemnet eu ResultSet

Desculpa não uso o JDeveloper, eu uso msm Connection Statement e ResultSet…

Flw

[quote=“yuusuke_urameshi2”]Desculpa não uso o JDeveloper, eu uso msm Connection Statement e ResultSet…

Flw[/quote]

Mas mesmo assim brigadão pela sua ajuda, foi muito útil

E pra pegar a data no banco de dados, qual seria o sql?

Assim

select to_char(sysdate,'dd/mm/yyyy') as data from dual;

QQ coisa

[quote=“yuusuke_urameshi2”]Assim

select to_char(sysdate,'dd/mm/yyyy') as data from dual;

QQ coisa[/quote]

Você não teria em mãos este código SQL para outros Banco de Dados?

Que isso… fazer uma consulta no banco somente para pegar o horario eh dose hein?!

Com um simples new Date(), System.currentTimeMillis(), metodos do GregorianCalendar e afins, vc ja tems bilhares de opcoes de pegar a data…
Logicamente a data retornada, assim como a retornada com essa maluquice de consultar o banco, sera a data do servidor, e nao a data que esta no micro do usuario.

Rafael

[quote=“Rafael Steil”]Que isso… fazer uma consulta no banco somente para pegar o horario eh dose hein?!

Com um simples new Date(), System.currentTimeMillis(), metodos do GregorianCalendar e afins, vc ja tems bilhares de opcoes de pegar a data…
Logicamente a data retornada, assim como a retornada com essa maluquice de consultar o banco, sera a data do servidor, e nao a data que esta no micro do usuario.

Rafael[/quote]

Me desculpe, mas com um simples new Date() ele me retorna a data do micro não do servidor, e também os métodos do GregorianCalendar retornam a data do micro

O sistema somente ira retornar a data do micro do usuario se a aplicacao rodar no proprio micro desse usuario. Se a aplicacao roda em um servidor, como um sistema web, a data retornada sera a presente no servidor web.
Se esta retornando a data do cliente, voce esta fazendo alguma coisa errada ou acha que a data retornada eh a do cliente.

Rafael

Com certeza a forma mais correta seria usar o new Date(), porem no meu caso não sei o caso do Ping a minha aplicação é swing e roda no cliente, com certeza todo mundo sabe se a aplicação é web a data que iria retornar seria a do server…

[]'s

[quote=“Rafael Steil”]O sistema somente ira retornar a data do micro do usuario se a aplicacao rodar no proprio micro desse usuario. Se a aplicacao roda em um servidor, como um sistema web, a data retornada sera a presente no servidor web.
Se esta retornando a data do cliente, voce esta fazendo alguma coisa errada ou acha que a data retornada eh a do cliente.

Rafael[/quote]

A nossa idéia era disponibilizar na WEB para que os clientes baixassem o programa com o Java Web Start, fazendo isso o programa vai pegar qual data?

JWS vai rodar no micro do usuario. Ai sim a data seria a da maquina dele., ja que a aplicacao nao sera remota.

Rafael

[quote=“Rafael Steil”]JWS vai rodar no micro do usuario. Ai sim a data seria a da maquina dele., ja que a aplicacao nao sera remota.

Rafael[/quote]

Então eu vou ter que fazer do jeito que estou fazendo, pegando a data do Banco de Dados… então se alguém tiver os script para outros Bancos além do Oracle, por favor, me passe, valeu…

O manual de cada banco de dados resolve o teu problema…

Por exemplo, no www.mysql.com, secao Documentation, eh soh vc procurar por Date and Time … la, dentre oturas, voce ira ver que da pra fazer

SELECT NOW();

E assim por diante…

Rafael