Ajuda

1 resposta
E

Pessoal, estou precisando passar o conteúdo de algumas variáveis de uma classe java para outra classe java. Comecei a escrever o código, porém não estou conseguindo fazer funcionar.

A primeira classe “Consulta” é um servlet e recebe os dados de um formulário jsp.
Estou precisando passar este conteúdo para a outra classe abaixo “GraficoLinha”.
Como eu faço isso? Alguém pode me ajudar?

package gera_grafico;
 
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.ServletException;
import java.awt.*;
import java.io.IOException;
import java.text.*;
import java.io.*;
import java.util.*;
 
public class Consulta extends HttpServlet {
 
public void doPost ( HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException
{
String[] datas = new String[2];
String[] nrpip = new String[1];
datas[0] = request.getParameter ("DATA_INICIAL");
datas[1] = request.getParameter ("DATA_FINAL");
nrpip[0] = request.getParameter ("NRP_IP");
long valor = 1000;
 
 
Connection connection = null;
ResultSet tabela = null;
Statement instrucao = null;
try
{
// Carregando o JDBC Driver
String driverName = "org.gjt.mm.mysql.Driver"; // MySQL MM JDBC driver
Class.forName(driverName);
 
// Criando a conexão com o Banco de Dados
String serverName = "10.50.2.x";
String mydatabase = "nrp";
String url = "jdbc:mysql://" + serverName + "/" + mydatabase; // a JDBC url
String username = "xxxx";
String password = "xxxx";
connection = DriverManager.getConnection(url, username, password);
instrucao = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
 
String q="select * from erros_nrp where data >= '"+datas[0]+"' and data <= '"+datas[1]+"' and nrp_ip = '"+nrpip[0]+"'";
 
tabela = instrucao.executeQuery(q);
 
response.setContentType( "text/html" );
PrintWriter responseOutput = response.getWriter();
StringBuffer buf = new StringBuffer();
buf.append("<HTML>");
buf.append("<BODY>");
buf.append("<CENTER>");
buf.append("<TABLE BORDER=10 CELLPADDING=5><TR>");
buf.append("<th bgcolor=Green>DATA</th><th bgcolor=White>NRP_IP</th><th bgcolor=Red>ERROS</th></TR>");
int conta_erros = 0;
while (tabela.next()) {
buf.append("<TR>");
buf.append("<TD>"+tabela.getString(1)+"</TD>");
buf.append("<TD>"+tabela.getString(2)+"</TD>");
buf.append("<TD>"+tabela.getString(3)+"</TD>");
conta_erros=conta_erros + tabela.getInt(3);
buf.append("</TR>"); }; //fim do while
buf.append("<TR>");
buf.append("<TD>TOTAL DE ERROS</TD>");
buf.append("<TD></TD>");
buf.append("<TD>"+conta_erros+"</TD>");
buf.append("</TR>");
buf.append("</TABLE>");
buf.append("<hr>");
buf.append("<a href='http://10.50.2.20:8090/nrp/grafico.jsp'>teste</a>");
buf.append("</CENTER></BODY></HTML>");
 
responseOutput.println( buf.toString() );
responseOutput.close();
 
} catch (ClassNotFoundException e)
{
//Driver não encontrado
System.out.println("O driver expecificado não foi encontrado.");
} catch (SQLException e)
{
//Não está conseguindo se conectar ao banco
System.out.println("Não foi possível conectar ao Banco de Dados");
}
}
}
package gera_grafico;
 
import java.sql.*;
import java.util.Date;
import java.util.Map;
import java.io.Serializable;
import org.jfree.data.category.CategoryDataset;
import org.jfree.data.category.DefaultCategoryDataset;
import de.laures.cewolf.DatasetProduceException;
import de.laures.cewolf.DatasetProducer;
 
public class GraficoLinha implements DatasetProducer, Serializable {
  private String[] data = null;
  private String[] nrp = null;
  private long valor = 1000;
 
public GraficoLinha(String[] mydata, String[] mynrp, long myvalor){
  this.data = mydata;
  this.nrp = mynrp;
  this.valor = myvalor;
}
 
public Object produceDataset(Map params) throws DatasetProduceException {
//  Consulta cons = new Consulta();
  DefaultCategoryDataset dataset = new DefaultCategoryDataset();
 
  for (int a=0; a<nrp.length; a++){
    for (int i=0; i<data.length; i++){
      final long y = valor;
      //final int y = valor + 200 - 100;
      valor = y;
      dataset.addValue((double)y, nrp[a], data[i]);
    }
  }
  return dataset;
}
 
public boolean hasExpired(Map params, Date since){
  return (System.currentTimeMillis() - since.getTime()) > 5000;
}
 
public String getProducerId(){
  return "PageViewCountData DatasetProducer";
}
}

Obrigado.
Everton

1 Resposta

M

usando setters? :roll:

Criado 9 de junho de 2005
Ultima resposta 9 de jun. de 2005
Respostas 1
Participantes 2