| | | WAPÊÖ»úÉϵÄÎʾíµ÷²éϵͳµÄ¹¹½¨ | | 2001-04-12¡¤
¡¤wayne¡¤¡¤yesky
| ÉÏÒ»Ò³ 1 2 ÅäÖÃÎļþʵÀý£º
¡¡¡¡#
¡¡¡¡# vote config file
¡¡¡¡#
¡¡¡¡log=c:\catalina\logs\votelog.txt
¡¡¡¡after=c:\catalina\webapps\examples\servlet\vote.html
¡¡¡¡options=ËѺü,ÐÂÀË,ÍøÒ×
¡¡¡¡column=0
¡¡¡¡title=Äúϲ»¶ÄÄÒ»¸öÃÅ»§ÍøÕ¾
¡¡¡¡cookies=1
¡¡¡¡bgcolor=#FFFFFF
¡¡¡¡fgcolor=#000000
¡¡¡¡size=2
¡¡¡¡face=Verdana,Arial
¡¡¡¡votecolor=#FF0000 ¡¡¡¡
¡¡¡¡ÏÖÔÚÈÃÎÒÃÇÀ´¿´Ò»¿´Ô´³ÌÐò°É£º
¡¡¡¡import java.io.*;
¡¡¡¡import java.util.*;
¡¡¡¡import javax.servlet.*;
¡¡¡¡import javax.servlet.http.*;
¡¡¡¡public class WapVoteServlet extends HttpServlet
¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡public WapVoteServlet()
¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡}
¡¡¡¡private static final String CONFIG = "config";
¡¡¡¡private static final String ACTION = "act";
¡¡¡¡private static final String VOTE = "vote";
¡¡¡¡private static final String LOG = "log";
¡¡¡¡private static final String AFTER = "after";
¡¡¡¡private static final String VIEW = "view";
¡¡¡¡private static final String COOKIES = "cookies";
¡¡¡¡private static final String BGCOLOR = "bgcolor";
¡¡¡¡private static final String FGCOLOR = "fgcolor";
¡¡¡¡private static final String SIZE = "size";
¡¡¡¡private static final String FACE = "face";
¡¡¡¡private static final String TITLE = "title";
¡¡¡¡private static final String COLUMN = "column";
¡¡¡¡private static final String VOTECOLOR = "votecolor";
¡¡¡¡private static final String DEFBGCOLOR = "#FFFFFF";
¡¡¡¡private static final String DEFFGCOLOR = "#000000";
¡¡¡¡private static final String DEFVOTECOLOR = "#FF0000";
¡¡¡¡private static final String DEFCOOKIES = "0";
¡¡¡¡private static final String DEFCOLUMN = "1";
¡¡¡¡private static final String DEFTITLE = "A Free & Simple Vote System";
¡¡¡¡private static final String OPTIONS = "options";
¡¡¡¡private static final String EDITED = "edited";
¡¡¡¡private static final String FICT = "fct";
¡¡¡¡private static final String WAPVOTE = "wpv";
¡¡¡¡private static final int MAX_WML = 900;
¡¡¡¡private static final int MAX_VOTES = 20;
¡¡¡¡private static String NEWLINE = "\n";
¡¡¡¡private static Hashtable cfgs;
¡¡¡¡private static Hashtable forLock;
¡¡¡¡public void init(ServletConfig config)
¡¡¡¡throws ServletException
¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡super.init(config);
¡¡¡¡¡¡¡¡NEWLINE = System.getProperty("line.separator");
¡¡¡¡¡¡¡¡cfgs = new Hashtable();
¡¡¡¡¡¡¡¡forLock = new Hashtable();
¡¡¡¡¡¡}
¡¡¡¡file://ÓÉÓÚʹÓÃPOST·¢ËÍ±íµ¥£¬ËùÒÔÏÖÓÃdoPostÀ´´¦ÀíPOSTÇëÇó
¡¡¡¡¡¡public void doPost(HttpServletRequest request, HttpServletResponse response)
¡¡¡¡¡¡¡¡throws ServletException, IOException
¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡doGet(request, response); file://µ÷ÓÃdoGetÈ¥´¦ÀíPOSTÇëÇó
¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡public void doGet(HttpServletRequest request, HttpServletResponse response)
¡¡¡¡¡¡¡¡file://ÓÃÓÚ´¦ÀíGETÇëÇó
¡¡¡¡¡¡throws ServletException, IOException
¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡String s = "";
¡¡¡¡¡¡¡¡¡¡String s1 = "";
¡¡¡¡¡¡¡¡¡¡s = HttpUtils.getRequestURL(request).toString();//°ÑÊÕµ½µÄÇëÇóת»¯³É×Ö·û´®
¡¡¡¡¡¡¡¡¡¡int i;
¡¡¡¡¡¡¡¡¡¡if((i = s.indexOf("?")) > 0) file://ÏëÒ»ÏëΪʲôҪÕâôд£¿
¡¡¡¡¡¡¡¡¡¡s = s.substring(0, i);
¡¡¡¡¡¡¡¡¡¡s1 = request.getQueryString(); file://È¡µÄÇëÇóµÄ×Ö·û´®
¡¡¡¡¡¡¡¡¡¡if(s1 == null)//Èç¹ûΪ¿Õ£¬¼ÈÊÇûÓÐдÉÏÅäÖÃÎļþÃû£¬¹ÊÒª·¢³ö´íÎóÐÅÏ¢
¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡errorMessage("²»ÄܶÁµ½ÅäÖÃÎļþ", null, request, response);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡return;
¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡String s2 = getFromQuery(s1, "config=");//¶ÁÈ¡ÇëÇóÖÐ"&"ºóµÄ×Ö·û´®
¡¡¡¡¡¡¡¡¡¡if(s2.length() == 0)
¡¡¡¡¡¡¡¡¡¡¡¡s2 = s1;
¡¡¡¡¡¡¡¡¡¡¡¡String s3 = getFromQuery(s1, "act=");
¡¡¡¡¡¡¡¡¡¡¡¡Hashtable hashtable = getConfig(s2);//¶ÁÈ¡ÅäÖÃÎļþ
¡¡¡¡¡¡¡¡¡¡¡¡if(hashtable.get("log") == null)//Èç¹ûÅäÖÃÎļþÖÐûÓÐlog²ÎÊý£¬Ôò³öÏÖ´íÎóÐÅÏ¢
¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡errorMessage("²»ÄÜ´ÓÄãµÄÅäÖÃÎļþÖз¢ÏÖÈÕÖ¾ÎļþÃû£¡", hashtable, request, response);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡if(s3.length() == 0) file://s3ΪactºóµÄ×Ö·û´®
¡¡¡¡¡¡¡¡¡¡¡¡¡¡s3 = "vote";
¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(((String)hashtable.get("cookies")).equals("1") && s3.equals("vote"))
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ Cookie acookie[] = request.getCookies(); file://ÉèÁ¢cookieÊÇΪÁË·ÀÖ¹Óû§¶à´ÎͶƱ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡file://ÏÂÃæµÄÑ»·ÊÇΪÁËÄÜÕÒ³öÄãÊÇ·ñÒѾͶ¹ýƱ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(acookie != null)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡for(int j = 0; j < acookie.length; j++)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Cookie cookie = acookie[j];
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(s2.equals(cookie.getName()))
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ errorMessage("ÄãµÄͶƱ±»È¡ÏûÁË", hashtable, request, response);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Cookie cookie1 = new Cookie(s2, "yes");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡cookie1.setMaxAge(0x15180);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡response.addCookie(cookie1);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(s3.equals("vote"))
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡takeVote(s, s2, hashtable, request, response);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(s3.equals("log"))
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡showLog(s, hashtable, request, response);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(hashtable.get("options") == null)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡errorMessage("²»ÄܶÁÈëÄãµÄÅäÖÃÖµ", hashtable, request, response);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡else
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡showVote(s, s2, hashtable, request, response);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡ ¡¡¡¡private void readConfig(String s, Hashtable hashtable) file://¶ÁÈ¡ÅäÖÃÎļþ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡try
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(s)));
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s1;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ while((s1 = reader.readLine()) != null) file://´ÓÅäÖÃÎļþÖжÁÈëÒ»ÐвÎÊý×Ö·û´®
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s1 = s1.trim(); file://ÒÆÈ¥s1ÖеĿոñ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(s1.length() > 0)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡int i = s1.indexOf("=");//ÔÚs1ÖÐѰÕÒ¡°=¡±£¬iΪ±»=·Ö³ÉµÄ¶ÎÊý
¡¡ ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(i > 0 && i < s1.length() - 1 && s1.charAt(0) != '#' && !s1.startsWith("//"))
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡file://²ÎÊýµÄµÚÒ»¸ö×Ö·û²»ÄÜΪ#ºÍ//
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡hashtable.put(s1.substring(0, i).trim(), s1.substring(i + 1).trim());
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡file://°ÑµÈºÅǰºóµÄ×Ö·û´®·Ö±ð´æÈë¹þÎ÷±íÖÐ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡reader.close();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡File file = new File(s);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡hashtable.put("edited", String.valueOf(file.lastModified()));
¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡catch(Exception _ex) { }
¡¡¡¡¡¡¡¡¡¡if(hashtable.get("bgcolor") == null)
¡¡¡¡¡¡¡¡¡¡¡¡hashtable.put("bgcolor", "#FFFFFF"); file://Ïò¹þÎ÷±íÖÐдÈëĬÈϵı³¾°É«
¡¡¡¡¡¡¡¡¡¡¡¡if(hashtable.get("fgcolor") == null)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡hashtable.put("fgcolor", "#000000"); file://Ïò¹þÎ÷±íÖÐдÈëĬÈϵÄǰ¾°É«
¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(hashtable.get("column") == null)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡hashtable.put("column", "1"); file://Ïò¹þÎ÷±íÖÐдÈëĬÈϵÄcolumnÖµ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(hashtable.get("cookies") == null)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡hashtable.put("cookies", "0"); file://Ïò¹þÎ÷±íÖÐдÈëĬÈϵÄcookiesֵΪ0
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(hashtable.get("title") == null)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ hashtable.put("title", "A Free & Simple Vote System"); ¡¡¡¡¡¡ ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡file://Ïò¹þÎ÷±íÖÐдÈëĬÈϵıêÌâ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(hashtable.get("votecolor") == null)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡hashtable.put("votecolor", "#FF0000"); file://Ïò¹þÎ÷±íÖÐдÈëĬÈÏͶƱɫ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡hashtable.put("fct", new Integer(0));
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡private Hashtable getConfig(String s) file://´ò¿ªÅäÖÃÎļþ
¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡Hashtable hashtable;
¡¡¡¡¡¡¡¡¡¡¡¡if((hashtable = (Hashtable)cfgs.get(s)) != null)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡File file = new File(s);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s1 = (String)hashtable.get("edited");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(s1.equals(String.valueOf(file.lastModified())))
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return hashtable; file://Èç¹ûÎļþ±»±à¼¹ý£¬Ôò·µ»Ø¹þÎ÷±í
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡cfgs.remove(s);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡hashtable = null;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡hashtable = new Hashtable();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡readConfig(s, hashtable);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡cfgs.put(s, hashtable);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s2 = (String)hashtable.get("log");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(s2 != null && forLock.get(s2) == null)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡forLock.put(s2, new Object());
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return hashtable;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡private void showVote(String s, String s1, Hashtable hashtable, HttpServletRequest request, HttpServletResponse response)
¡¡¡¡¡¡¡¡throws IOException
¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡String s2 = (String)hashtable.get("options");
¡¡¡¡¡¡¡¡¡¡¡¡String s3 = (String)hashtable.get("column");
¡¡¡¡¡¡¡¡¡¡¡¡String s4 = (String)hashtable.get("title");
¡¡¡¡¡¡¡¡¡¡¡¡String s6 = getFont(hashtable);
¡¡¡¡¡¡¡¡¡¡¡¡String s7 = "";
¡¡¡¡¡¡¡¡¡¡¡¡String s8 = "";
¡¡¡¡¡¡¡¡¡¡¡¡if(request.getHeader("Accept").indexOf("wap.wml") >= 0)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡PrintWriter £Ï£Õ£Ô;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡response.setContentType("text/vnd.wap.wml");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô = response.getWriter();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼?xml version=\"1.0\"?£¾");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\" \"http://www.wapforum.org/DTD/wml_1.1.xml\"£¾");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼wml£¾");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼CARD id='\"showvote\"' title='\""' ?\? + (String)hashtable.get(?title?)£¾");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼DO label='\"Vote\"' type='\"accept\"'£¾");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼GO ?\? + method='\"post\"' vote? ?=" + s1 + " ?act? &? ?config? ??? s href='\""'£¾");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼POSTFIELD value='\"$(sVote)\"/' name='\"wpv\"'£¾");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼/GO£¾");
¡¡¡¡¡¡¡¡¡¡¡¡ £Ï£Õ£Ô.println("£¼/DO£¾");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼P mode='\"nowrap\"'£¾£¼B£¾" + s4 + "£¼/B£¾£¼/P£¾");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println(" £¼P mode='\"nowrap\"'£¾");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ £Ï£Õ£Ô.println("£¼SELECT name='\"sVote\"'£¾"); ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡StringTokenizer str = new StringTokenizer(s2, ","); ¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡while(str.hasMoreTokens())
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ {
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s5 = str.nextToken();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼OPTION selected value='\""' ?\? + s5>" + s5 + "£¼/OPTION£¾"); }
¡¡ ¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼/SELECT£¾");
¡¡ ¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼/P£¾");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼/CARD£¾");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼/WML£¾");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.flush();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.close();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡private void takeVote(String s, String s1, Hashtable hashtable, HttpServletRequest request, HttpServletResponse response)¡¡
¡¡ ¡¡¡¡¡¡¡¡¡¡throws IOException
¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s2 = (String)hashtable.get("log");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s3 = (String)hashtable.get("after");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s6 = "";
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Enumeration enumeration = request.getParameterNames();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ if(request.getHeader("Accept").indexOf("wap.wml") >= 0)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡file://ÅжÏÊÇ·ñΪWAPÉ豸½ÓÊÕ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s6 = request.getParameter("wpv");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(s6 == null)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s6 = "";
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(s6.length() > 0)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡writeLog(hashtable, request, s6, s2);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(s3 == null) file://Èç¹ûs3Ϊ¿Õ£¬ÔòÏÔʾÈÕÖ¾Îļþ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡showLog(s, hashtable, request, response);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡else file://·ñÔò·¢ËÍÖØ¶¨Ïò
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s4 = s + "?" + "config" + "=" + s1 + "&" + "act" + "=" + "log";
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡response.sendRedirect(s4);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡private void writeLog(Hashtable hashtable, HttpServletRequest request, String s, String s1)//дÈÕÖ¾Îļþ
¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s2 = request.getRemoteAddr(); file://È¡µÃ¿Í»§»úµÄIPµØÖ·
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡try¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡synchronized(forLock.get(s1))
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡file://×¢Ò⣺ʹÓÃsynchronized¹Ø¼ü×Ö£¬ËµÃ÷ͬһʱ¼äÖ»ÄÜÓÐÒ»¸öд¶¯×÷£¬ÆäÓàµÄÒªÔÚ¶ÓÁÐÖеȴý
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡int i = ((Integer)hashtable.get("fct")).intValue();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ¡¡ file://È¡µÃÈÕÖ¾ÎļþµÄfctÖµ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(i >= 20)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡hashtable.put("fct", new Integer(i + 1));//°ÑfctÖµ¼Ó1·Å»Ø¹þÏ£±í
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡FileWriter filewriter = new FileWriter(s1, true);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡PrintWriter £Ï£Õ£Ô = new PrintWriter(filewriter);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println((s2 != null ? s2 : "δ֪µØÖ·") + "," + new Date() + "," + s);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.flush();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.close();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡return;
¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡catch(IOException _ex)
¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡return;
¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡private void errorMessage(String s, Hashtable hashtable, HttpServletRequest request, HttpServletResponse response)//Êä³ö´íÎóÐÅÏ¢
¡¡¡¡¡¡¡¡throws IOException
¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡PrintWriter £Ï£Õ£Ô = null;
¡¡¡¡¡¡¡¡¡¡¡¡response.setContentType("text/vnd.wap.wml");//ÉèÖÃΪWMLÎļþ¸ñʽ
¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô = response.getWriter();
¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("");
¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("");
¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼WML£¾");
¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("");
¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println(" " + s + "");
¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("");
¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("");
¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.flush();
¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.close();
¡¡¡¡¡¡¡¡¡¡ }
¡¡¡¡¡¡¡¡private void showLog(String s, Hashtable hashtable, HttpServletRequest request, HttpServletResponse response)
¡¡¡¡¡¡¡¡¡¡throws IOException
¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s1 = (String)hashtable.get("log");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s2 = getFont(hashtable);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡Vector vector = new Vector();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡Hashtable hashtable1 = new Hashtable();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡StringBuffer stringbuffer = new StringBuffer("");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡long l = 0L;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s7 = (String)hashtable.get("title");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡try¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡synchronized(forLock.get(s1))
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ BufferedReader bufferedreader = new BufferedReader(new putStreamReader(new FileInputStream(s1)));
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s3;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡while((s3 = bufferedreader.readLine()) != null) file://¶ÁÈëÒ»Ìõ²ÎÊý
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡vector.addElement(s3); file://×÷Ϊһ¸öÔªËØ¼ÓÈëÏòÁ¿ÖÐ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡bufferedreader.close();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡catch(Exception _ex) { }
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(request.getHeader("Accept").indexOf("wap.wml") >= 0)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡for(int j = 0; j < vector.size(); j++)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s4 = (String)vector.elementAt(j); file://È¡µÃÏòÁ¿ÖеÚj+1¸öÔªËØ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡int i = s4.indexOf(","); file://i±íʾs4±»¶ººÅ¡°£¬¡±·Ö¸ô¿ªµÄ¶ÎÊý
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(i > 0 && i != s4.length() - 1)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s4 = s4.substring(i + 1);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡i = s4.indexOf(",");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(i > 0 && i != s4.length() - 1)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s4 = s4.substring(i + 1);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Long long1;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if((long1 = (Long)hashtable1.get(s4)) == null)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡hashtable1.put(s4, new Long(1L));
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡else
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡hashtable1.remove(s4);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡hashtable1.put(s4, new Long(long1.longValue() + 1L));
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡l++;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡vector = null;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡PrintWriter £Ï£Õ£Ô;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡response.setContentType("text/vnd.wap.wml");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô = response.getWriter();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("£¼CARD id='\"voteres\"' title='\""' ?\? + (String)hashtable.get(?title?)£¾ £¼P£¾");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(hashtable1.size() == 0)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println(" ÎÒÃÇÏÖÔÚ»¹Î´ÊÕµ½ÈκÎͶƱ");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡else
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println(" " + s7 + "");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡while(hashtable1.size() > 0)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Enumeration enumeration = hashtable1.keys();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡long l1 = 0L;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s6 = null;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡while(enumeration.hasMoreElements())
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s5 = (String)enumeration.nextElement();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡long l2 = ((Long)hashtable1.get(s5)).longValue();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(l2 > l1)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s6 = s5;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡l1 = l2;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡hashtable1.remove(s6);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡stringbuffer.append(" " + s6 + "" + NEWLINE);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡stringbuffer.append(" " + l1 + " (" + formatValue((float)((100D * (double)(float)l1) / (double)(float)l)) + "%)" + NEWLINE);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(stringbuffer.length() > 900){¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡break;
¡¡¡¡ ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println(stringbuffer.toString());
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ }
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.println("");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡hashtable1 = null;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.flush();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£Ï£Õ£Ô.close();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡¡¡¡¡private String getFont(Hashtable hashtable)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s1 = "
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if((s = (String)hashtable.get("face")) != null){
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s1 = s1 + " face=\"" + s + "\"";
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if((s = (String)hashtable.get("size")) != null){
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s1 = s1 + " size=\"" + s + "\"";
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return s1 + ">";
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ }
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡private String getFromQuery(String s, String s1) file://´ÓsÖÐÕÒ³ös1
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(s == null)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return "";//Èç¹ûsΪ¿Õ£¬µ±È»·µ»Ø¡°¡±
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡int i;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if((i = s.indexOf(s1)) < 0)//Èç¹ûsÖÐÕÒ²»µ½s1£¬Ò²·µ»Ø¿ÕÖµ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return "";
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s2 = s.substring(i + s1.length());
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡file://°Ñs1Ëù±íʾ×Ö·û´®ºóµÄÖµ¸³Óès2£¬Config=conf_file&act=vote
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if((i = s2.indexOf("&")) < 0) file://Èç¹ûs2ÖÐûÓÐ&£¬Ôò·µ»Øs2µÄÖµ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return s2;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡else
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return s2.substring(0, i); file://·ñÔò·µ»Ø&ºóµÄ×Ö·û´®
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡¡¡private String formatValue(float f)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String s = String.valueOf(f);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡int i = s.indexOf(".");
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if(i > 0 && i + 4 < s.length() && s.indexOf("e") < 0 && s.indexOf("E") < 0){
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s = s.substring(0, i + 4);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡return s;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ }}£¼/SELECT£¾
ÉÏÒ»Ò³ 1 2 | | | ¸Ðл
·ÃÎÊÌì¼«Íø£¬Èç¹ûÄú¾õµÃ¸ÃÎÄÕÂÉæ¼°°æÈ¨ÎÊÌ⣬Çë¿´ÕâÀ
|
|