Java e postgre

35 respostas
M

Olá,

quero criar uma aplicação web compilada, que possa “esconder o fonte” em java para acessar meu banco de dados feito em postgre .

Alguém já fez algo desse tipo (como acessar o postgre usando java) ??
Qual programa uso para criar a aplicação web em java (visual) ??

Obrigado.

35 Respostas

J

É só pegar o driver JDBC no site do postgresql, tem um video aí que talvez ajude: http://jairelton.com

Os design pattern DAO tambem é interessante.

A parte visual você pode criar com qualquer coisa que edite HTML, geralmente o pessoal usa o WTP no Eclipse.

M

Desculpe a pergunta, mas o o que eh wtp ??

Nao conheco nada no eclipse ainda …

Apenas criei um projet e uma class …

Agora preciso criar visualmente os buttons, os forms …

Como faço isso ??

J

E só pra saber, você tem bastante conhecimento em JSE? Porque é essencial saber bem JSE antes de estudar web, ou você não vai sair do lugar.

M

Tenho uma dúvida :

Devo fazer a aplicação normal em java e no site fazer uma chamada para executar esta aplicação ou no eclipse já crio direto uma aplicação para a web ?? Como crio no eclipse ??

J

Você deve criar uma aplicação web…

Você pode criar na mão no Eclipse, ou instalar o WTP e criar um “Dinamic Web Project”

M

Como crio a aplicação web pelo eclipse …

Qual método é melhor, via eclipse ou wtp ???

J

Todos dois são “via Eclipse” ué, WTP é só um plugin pro Eclipse, o Eclipse sem plugins não cria aplicações web (cria classes comuns, você tem que editar tudo na mão), eu recomendo que faça na mão, já que está iniciando… (e que siga a recomendação anterior tambem)

M

Já estou baixando o plugin do wtp, sao 182 mb, confirma ??

( nome do arquivo: wtp-all-in-one-sdk-r-1.5.0-200606281455-win32.zip )

Depois descompacto o arquivo dentro da pasta \eclipse\puglins

J

Esse arquivo aí vem com o Eclipse e o WTP juntos, não é pra descompactar dentro de \eclipse\puglins

Se você tiver o Eclipse 3.2 é só ir em Help --> Software Updates --> Find and Install e escolher o WTP e suas dependencias…

Mas já que está baixando esse aí, serve tambem…

M

o eclipse que to usando eh o 3.1 …

to baixando o arquivo do site que vc colocono topico acima

aonde descompacto esse arquivo entao …

J

Esse arquivo é um Eclipse “turbinado”…

Você instala igual você instalou o outro Eclipse que você tem aí, só descompactar em qualquer lugar e abrir o eclipse.exe

M

Estou baixando o seguinte arquivo :

wtp-R-1.5.0-200606281455.zip (29,2 mb)

o outro arquivo não consigo baixar … acho que deve ser da internet …

esse arquivo eu só descompacto na pasta plugins ??

M

ja baixei os arquivos e descompactei dentro da pasta eclipse …

como faco agora para criar uma aplicacao web ???

J

Vá em Window --> Open Perspective --> Other --> selecione J2EE

Crie um novo projeto do tipo “Dinamic Web Project”

M

ok vou criar algo aqui, consegui baixar o primeiro arquivo, de 182 mb, agora to com o eclipse 3.2 …

valeu pelas dicas …

M

ja criei o novo project -> dynamic web project

o que faco agora ??

M

criei um novo file => jsp …

coloquei apenas algum conteúdo teste na página …

como faço para rodar na web essa aplicação …

J

Clique com o botão direito nela e vá em Run as --> Run on Server

M

Ta ja instalei o jboss, criei uma aplicacao de teste, rodou legal, agora preciso acessando um banco de dados postgre com este arquivo .jsp ???

Como faço a conexão com o postgre ???

J

Pegue o driver JDBC no site do postgre e faça a conexão usando JDBC, tem um video sobre JDBC em http://jairelton.com e aqui no PJ tambem tem tutoriais…

M

qual driver devo baixar do postgre ???

J

http://jdbc.postgresql.org/download/postgresql-8.1-407.jdbc3.jar

M

Ta ok baixei o arquivo como faco pra instalar e aonde (qual pasta do postgre ? )

J

Não tem nada pra instalar, coloca esse jar no classpath (pasta lib em uma aplicação web) e pronto.

M

