Tutorial Retirando Sql do seu código JAVA  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
rocha
Virtual Machine Man
[Avatar]

Membro desde: 28/04/2003 10:23:56
Mensagens: 718
Localização: São José dos Campos e Poá - SP.
Offline


A LINHA
está certa?

"As religiões formalistas tendem à fixação das crenças e à cristalização dos sentimentos; fossilizam a Verdade; desviam-se do serviço de Deus para o da Igreja; lutam entre si e entre os irmãos, em nome do amor, dando origem ao aparecimento das seitas e das divisões; estabelecem autoridades eclesiásticas pressivas; conduzem ao nascimento do falso estado mental aristocrático de povo eleito; mantêm ideias falsas e exageradas sobre a santidade; tornam-se rotineiras e petrificadas e acabam por venerar o passado, ignorando as necessidades do presente."

Rodrigo
http://www.rrochas.com.br
[Email] [WWW] [MSN]
Rafael Steil
Administrador
[Avatar]

Membro desde: 31/08/2002 02:35:53
Mensagens: 5984
Localização: São Paulo
Offline

Esta sim. Voce pode definir valores iniciais para os membros da classes no ato da declaracao.

Rafael

"working code attracts people who want to code. Design documents attract people who want to talk about coding - Charles Miller"

http://rafaelsteil.com
http://twitter.com/rafaelsteil
http://www.jforum.net
http://www.flickr.com/photos/rafaelsteil
[Email] [WWW]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Está errada. O correto seria:

protected static Querymanager queryManager = new Querymanager("arquivoMysql.txt");

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
rocha
Virtual Machine Man
[Avatar]

Membro desde: 28/04/2003 10:23:56
Mensagens: 718
Localização: São José dos Campos e Poá - SP.
Offline

mas queryManager é um menbro da classe?

Pois o erro q apresenta é q queryManager não está denfinida

"As religiões formalistas tendem à fixação das crenças e à cristalização dos sentimentos; fossilizam a Verdade; desviam-se do serviço de Deus para o da Igreja; lutam entre si e entre os irmãos, em nome do amor, dando origem ao aparecimento das seitas e das divisões; estabelecem autoridades eclesiásticas pressivas; conduzem ao nascimento do falso estado mental aristocrático de povo eleito; mantêm ideias falsas e exageradas sobre a santidade; tornam-se rotineiras e petrificadas e acabam por venerar o passado, ignorando as necessidades do presente."

Rodrigo
http://www.rrochas.com.br
[Email] [WWW] [MSN]
Rafael Steil
Administrador
[Avatar]

Membro desde: 31/08/2002 02:35:53
Mensagens: 5984
Localização: São Paulo
Offline

danieldestro wrote:Está errada. O correto seria:

protected static Querymanager queryManager = new Querymanager("arquivoMysql.txt");


Bom.. eu considerei que ele apenas abreviou o codigo do exemplo

Rafael

"working code attracts people who want to code. Design documents attract people who want to talk about coding - Charles Miller"

http://rafaelsteil.com
http://twitter.com/rafaelsteil
http://www.jforum.net
http://www.flickr.com/photos/rafaelsteil
[Email] [WWW]
rocha
Virtual Machine Man
[Avatar]

Membro desde: 28/04/2003 10:23:56
Mensagens: 718
Localização: São José dos Campos e Poá - SP.
Offline

Blz valeu e desculpe pela inocencia.....rsr

"As religiões formalistas tendem à fixação das crenças e à cristalização dos sentimentos; fossilizam a Verdade; desviam-se do serviço de Deus para o da Igreja; lutam entre si e entre os irmãos, em nome do amor, dando origem ao aparecimento das seitas e das divisões; estabelecem autoridades eclesiásticas pressivas; conduzem ao nascimento do falso estado mental aristocrático de povo eleito; mantêm ideias falsas e exageradas sobre a santidade; tornam-se rotineiras e petrificadas e acabam por venerar o passado, ignorando as necessidades do presente."

Rodrigo
http://www.rrochas.com.br
[Email] [WWW] [MSN]
Rafael Steil
Administrador
[Avatar]

Membro desde: 31/08/2002 02:35:53
Mensagens: 5984
Localização: São Paulo
Offline

OK, mas e ai? conseguiu resolver o problema / duvida?

Rafael

"working code attracts people who want to code. Design documents attract people who want to talk about coding - Charles Miller"

http://rafaelsteil.com
http://twitter.com/rafaelsteil
http://www.jforum.net
http://www.flickr.com/photos/rafaelsteil
[Email] [WWW]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Rafael Steil wrote:Bom.. eu considerei que ele apenas abreviou o codigo do exemplo

Rafael


Ñháááaáaaaaaaa

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
rocha
Virtual Machine Man
[Avatar]

Membro desde: 28/04/2003 10:23:56
Mensagens: 718
Localização: São José dos Campos e Poá - SP.
Offline



Pessoal não entendi o q é USUARIO_SELECT_BY_NAME neste exemplo..


"As religiões formalistas tendem à fixação das crenças e à cristalização dos sentimentos; fossilizam a Verdade; desviam-se do serviço de Deus para o da Igreja; lutam entre si e entre os irmãos, em nome do amor, dando origem ao aparecimento das seitas e das divisões; estabelecem autoridades eclesiásticas pressivas; conduzem ao nascimento do falso estado mental aristocrático de povo eleito; mantêm ideias falsas e exageradas sobre a santidade; tornam-se rotineiras e petrificadas e acabam por venerar o passado, ignorando as necessidades do presente."

