`
xuxiaolei
  • 浏览: 150575 次
  • 性别: Icon_minigender_1
  • 来自: 彩虹之巅
社区版块
存档分类

使用JAVA在JSP中生成饼图

阅读更多

通过在服务器端生成图片 然后这样在页面中的图片可以真正的跨浏览器

package servlets;

import java.awt.*;
import java.awt.image.*;

import javax.imageio.*;

import java.awt.font.*;
import java.awt.geom.*;

import java.io.*;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class ImageServlet extends HttpServlet {
	
	protected void doGet(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		doPost(request, response);
	}



	protected void doPost(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		
		response.setContentType("image/jpeg");
		
		int width = 155;	//图片的宽度和高度
		int height = 155;
		
		int x = 5;
		int y = 5;
		int ellipseWidth = 145;
		int ellipseHeight = 145;

		BufferedImage bi = new BufferedImage(width, height,
				BufferedImage.TYPE_INT_RGB);
		Graphics2D g2 = (Graphics2D) bi.getGraphics();
		
		RenderingHints renderHints = new RenderingHints(RenderingHints.KEY_ANTIALIASING,
			    RenderingHints.VALUE_ANTIALIAS_ON);
		g2.setRenderingHints(renderHints);
		
		g2.setBackground(Color.WHITE);
		g2.clearRect(0, 0, width, height);
		g2.setPaint(Color.BLACK);
		
		//饼状图外面的圆圈
		Ellipse2D.Double ellipse = new Ellipse2D.Double(x, y, ellipseWidth, ellipseHeight);
		g2.draw(ellipse);
		
		g2.setPaint(Color.RED);
		g2.fillArc(x, y, ellipseWidth, ellipseHeight, 0, 120);
		
		g2.setPaint(Color.GREEN);
		g2.fillArc(x, y, ellipseWidth, ellipseHeight, 120 , 120);
		
		g2.setPaint(Color.blue);
		g2.fillArc(x, y, ellipseWidth, ellipseHeight, 240, 120);
		
			
		ImageIO.write(bi, "jpg", response.getOutputStream());
		
	}

}
 

 

<!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=GB18030">
<title>Insert title here</title>
</head>

<body>
	<img src="http://localhost:8080/myproject/ImageServlet" id="myImg">
</body>

</html>
 

 

分享到:
评论

相关推荐

    轻松使用JSP生成饼图

    【轻松使用JSP生成饼图】的教程主要介绍了如何利用JSP技术从数据库中获取数据并生成饼状图,以直观地展示不同类别数据的比例。以下是详细的步骤和知识点解析: 1. **JSP基础**:JSP(JavaServer Pages)是一种基于...

    jsp网页+饼图+sqlserver数据库

    1. 在JSP页面中,使用Java scriplets或JSTL(JavaServer Pages Standard Tag Library)来处理业务逻辑。 2. 使用JDBC建立数据库连接,执行SQL查询或更新语句。 3. 将查询结果集转换为Java对象,如ArrayList或自定义...

    JFreeChart生成饼图

    通过本篇文章,我们将深入了解如何使用`JFreeChart`来生成饼图,并将其嵌入到Web应用中。 #### 二、JFreeChart简介 `JFreeChart`是一个功能强大的Java图表类库,用于生成高质量的图表图像。它完全用Java语言编写,...

    JSP轻松的实现饼图

    - 通过在JSP页面中嵌入Java代码来处理业务逻辑,并返回动态生成的HTML页面给客户端。 2. **JSP环境配置**: - JDK版本:至少需要JDK 1.2或更高版本。 - 数据库管理:需要一个关系数据库管理系统来存储和查询数据...

    Java SSH框架显示饼图和柱形图

    在这个项目中,可能使用了像JFreeChart这样的Java库来生成饼图和柱形图。JFreeChart是一个强大的Java图形库,可以生成多种类型的统计图表,包括饼图和柱形图。 生成饼图的步骤大致如下: 1. 使用Hibernate查询...

    JFreeChart在jsp中显示柱状图、饼图

    在JSP中使用JFreeChart,需要将生成的图表作为图像输出到页面上,通常通过在服务器端创建图表,然后将其转换为流式图像对象,最后输出到HTTP响应中。 对于**柱状图**,它是数据可视化的基本元素,常用来比较不同...

    java jsp+servlet根据数据生成饼状图.rar

    总结来说,这个项目展示了如何在Java Web环境中结合使用JSP和Servlet,通过处理数据和利用图表库生成饼状图,最终以图像形式在网页上展示。这种能力在数据分析、报表系统等场景中非常常见,有助于提升用户对数据的...

    jsp动态统计图组件(包括饼图,柱图,折线图等)

    在JSP中,你可以通过这个组件快速创建饼图,例如展示产品销售的各个分类占比,或者用户来源的分布情况。它允许你自定义颜色、标签、百分比显示等,使得数据一目了然。 2. **柱状图**:柱状图是另一种常用的数据可视...

    java/jsp图表生成-JfreeChart套装(源码包,javadoc,安装手册,本人精选简明教程)

    JFreeChart是一组功能强大、灵活易用的Java绘图API,使用它可以生成多种通用性的报表,包括 柱状图、饼图、曲线图、甘特图等。它能够用在Swing和Web等中制作自定义的图表或报表,并且得 到广泛的应用。 ...

    jfreechart 生成折线图,饼图,柱状图,堆栈柱状图

    7. **与其他技术集成**:作为Java库,JFreeChart 可以方便地与Spring、Struts等框架集成,也可以在Servlet或JSP中使用,生成图表动态网页。你可以在Web应用中调用这些服务方法,生成图表并以图像格式返回给客户端。 ...

    读取数据库的数据并整合成3D饼图在jsp中显示详解

    在这个类中,我们使用了JDBC(Java Database Connectivity)来实现数据库连接,以及JFreeChart库来生成饼图。 在数据库连接部分,我们需要建立一个与数据库的连接,并执行SQL查询语句来获取所需的数据。例如,如果...

    java生成图形.doc

    5. 在Web应用中集成:在Servlet或JSP中,将生成的图像作为响应的一部分发送给客户端,或者通过AJAX请求动态生成图表并更新页面。 JFreeChart的强大之处在于其灵活性和可定制性。你可以调整图表的每一个细节,从数据...

    jsp生成pdf文件

    本篇文章将详细探讨如何在JSP页面中利用Highcharts生成的统计图表和其他信息导出为PDF。 首先,Highcharts是一个强大的JavaScript图表库,用于在网页上创建各种类型的数据可视化图表,如柱状图、折线图、饼图等。它...

    JFreeChart在JSP中的应用实例

    要在JSP中使用JFreeChart,可以通过生成SVG或PNG格式的图表,并将其嵌入到HTML中。具体步骤如下: 1. **创建图表对象**:在Java类中创建图表对象,并设置好图表的各项属性。 2. **导出图表**:使用`ChartUtilities....

    JSP使用JFreeChart生成各种图表并生成PDF文档

    在JSP中使用JFreeChart时,你需要按照以下步骤操作: 1. **引入JFreeChart库**: 在项目中添加JFreeChart的依赖,通常是通过Maven或Gradle管理,或者直接将jar文件添加到项目的类路径中。 2. **创建数据模型**: ...

    使用 jfreechart 生成 曲线、柱状图、饼状图、分布图 展示到JSP

    在JSP中使用`JFreeChart`,通常需要以下步骤: 1. **添加依赖**:在项目中引入`JFreeChart`库,这可以通过Maven或Gradle的依赖管理工具完成,或者直接将jar文件添加到项目的类路径中。 2. **创建图表**:使用`...

    java 报表生成 工具介绍

    它提供了一个标签库,使得在JSP页面中添加图表无需编写Java代码。 7. **JOpenChart**:JOpenChart库提供了创建不同类型的图表(如饼图、直方图)的能力,并且可以轻松地将图表嵌入Swing或Web应用中。 8. **iReport...

    jsp中ajax请求生成highcharts 的案例

    以上就是如何在JSP中使用Ajax请求生成Highcharts图表的基本步骤。你可以根据实际需求调整Ajax请求的方式、后端处理逻辑以及Highcharts图表的配置。此案例适用于任何支持Ajax和Highcharts的语言,只需要将JSP部分替换...

Global site tag (gtag.js) - Google Analytics