本文實例講述了JSP實現的簡單Web投票程序。分享給大家供大家參考。具體如下:
這裡使用文本文件作為數據存儲的投票系統。
1. vote.java:
package vote; import java.io.*; import java.util.*; public class vote { public String filePath = ""; public int n; private File voteFile; private BufferedReader fileRead; private PrintWriter fileWrite; public String systemMessage = ""; private String voteStr[] = new String[10]; public int voteNum[] = new int[10]; public void createFile() throws FileNotFoundException { voteFile = new File(filePath); if (!voteFile.exists()) { fileWrite = new PrintWriter(new FileOutputStream(filePath)); for (int i = 0; i < n; i++) fileWrite.println("0"); fileWrite.close(); } } public void writeFile() throws FileNotFoundException { fileWrite = new PrintWriter(new FileOutputStream(filePath)); for (int i = 0; i < n; i++) { fileWrite.println(voteNum[i]); } fileWrite.close(); } public void readFile() throws FileNotFoundException { fileRead = new BufferedReader(new FileReader(filePath)); for (int i = 0; i < n; i++) { try { voteStr[i] = fileRead.readLine(); } catch (IOException f) { voteStr[i] = "0"; } voteNum[i] = Integer.parseInt(voteStr[i]); } try { fileRead.close(); } catch (IOException d) { systemMessage = d.toString(); } } }
2. vote.jsp:
<%@ page contentType="text/html; charset=gb2312" %> <%@ page import="java.util.*"%> <%@ page import="java.lang.*"%> <%@ page import="java.io.*"%> <jsp:useBean id="vote" scope="request" class="vote.vote"/> <% String vote1=request.getParameter("lang"); vote.n=4; vote.filePath="vote.txt"; vote.createFile(); vote.readFile(); if(vote1.compareTo("0")==0) vote.voteNum[0]++; if(vote1.compareTo("1")==0) vote.voteNum[1]++; if(vote1.compareTo("2")==0) vote.voteNum[2]++; if(vote1.compareTo("3")==0) vote.voteNum[3]++; vote.writeFile(); %> <script language="javascript"> alert("感謝你投了寶貴的一票"); self.location="index.jsp"; </script>
3. see.jsp:
<%@ page contentType="text/html; charset=gb2312" %> <%@ page import="java.util.*"%> <%@ page import="java.lang.*"%> <%@ page import="java.io.*"%> <jsp:useBean id="vote" scope="request" class="vote.vote"/> <% String vote1=request.getParameter("lang"); vote.n=4; vote.filePath="vote.txt"; vote.createFile(); vote.readFile(); int total=0; float voteFlo[]=new float[5]; for(int i=0;i<4;i++) total+=vote.voteNum[i]; for(int i=0;i<4;i++) voteFlo[i]=150*((float)vote.voteNum[i]/(float)total); %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>查看調查</title> <link href="t1.css" rel="stylesheet" type="text/css"> </head> <body> <table width="30%" border="0" class="t1"> <tr> <td colspan="2"><div align="center">調查結果</div></td> </tr> <tr> <td width="18%">JSP</td> <td width="82%"><img src="bar.gif" width=<%=voteFlo[0]%> height=8> <%=vote.voteNum[0]%></td> </tr> <tr> <td>ASP</td> <td><img src="bar.gif" width=<%=voteFlo[1]%> height=8> <%=vote.voteNum[1]%></td> </tr> <tr> <td>PHP</td> <td><img src="bar.gif" width=<%=voteFlo[2]%> height=8> <%=vote.voteNum[2]%></td> </tr> <tr> <td>其他</td> <td><img src="bar.gif" width=<%=voteFlo[3]%> height=8> <%=vote.voteNum[3]%></td> </tr> <tr> <td colspan="2"><div align="center"><a href="javascript:window.close();">關閉窗口</a></div></td> </tr> </table> </body> </html>
4. index.jsp:
<%@ page contentType="text/html; charset=gb2312" %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>投票</title> <link href="t1.css" rel="stylesheet" type="text/css"> </head> <script language="javascript"> function cw() { window.open("see.jsp","mywindow", "toolbar=no,left=150,top=200,width=270,height=350,menubar=no,systemMenu=no"); } </script> <body> <table width="15%" height="250" align="left"> <tr> <td><form name="form1" method="post" action="vote.jsp"> <table width="100%" height="250" border="1" align="center" bordercolor="#9966CC" class="t1"> <tr> <td><div align="left">你所使用的開發語言</div></td> </tr> <tr> <td><input type="radio" name="lang" value="0"> JSP</td> </tr> <tr> <td><input type="radio" name="lang" value="1"> ASP</td> </tr> <tr> <td><input type="radio" name="lang" value="2"> PHP</td> </tr> <tr> <td><input type="radio" name="lang" value="3"> 其他 </td> </tr> <tr> <td><div align="center"> <input name="vote" type="image" src="poll.gif" width="40" height="20" border="0"> <a href="javascript:cw()"><img src="see.gif" width="40" height="20" border="0"></a></div></td> </tr> </table> </form></td> </tr> </table> </body> </html>
希望本文所述對大家的JSP程序設計有所幫助。