coloquei o arquivo na seguinte pasta, esta correto :

C:\Arquivos de programas\Java\jre1.5.0_08\lib

M

coloquei tabme na pasta, aonde esta instalado o jboss

C:\Arquivos de programas\jboss-4.0.4.GA\lib

a outra pasta eh onde ta instalado o java …

o postgre esta instalado num outra maquina, nao na minha …

J

A pasta lib que falei é:

sua_app\WEB-INF\lib

ou

JBOSS\server\default\lib

E já que está usando o Eclipse, tem que adicionar ao projeto tambem, é só ir em propriedades do projeto, “Java Build Path” --> Libraries --> Add External Jar

M

ok copiei nas duas pastas e adicionei o arquivo .jar …

o que mais ???

J

Mais nada…

Manda ver no codigo agora…

Vê o video e o tutorial que eu falei aí…

M

vc tem algum exemplo de codigo pronto que acesse postgre ???
pois nao tenho nada, nao sei nem por onde comecar …

J

Já leu os tutoriais? Lá tem.

M

Neste exemplo que peguei pronto na web para mysql :

Connection con;

Statement stm;

try {

Class.forName(“org.gjt.mm.mysql.Driver”);

con=driverManager.getConnection"jdbc:mysql://localhost:3306/teste",root,root);

stm = con.createStatement();

out.println(“Conexão efetuada com sucesso”);

} catch (Exception e) {

out.println(“Não foi possível conectar ao banco” + e.getMessage());

}

nao entendi a linha que comeca com "Class.forName … "
e a linha de baixo, "con= … "

o que devo alterar nessas linhas para acessar o postgre instalado em outra maquina …

na primeira linha Class.forName(org.gjt.mm.mysql.Driver);

devo colocar o nome do driver que baixei pro postgre, ou seja, ficaria assim :  Class.forName(postgresql-8.1-407.jdbc3.jar);

correto ??
e na segunda linha :

con=driverManager.getConnection"jdbc:mysql://localhost:3306/teste",root,root);

sei que tem que colocar o usuario e senha do postgre nos dois ultimos campos, certo ???  ( no lugar de root,root )

e no primeiro campo ( jdbc:mysql://localhost:3306/teste ) devo colocar

" jdbc:odbc:\ ip da outra maquina que tem o postgre \ nome do database do postgre "

correto ???

me corriga se estiver errado …
obrigado

J

Você viu o video ou o tutorial que eu recomendei sobre JDBC? Porque lá explica o que é isso, mas vamos lá:

Class.forName() carrega uma classe com base em seu nome, ao carregar a classe do driver ela se registra no DriverManager, então você tem que especificar o nome da classe do driver do postgre, que você encontra na documentação, mas vai aí pronta pra você: org.postgresql.Driver

O DriverManager.getConnection() obtem uma conexão com base em uma URL, usuario e senha, a URL é especifica de cada driver, cada um define seu formato, ela começa com jdbc: e o que vem depois você tem que olhar na documentação do driver, mas vai aí pronta pra você de novo:

jdbc:postgresql://ip_do_servidor:porta/nome_do_banco

se a porta for a padrão ela é opcional…

M

segue o arquivo index.jsp

<%@ page language=java import=java.sql.* contentType="text/html; charset=ISO-8859-1"

pageEncoding=ISO-8859-1%>

<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”>

<html>

<head>

<meta http-equiv=“Content-Type” content=“text/html; charset=ISO-8859-1”>

<title>teste</title>

</head>

<body>
&lt;%
    out.println("teste");
    Connection con;
    Statement stm;
    try {
	    Class.forName("org.postgresql.Driver");
		con = DriverManager.getConnection("jdbc:postgresql://10.1.1.15:5432/finan","postgres","teste");
    	stm = con.createStatement(); 
		out.println("Conexão efetuada com sucesso");
    	}
    catch (Exception e) {
		//out.println("Operador, não foi possível conectar ao banco " + e.getMessage());
		out.println("Operador, não foi possível conectar ao banco !!");
		}
%&gt;

</body>
</html>

na outra maquina em que esta o postgre, o seu ip eh o acima, a porta do postgre eh 5432, o nome da database eh finan, o usuario e senha coloquei do postgre mesmo …

M

consegui acessar, muito obrigado pelas dicas …

Criado 18 de setembro de 2006
Ultima resposta 22 de set. de 2006
Respostas 35
Participantes 2