import java.sql.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class JDBCExemplo extends HttpServlet {
public JDBCExemplo() {
}
public void doPost(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException {
throw new ServletException("Não implementado");
}
public void doGet(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException {
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@999.999.999.4:1521:orcl", "user", "passwd");
// Query the employee names
Statement stmt = conn.createStatement();
ResultSet rset = stmt.executeQuery("select nome from algo_tst");
// Print the name out
while (rset.next())
System.out.println (rset.getString(1));
}
}
Como compilar o meu servet
14 Respostas
Digitando “javac --help” vc tera a forma correta de compilar, que seria
javac -classpath C:\JAVA\JDev\j2ee\home\lib\Servlet.jar;C:\JAVA\JRun4\lib\ojdbc14.jar;C:\JAVA\JDev\jdbc\lib\classes12.jar JDBCExemplo.java
Rafael
meu problema não eh isso,
e sim um monte de erro que tá dando…
eu estou usando o textpad, que eh quase uma ide
só que eu não sei como compilar este servlet,
estou tedo problemas…
Quais erros estão dando cara?
meu problema não eh isso,
e sim um monte de erro que tá dando…eu estou usando o textpad, que eh quase uma ide
só que eu não sei como compilar este servlet,
estou tedo problemas…
O servlet vc compila com o comando passado anterimente. Se esta dando erros, quais sao eles?
Rafael
C:\Inetpub\wwwroot\PdfExemplo\JDBCExemplo.java:16: unreported exception java.sql.SQLException; must be caught or declared to be thrown
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
^
C:\Inetpub\wwwroot\PdfExemplo\JDBCExemplo.java:18: unreported exception java.sql.SQLException; must be caught or declared to be thrown
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.100.4:1521:orcl", "reserv", "2334267pm");
^
C:\Inetpub\wwwroot\PdfExemplo\JDBCExemplo.java:21: unreported exception java.sql.SQLException; must be caught or declared to be thrown
Statement stmt = conn.createStatement();
^
C:\Inetpub\wwwroot\PdfExemplo\JDBCExemplo.java:22: unreported exception java.sql.SQLException; must be caught or declared to be thrown
ResultSet rset = stmt.executeQuery("select nome from algo_tst");
^
C:\Inetpub\wwwroot\PdfExemplo\JDBCExemplo.java:25: unreported exception java.sql.SQLException; must be caught or declared to be thrown
while (rset.next() ){
^
C:\Inetpub\wwwroot\PdfExemplo\JDBCExemplo.java:26: unreported exception java.sql.SQLException; must be caught or declared to be thrown
System.out.println (rset.getString(1));
^
6 errors
Ferramenta concluída com código de saída 1
apenas estes!!!
é com se ele não entendesse sobre recordsets, e cobre conexões!!
Entao, olha o que a mensagem de erro diz:
Isso significa que vc deve colocar as chamadas a metodos que lancem exceptions dentro de blocos try-catch, como em
try {
// Executa codigo sql
}
catch (Exception e) {
e.printStackTrace();
}
Rafael
puxa vida…
vou então tentar!
C:\Inetpub\wwwroot\PdfExemplo\JDBCExemplo.java:28: cannot resolve symbol
symbol : variable rset
location: class JDBCExemplo
while (rset.next() ){
^
C:\Inetpub\wwwroot\PdfExemplo\JDBCExemplo.java:29: cannot resolve symbol
symbol : variable rset
location: class JDBCExemplo
System.out.println (rset.getString(1));
^
2 errors
Ferramenta concluída com código de saída 1
eu coloquei um try no código de conexão e outro no código de loop…
mas agora parece que ele não reconhece os recordsets…
o que fazer?
O erro de agora muito provavelmente eh pq vc esta com problemas de escopo. Por exemplo, vc declara uma variavel dentro de um bloco e tenta usar ela fora do mesmo. Tipo:
if (algumaCoisa) {
// declara a var
int i = 10;
}
i = 20;
a linha com
i = 20;
vai dar erro pq “int i” foi declarado dentro do bloco de codigo do if() … Procure por algo assim no teu codigo.
Rafael
cannot resolve symbol
symbol : variable rset
Ele nao esta reconhecendo o simbolo rset. Essa variavel esta declarada?
Marcio Kuchma
velho...
vc tem a manha kra...
agora deu código de saida legal...
num sei se funfa..
mas compilou...
___________________________
valeuz...
______________________________
import java.sql.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class JDBCExemplo extends HttpServlet {
public JDBCExemplo() {
}
public void doPost(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException {
throw new ServletException("Não implementado");
}
public void doGet(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException {
OutputStreamWriter osw = new OutputStreamWriter(res.getOutputStream());
PrintWriter out = new PrintWriter (res.getOutputStream());
out.println("aaaa ");
System.out.println("ouai");
try{
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@999.999.9999:1521:orcl", "user", "passwd");
// Query the employee names
Statement stmt = conn.createStatement();
ResultSet rset = stmt.executeQuery("select nome from algo_tst");//algo_tst eh uma tabela com 151 registros
// Print the name out
while (rset.next() ){
out.println (rset.getString(1));
out.println("<br>");
}
}catch(Exception e){
e.printStackTrace();
out.println(e);
}
}
}
Nao sei se eh isso, mas de um out.flush() bem no final.
Rafael
funfou…
eu dei um out.close(); e tambem funfou…
mas aproveitando a ocasião, e o contato com pessoas tão qualificadas…
como eu faço pra pegar o campo nome
tipo rset(“nome”).asString… pq usar indices tá por fora…
Eh soh passar o nome do campo ao inves do indice:
String nome = rset.getString("nome");
Rafael
muito obrigado…