Salvar String no proprio programa ..?

21 respostas
kiq095

Oi gente …

to com um duvida …

quero criar como se fosse um conector universal de banco de dados … onde ele vai se conectar a qualquer banco de dados …
mais sei q pra isso vo precisar de um drive e um url …ai q ta …
quero q o usuário digite o drive e a url para o programa … para q assim possa conectar … mais quero q esse dados fiquem salvos no programa ate q o usuário deseje altera-los … tipo vamos supor q me conectei com um banco hoje … e drive e Jbd.test.or.qualquercoisa e a url e localhost/c/bancodedados.bd beleza conectou … e ira permanecer assim ate q o usuario clique em um botao do tipo alterar banco de dados …

ai ele entra com um novo drive e uma nova url … que irao ficar ate q ele deseje alterar novamente …

so q tem um detalhe … quero q isso permaneça ate mesmo depois q o programa fosse fexado e ao iniciar ele novamente iria se conectar com o banco q ja estava conectado … so mudando o banco de acordo com a vontade do usuario…

ai q vem o problema … eu queria faser isso sem usar nehum tipo de banco de dados … ou seja as strings seriao salvas no proprio programa …

isso e possivel … tipo colocar essa string digitada pelo usuario … em um label ou uma variavel q nao se apagase e nao perdese essa informaçao

ISSO E POSSÍVEL ???

se for como faço isso …???

21 Respostas

romarcio

Você poderia salvar essas informações em um arquivo. Fora banco de dados e arquivos, acho que não teria outra forma não.

fredericoengels

Você pode criar uma classe chamada Conexao, com os atributos e salvar essa classe em um arquivo (implements java.io.Serializable) , ao abrir o programa você abre o arquivo e recupera o objeto. :smiley:

kiq095

Pensei em salvar em TXT ai eu apagaria o q estava la e salvava novamente …

isso tambme e possivel ???

ou faser como vcs falaram seria melhor ???

fredericoengels

É possível sim. Mas porque fazer o trabalho manualmente? Já que você pode automatizar isso.

romarcio

kiq095:
Pensei em salvar em TXT ai eu apagaria o q estava la e salvava novamente …

isso tambme e possivel ???

ou faser como vcs falaram seria melhor ???

Sim, é possível.
Mas acho que se você usasse um arquivo do tipo properties ou xml, seria melhor. Vc poderia guardar n configurações no mesmo arquivo, e seria mais fácil para localiza-las do que em um arquivo txt.

G

Oi, cara, blz?

pra isso vc tem que usar um arquivo txt mesmo, ou um xml, ou um arq binario, ou qualquer um dos 12941285709857098710987196 tipos de arquivos que existem.
pq tu nao escolhe um diretorio onde sempre vai estar teu arquivo (exemplo : C:\minhasConfigs). pode ser por exemplo, o diretorio onde ta teu programa (nao sei como vc ta usando, mas ele ta em algum lugar, ne?)

Ai tu pode testar se o arquivo de config existe, se nao existir ou tu pede pra o usuario criar um, ou tu coloca uma opção de banco de dados default

if (existeArquivo(meuArqConfig)) {
         lerArq(meuArqConfig);
} else {
         useConfigPadrao();
}

Um XML é interessante porque é bem estruturado, ne? mas se as informacoes que vc quer sao so 2, um .txt mesmo resolve. com um arquivo de uma linha tu resolve isso =) (epic win)!

Vc tem mais alguma duvida? Quer mais alguma ajuda?

kiq095

e imaginei o text mesmo … sabe por q …

vao ser somente duas linhas … 1 com o drive e outra com o url …

simples assim …ai so perria o q tava escrito ali e pronto …!
por q meu programa trabalha no minimo com 2 bancos de dados diferentes …
e toda vez q istala ele em uma maquina aqui da empresa tem q configurar ip … url … essas coisinhas … ai to crinado um programa q faz isso pra mim …pra faciliatar

e ja q to fasendo isso posso faser com q se conecte a qualquer banco … sem ficar me percupando em abrir o codigo e ficar alterando coisas tipo essas …

a detalhe cada maquina tem q ter seu proprio banco e alem disso o banco "CENTRAL " e atualisado de acordo com os dados deses bancos … para nao haver duplicaçao de dados …

a ja q vc perguntou GPMDF2 sei como salvar em txt mais nao sei como depois de salvo abrir esse arquivo e pegar esses dados … ou deletar e salvar novamente (se isso tem como)…

romarcio

Eu acho mais interessante vc ter a possibilidade de guardar os dados no arquivo, ao invés apenas de salvar uma linha com os dados do banco Oracle, também salvar outras linhas com os dados de outros bancos. Dai cria um combobox que mostre essas informações quando quiser selecionar o banco X.
Por isso sugeri o XML ou o Properties, fica mais fácil de manipular.

Mas se vc vai salvar apenas um banco no arquivo, o txt da conta sim.

kiq095

Ue estou totalmente abero a ideias …!!!

e problema e … em txt eu sei salvar … e em arquivos nunca trabalhei com isso …

se vc tiver algum material ai pra me ajudar … ou um codigo de exemplo …

ate mesmo q gosto e disso nesse fórum e q as pessoas gostam de impor suas opiniões … por q ate mesmo nem sempre o meu geito e o mais correto ou o masi facil …

mais pode ficar a vontade de expressar sua opinião gosto disso me ajudar a tomar decisões como essa … por q ate mesmo o arquivo xml pode ser muito melhor pro q eu quero …
e tem cara de ser mais seguro também …!!!

so te peso pra me dar uma certa "LUZ " (hehehe) …

obrigadao …!!

romarcio

Para usar xlm, da uma olhada nesse post http://www.guj.com.br/java/71112-criando-xml-com-jdom

kiq095

Valeu ROMARCIO …

que tiver qualquer material sobre o assunto tem como esta me enviando …!!

obrigado

kiq095

outra pergunta !!!

o xml guarda os valores de um vetor ???

tipo nome=[1,2,3,4,5,6] quardar no xml nome_xml=[1,2,3,4,5,6]

melhorar a pergunta …

existem vetores para xml ??? ou coisa assim ???

romarcio

O XML trabalha com tags. Então você pode sim guardar valores de um vetor, só tem que pensa na estrutura de tags que você precisa.
Você por exemplo, pode ter uma tag <vetor> e tags filhas <posicao1>, <posicao2>…

kiq095

tava pensando masi se for um vetor de campos da tabela igual to pesando…

ai to colocando ele com uns 100 campos e ai …???

vou ter q escrever 100 tags diferentes ???

romarcio

Primeiro vc precisa saber exatamente o que vai salvar no XML, para então pensar na melhor forma de fazer isso.

luistiagos

Acho que e melhor vc serializar e salvar o objeto… pois assim ele é mais seguro,txt ou xml qualquer um abre e ve o que quer…

romarcio

Neste caso que vc citou sobre registrar as conexões, poderia ter um XML nesse modelo:

&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt;
&lt;Conexoes&gt;
	&lt;Banco id="1"&gt;
		&lt;url&gt;jdbc:mysql://localhost/exemplo&lt;/url&gt;
		&lt;driver&gt;com.mysql.jdbc.Driver&lt;/driver&gt;
		&lt;user&gt;root&lt;/user&gt;
		&lt;pass&gt;root&lt;/pass&gt;
	&lt;/Banco&gt;
	&lt;Banco id="2"&gt;
		&lt;url&gt;jdbc:postgresql://localhost:5432/postgres&lt;/url&gt;
		&lt;driver&gt;org.postgresql.Driver&lt;/driver&gt;
		&lt;user&gt;adm&lt;/user&gt;
		&lt;pass&gt;adm123&lt;/pass&gt;
	&lt;/Banco&gt;
	&lt;Banco id="3"&gt;
		&lt;url&gt;jdbc:oracle:thin:@hostname:portNumber:sid&lt;/url&gt;
		&lt;driver&gt;oracle.jdbc.driver.OracleDriver&lt;/driver&gt;
		&lt;user&gt;oraadm&lt;/user&gt;
		&lt;pass&gt;123456&lt;/pass&gt;
	&lt;/Banco&gt;
		&lt;Banco id="4"&gt;
		&lt;url&gt;jdbc:hsqldb:hsql:/localhost/DBEmpresa&lt;/url&gt;
		&lt;driver&gt;org.hsqldb.jdbcDrive&lt;/driver&gt;
		&lt;user&gt;SA&lt;/user&gt;
		&lt;pass&gt;SA&lt;/pass&gt;
	&lt;/Banco&gt;
&lt;/Conexoes&gt;
G

Cara, viajei no que tu ta falando…

ve so… pq tu nao faz um padrao… tipo… a primeira linha do arquivo é o banco, a segunda linha é o driver… ai tu pode botasr tudo no mesmo arquivo, se quiser o segundo bando, vai pegando as informacoes so da linha 3 em diante (porque as linhas 1 e 2 sao do banco1, por exemplo)

essa coisa ai da tabela, tu pode colocar todos os valores existentes nessas 413051634561384765190837456 tabelas que tu usa, separado por sei la, virgula ou dois pontos, ou asteristo ou qualquer outra coisa… e ai tu usa String pra pegar uma linha e ja transformar em um vetor pra tu usar.

Isso resolve tuas necessidades? Como te disse, XML é muito bom pra alguma coisas, mas pra esse teu problema eu acho que nao e uma solução tao boa, nao (isso na minha visão)… Agora tu podia usar XML pra isso tb, sem problemas. Mas ai tu ia ter que pensar numas coisinhas mais elaboradas, como uma estrutura e como andar no documento XML, usando um parser, java tem uns 2 muitos bons de se usar.

ja decidisse afinal, o que vai usar? E foi mal pela demora pra te responder, blz? Eu acho que com um txt tu ia desenrolar essas coisas mais rapido. Como nao e nada muito complicado, eu usaria o txt que e uma solução mais simples.

G

olha, a ideia que mostraram do xml fica organizada dessa forma ai que te colocaram anteriormente. Realmnente, bem mais organizada.

no caso das 100 tags, da ate pra desenrolar tb usando XML sem problemas. Sem ter que colocar as 100 tags. Ve como tu queres usar ai e avisa.

tu ja sabe ler direitinho o xml?

kiq095

eee… to estudando xml aqui mesmo no guj …!!!

tava pensando … vou usar um documento pra guardar os drivers outro pra guardar o caminho… e na parte dos campos fasso uma string antes somando todos os campos ou algo assim

vai ficar uma string enorme mais e uma so e outra mesmo tendo 10000 de campos nao quer diser que o usuario ira usar todos … ele pode usar somente uns 2 ou 3 podem ser 10 vai fiar a escolha dele e somando eles vira um so … dependendo o o tanto de campos a serrem usado ou o tamanho do nome nem fica tao grande assim por isso q to pesando em faser assim … ai depois e so buscar ela e separar novamente de acordo com o simbolo de separaçao entre eles …igual a ideia do gpmdf2 … acho q isso e uma boa ideia … certo ?

khaue_viana_

eu fiz isso em xml, criei uma telinha que interage com o xml, pra cada conexão diferente (de driver diferente) ele gera um xml. E estou criando uma aplicação que permita varias conexões, pra controle de logs, geração de relatorios e gráficos.

Criado 24 de fevereiro de 2011
Ultima resposta 2 de mar. de 2011
Respostas 21
Participantes 6