05
May
10

Diagrama de barras en JSP


Este es parecido al anterior es un poquito mas complejo, para esto debemos conocer:
1) la estructura de una aplicacion JSP.
2)entender lo que es un Servlet y como se usa.

lo importante del primer punto es que en toda aplicación JSP hay una carpeta WEB-INF, bueno dentro de esta creamos un archivo llamado web.xml, los archivos xml lo usaremos para definir variables o parámetros…

está es la estructura del archivo web.xml

<web-app>

<servlet>
<servlet-name>Imagen</servlet-name>
<servlet-class>jfc.Imagen</servlet-class>
</servlet>
<servlet-mapping>

<servlet-name>Imagen</servlet-name>
<url-pattern>/servlet/Imagen</url-pattern>
</servlet-mapping>
</web-app>

Definiendo el servlet:

// esta es una etiqueta como en html para declarar un serlet
Imagen
Imagen //este es el nombre del servlet
jfc.Imagen
jfc.Imagen// y esta es la direccion de la clase
// cerramos el servlet
el nombre es la forma como lo llamaremos
y la clase es la direccion completa de la clase
osea paquete1.paquete2.paquete3.Clase
Haciendo el mapeo:

<servlet-mapping>
<servlet-name>Imagen</servlet-name>
<url-pattern>/servlet/Imagen</url-pattern>
</servlet-mapping>
</web-app>

el nombre del Servlet debe ser el mismo que escribimos en la etiqueta sevlet

/servlet/Imagen el camino esto hace referencia a la forma como lo llamaremos dentro de la pagina jsp

con eso hemos terminado con el web.xml

ahora creamos una clase pues como allá arriba dijimos que se llamaba Imagen y estaba en el paquete jfc aquí está el codigo:

package jfc;
import java.io.IOException;
import java.io.OutputStream;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.DefaultCategoryDataset;

public class Imagen extends HttpServlet{

	public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
		doGet(request,response);
	}

	public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
		OutputStream out = response.getOutputStream();
		try {
			DefaultCategoryDataset dataset = new DefaultCategoryDataset();
			int i = 0;
			for (i = 0; i<15;i++){
				dataset.addValue((int)(Math.random()*100) , "Ventas", ""+i);
			}
			JFreeChart chart = ChartFactory.createBarChart("Tabla de Ventas", "Fecha", "Cantidad", dataset, PlotOrientation.VERTICAL, true, true, true);
			response.setContentType("image/png");
			ChartUtilities.writeChartAsPNG(out, chart, 700, 400);
		}catch (Exception e) {
			System.err.println(e.toString());
		} finally {
			out.close();
		}
	}
}

Esto es parecido a lo que hemos hecho anteriormente pero ahora tenemos:

  1. extends HttpServlet //extedemos de HttpServlet
  2. public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
    doGet(request,response);
    }
  3. public void doGet(HttpServletRequest request, HttpServletResponse response)throwsServletException, IOException {…..
  4. creamos el diagrama ya he explicado eso en otro entrada
  5. OutputStream out = response.getOutputStream(); sacamos la salida
  6. response.setContentType(“image/png”); decimos que pondremos una imagen png
  7. ChartUtilities.writeChartAsPNG(out, chart, 700, 400); y escribimos el char en la salida

la salida es una pagina nueva que será escrita asi como se escriben imagenes se puede escribir lo que sea

el resto es la interfaz una pagina jsp que llame a el servlet

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Ejemplo JFreeChar JSP</title>
</head>
<body>
<a href="servlet/Imagen">imagen</a>
</body>
</html>

debe verse así


descargatelos aquí el de apache y el de netbeans


0 Responses to “Diagrama de barras en JSP”



  1. Dejar un comentario

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s


I+Ds

Dudas consultas
Facebook
Twiter
Google +

Escribe tu dirección de correo electrónico para suscribirte a este blog, y recibir notificaciones de nuevas publicaciones por correo.

Únete a otros 348 seguidores

Ingenio DS en Facebook

Redes Sociales y Archivos

Entradas

mayo 2010
L M X J V S D
« Abr   Jun »
 12
3456789
10111213141516
17181920212223
24252627282930
31  

IngenioDS en twiter


A %d blogueros les gusta esto: