I have these 2 codes.
array.java----in which i retrieve the values from the database .
import java.util.ArrayList; import java.io.IOException; import java.io.PrintWriter; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * * @author AARUSHI */ class database { int roll; String name; int marks1; int marks2; int marks3; int marks4; public database(int r,String nm,int m1,int m2,int m3,int m4) { roll=r; name=nm; marks1=m1; marks2=m2; marks3=m3; marks4=m4; } @Override public String toString() { return roll + ":" + name + ":" + marks1 + ":" + marks2 + ":" + marks3 + ":" + marks4; } } public class arraylist extends HttpServlet { /** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods. * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); ArrayList<database> v = new ArrayList<database>(); database db; try { int rollno=Integer.parseInt(request.getParameter("txtroll")); Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con=DriverManager.getConnection("jdbc:odbc:cdotdsn"); PreparedStatement ps=con.prepareStatement("select * from cdottable where rollno=?"); ps.setString(1,""+rollno); ResultSet rs=ps.executeQuery(); out.println("hello1"); while(rs.next()) { // out.println("1st "+rs.getString(1)); // out.println("2nd "+rs.getString(2)); //out.println("3rd "+rs.getString(3)); //out.println("4th "+rs.getString(4)); // out.println("5th "+rs.getString(5)); // out.println("6th "+rs.getString(6)); int r=Integer.parseInt(rs.getString(1)); String nm=rs.getString(2); int m1=Integer.parseInt(rs.getString(3)); int m2=Integer.parseInt(rs.getString(4)); int m3=Integer.parseInt(rs.getString(5)); int m4=Integer.parseInt(rs.getString(6)); out.println(r+ nm + m1 + m2 + m3 + m4); out.println("abc"); db=new database(r,nm,m1,m2,m3,m4); v.add(db); int m=v.size(); out.println(m); out.println( v ); } con.close(); } catch(Exception e) { out.println(e); } } // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code."> /** * Handles the HTTP <code>GET</code> method. * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } /** * Handles the HTTP <code>POST</code> method. * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } /** * Returns a short description of the servlet. * @return a String containing servlet description */ @Override public String getServletInfo() { return "Short description"; }// </editor-fold> }
and a jfreechart file to display the chart.this is a separate java file. graph.java
import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartFrame; import org.jfree.chart.JFreeChart; import org.jfree.chart.plot.PlotOrientation; import org.jfree.data.category.DefaultCategoryDataset; public class barchart { public static void main(String[] args) { DefaultCategoryDataset dataset = new DefaultCategoryDataset(); dataset.setValue(6, "Marks", "sem1"); dataset.setValue(7, "Marks", "sem2"); dataset.setValue(8, "Marks", "sem3"); dataset.setValue(5, "Marks", "sem4"); dataset.setValue(12, "Marks", "sem5"); JFreeChart chart = ChartFactory.createBarChart("MARKS INFORMATION OF THE ENTERED STUDENT", "SEMESTER", "MARKS", dataset, PlotOrientation.VERTICAL, false, true,false); ChartFrame frame=new ChartFrame("student graph",chart); frame.pack(); frame.setVisible(true); } }
NOW i want that these both things should be done in a single servlet and then the chart should be displayed on a jsp..how can i do it..pls reply..its urgent.