import javaio*; import javautil*; import comsunimagecodecjpeg*; import javaxservlet*; import javaxservlet*;
import javaawt*; import javaawtimage*; public class JPEGServlet extends HttpServlet {
private String strFile="c:counttxt"; private Font mFont=new Font("Courier" FontBOLD);;
public void doGet(HttpServletRequest requestHttpServletResponse response) throws ServletExceptionIOException {
String s; int intCount; s=getCount(); intCount=new Integer(s)intValue(); intCount=intCount+; writeCount(intCount+"");
responsesetContentType("image/jpeg"); ServletOutputStream out=responsegetOutputStream(); BufferedImage image=new BufferedImage(BufferedImageTYPE_INT_RGB); Graphics g=imagegetGraphics(); gsetColor(Colorblack); gfillRect(); gsetColor(Colorwhite); gsetFont(mFont);
char c; for(int i=;i<;i++) { c=scharAt(i); gdrawString(c+""i*+); gdrawLine((i+)*(i+)*); }
JPEGImageEncoder encoder=JPEGCodeccreateJPEGEncoder(out); encoderencode(image); outclose(); }
public void doPost(HttpServletRequest requestHttpServletResponse response) throws ServletExceptionIOException {
doGet(requestresponse); }
public synchronized void writeCount(String content) { try { PrintWriter pw = new PrintWriter(new FileOutputStream(strFile)); pwprintln(content); pwclose(); } catch(IOException e) { Systemoutprintln("Write file error:"+egetMessage()); } }
public synchronized String getCount() { String strCount; int len; int leftLen;
try { BufferedReader inf = new BufferedReader(new FileReader(strFile)); strCount=infreadLine(); infclose(); } catch(Exception e) { Systemoutprintln("Get counter error:"+egetMessage()); return reChar(); } len=strCountlength(); if (len<=) { return reChar(); }
if (len>) { return reChar(); }
leftLen=len; return reChar(leftLen)+strCount; }
private String reChar(char cint num){ int i; if (num<=) return ""; String s=""; for(i=;i<num;i++) { s=s+c; } return s; } }
|