Rodrigo
http://www.rrochas.com.br
[Email] [WWW] [MSN]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

É um atributo que contém a chave que identifica o SQL configurado no arquivo.

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
rocha
Virtual Machine Man
[Avatar]

Membro desde: 28/04/2003 10:23:56
Mensagens: 718
Localização: São José dos Campos e Poá - SP.
Offline

Legal se meu arquivo está configurado assim:



como eu faço para indentificar a 1º sql

assim cliente.insert

"As religiões formalistas tendem à fixação das crenças e à cristalização dos sentimentos; fossilizam a Verdade; desviam-se do serviço de Deus para o da Igreja; lutam entre si e entre os irmãos, em nome do amor, dando origem ao aparecimento das seitas e das divisões; estabelecem autoridades eclesiásticas pressivas; conduzem ao nascimento do falso estado mental aristocrático de povo eleito; mantêm ideias falsas e exageradas sobre a santidade; tornam-se rotineiras e petrificadas e acabam por venerar o passado, ignorando as necessidades do presente."

Rodrigo
http://www.rrochas.com.br
[Email] [WWW] [MSN]
Rafael Steil
Administrador
[Avatar]

Membro desde: 31/08/2002 02:35:53
Mensagens: 5984
Localização: São Paulo
Offline

Tenha sempre em mente que esse arquivo de queries vc vai carregar atraves da classe Properties (java.util.Properties). Ai, para pegar a query "cliente.insert", simplesmente faca



onde "props" eh a instancia do java.util.Properties.

Rafael

"working code attracts people who want to code. Design documents attract people who want to talk about coding - Charles Miller"

http://rafaelsteil.com
http://twitter.com/rafaelsteil
http://www.jforum.net
http://www.flickr.com/photos/rafaelsteil
[Email] [WWW]
rocha
Virtual Machine Man
[Avatar]

Membro desde: 28/04/2003 10:23:56
Mensagens: 718
Localização: São José dos Campos e Poá - SP.
Offline

Blz....

Agora é a última:

qdo tenho um arquivo assim:

cliente.selectNome=SELECT tc.* FROM tblcliente tc where tc.idcliente = tc.idcliente AND ? LIKE ? AND ? LIKE ? order by nome

dai faço isso:



Como faço para substituir os demais ? nesta mesma linha ps.setString(1, "nome"); é possível?

"As religiões formalistas tendem à fixação das crenças e à cristalização dos sentimentos; fossilizam a Verdade; desviam-se do serviço de Deus para o da Igreja; lutam entre si e entre os irmãos, em nome do amor, dando origem ao aparecimento das seitas e das divisões; estabelecem autoridades eclesiásticas pressivas; conduzem ao nascimento do falso estado mental aristocrático de povo eleito; mantêm ideias falsas e exageradas sobre a santidade; tornam-se rotineiras e petrificadas e acabam por venerar o passado, ignorando as necessidades do presente."

Rodrigo
http://www.rrochas.com.br
[Email] [WWW] [MSN]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Os "?" só podem ser usados em lugares pare se atribuirem valores para uma cláusula de compração, por exemplo e não para o nome de tabelas ou colunas.

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
Rafael Steil
Administrador
[Avatar]

Membro desde: 31/08/2002 02:35:53
Mensagens: 5984
Localização: São Paulo
Offline

Os numeros sao pela ordem. Portanto, se vc tem



o p.setXxx(1, valor) vai substituir o primeiro ?, p.setXxx(2, outroValor) vai para o segundo ? e assim por diante.Porem, algumas consideracoes sobre o teu exemplo: o setString() coloca aspas automaticamente na hora de substituir o respectivo ? (e essa eh uma grande vantagem, ja que vc ganha em seguranca). Logo, isso significa que fazer




onde o primeiro no lugar do primeiro ? vc deseja que seja colocado o nome do campo nao vai funcionar da maneira esperada, ja que o resultado, apos a substituicao, sera algo como



veja que vai ficar com aspas. Nesses casos de queries montadas dinamicamente, vc vai ter que fazer concatenacao de Strings mesmo. O mesmo vale para o LIKE. Voce nao vai ter sucesso com a expressao



pelo mesmo lance em relacao ao funcionamento do setString(). A solucao para isso eh passar os % pelo setString, como abaixo:



isso vai dar conta do recado. Note que vc nao passa as aspas, e sim deixa que a o PreparedStatement faca isso apra voce.

Sobre montar a query dinamicamente quando vc nao sabe de antemao o nome do campo a ser usado, isso somente eh "valido" quando vc vai estar concatenando o nome do campo, e nao o valor, o qual deve ainda ser feito via PreparedStatement.
O teu exemplo

cliente.selectNome=SELECT tc.* FROM tblcliente tc where tc.idcliente = tc.idcliente AND ? LIKE ? AND ? LIKE ? order by nome

pode entao ser feito assim:

cliente.selectNome=SELECT tc.* FROM tblcliente tc where tc.idcliente = tc.idcliente AND #CAMPO# LIKE ? AND #OUTRO_CAMPO# LIKE ? order by nome

onde vc vai mudar, via codigo Java, as string #CAMPO# e #OUTRO_CAMPO# pelo nome do campo. Algo como



Rafael

"working code attracts people who want to code. Design documents attract people who want to talk about coding - Charles Miller"

http://rafaelsteil.com
http://twitter.com/rafaelsteil
http://www.jforum.net
http://www.flickr.com/photos/rafaelsteil
[Email] [WWW]
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team