javaservlet实例:Java窍门技巧:例子讲解Servlet的图象处理

        我们在处理数据时有时希望能用图象直观表述在这里有个巧思路方法能方便快捷实现些简单图形(不能称的图象)比如条形图我们不必去用 java来生成并显示图象(java生成图象很慢)我们可以这样来作先用作图工具作个很小你需要图片再根据你所处理数据量来实时加长它就可以得到所要表述图例比如我们在数据库中得到了组数据我们从中找出最大按比列设定其标签长度其它数据图形则可和它相比得到长度这样个简简单单条形图就出来但有时些简单图形已经不能解决我们实际遇到情况比如曲线图就不能用这种思路方法这时我们需要生成java图象也许大家都用过applet这样若访问量不大而实时性又很特殊时(比如股票系统)必须这样用它但事实上我们web大多有前后台的分前台浏览后台维护这样我们可以在后台用servlet实时动态定时地生成图象文件而前台只是查看静态图片这比你用applet来动态产生图象速度快了不知多少倍applet来动态产生图象有两个地方很费时是数据库查询时间 2是applet本身生成图象就很慢下面我以个简单例子来介绍说明下怎样生成并写入图象文件本例注重是怎样写入图象文件相信写过applet朋友会生成更加漂亮图象

以下是引用片段:
package test;

import javax.servlet.*;

import javax.servlet.http.*;

import java.io.*;

import java.util.*;

import java.awt.image.BufferedImage;

import com.sun.image.codec.jpeg.*;

import java.awt.image.*;

import java.awt.*;

public Servlet2 extends HttpServlet {

public void init(ServletConfig config) throws ServletException {

super.init(config);

}

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

String sFileName = "e:/temp/name.jpg";

try{

FileOutputStream fos =

FileOutputStream(sFileName);

BufferedImage myImage = BufferedImage(225, 225,BufferedImage.TYPE_INT_RGB);

Graphics g = myImage.getGraphics;

g.Color(Color.white);

g.fillRect(0,0,225,225);

g.Color(Color.black);

g.drawString("Finance Balance Summary", 40, 15);

g.drawString("Primary", 90, 30);

g.Color(Color.darkGray);

&g.fillRect(15,193,7,7);

g.Color(Color.black);

g.drawString("% Operating", 25, 200);

g.Color(Color.yellow);

g.fillRect(130,193,7,7);

g.Color(Color.black);

g.drawString("% Term", 140, 200);

g.Color(Color.lightGray);

g.fillRect(15,213,7,7);

g.Color(Color.black);

g.drawString("% Mortgage", 25, 220);

g.Color(Color.green);

g.fillRect(130,213,7,7);

g.Color(Color.black);

g.drawString("% Lease", 140, 220);

JPEGImageEncoder jpg =

JPEGCodec.createJPEGEncoder(fos);

jpg.encode(myImage);

}catch (Exception e){

String exceptionThrown = e.toString;

String sourceOfException = " Method";

.out.prln("Origional Exception Thrown: " +

exceptionThrown + '\r' + '\n');

.out.prln("Origional SourceOfException: " +

sourceOfException + '\r' + '\n');

} // CatchStatementEnd

}

}

Tags:  javaservlet编程 servlet实例 javaservlet javaservlet实例

延伸阅读

最新评论

发表评论