《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 基于網格的電子投票系統
基于網格的電子投票系統
來源:微型機與應用2010年第15期
唐 珺,楊道杰
(山東中醫藥高等??茖W校,山東 煙臺 265200)
摘要: 利用網格、JSP技術設計實現了一個禁止重復投票的電子投票系統。在網格環境中,針對該系統重點討論了JDBC連接MySql數據庫技術、Servlet技術和Cookie技術等,解決了基于MVC模式開發應用系統的一些難題。同時,利用CA認證技術解決了基于網格的電子投票系統的安全性問題。
關鍵詞: 網格 MVC CA
Abstract:
Key words :

摘  要: 利用網格、JSP技術設計實現了一個禁止重復投票的電子投票系統。在網格環境中,針對該系統重點討論了JDBC連接MySql數據庫技術、Servlet技術和Cookie技術等,解決了基于MVC模式開發應用系統的一些難題。同時,利用CA認證技術解決了基于網格的電子投票系統的安全性問題。
關鍵詞: 網格;MVC;CA

    網格是利用互聯網把地理上廣泛分布的各種資源(計算資源、存儲資源、軟件資源、數據資源、信息資源等)連成一個邏輯整體,就像一臺超級計算機一樣,為用戶提供一體化信息和應用服務,虛擬組織最終實現在這個虛擬環境下的資源共享和協同工作,徹底消除資源“孤島”,最充分地實現信息共享。
    本文借助成熟的JSP、網格和CA等技術,實現了網格環境中的學生電子投票系統。該系統通過學生對教師授課效果的投票來評價教師的教學質量,以及教師受學生歡迎的程度。系統在設計中遇到了如何實現禁止重復投票、怎樣處理投票結果、如何解決安全性等問題。通過解決這些問題,總結出使用Cookies可以解決禁止重復投票,在同一個服務器中的JSP文件要共享一個Application對象等經驗,這對網格環境中JSP開發有較高的參考價值。該系統將用戶在線填寫的投票數據存儲在后臺MySql投票庫中,通過實時地讀取數據,以可視化的結果實時展示給用戶。它與傳統投票方式相比,具有高效率和低成本的優點,能夠快速準確地統計出投票結果。但是大部分網上投票系統一直都沒有解決投票的有效性和安全性問題。因此,本文給出了網格中該系統的安全性解決方案。
1 網格技術
    網格技術[1]利用互聯網,把分散在不同地理位置的計算機組織成一個虛擬的超級計算機,其中每一臺參與計算的計算機就是一個節點,而整個計算是由成千上萬個節點組成的一張網格,從而實現即插即用的效果。簡單地講,它是把整個網絡整合成一臺巨大的超級計算機,實現各種資源的全面共享。網格具有如下特點[2]:
    (1)異構性。網格環境由分布在廣域網上不同管理域的各種不同類型的計算資源組成,并且每類資源有各自不同的屬性。
    (2)分布與共享。分布是網格硬件在物理上的特征,而共享是在網格軟件支持下實現的邏輯特征。
    (3)自相似性。網格的局部和整體之間存在著一定的相似性。局部在許多方面具有全局的某些特征,而全局的特征在局部中也有一定的體現。
    (4)動態多樣性。不僅網格環境下的一些資源本身具有動態性,而在整個網格環境下,隨著計算資源、數據資源不斷加入和撤銷、故障等原因,網格系統下的局部環境也在動態地改變著。在網格的設計與實現時,必須考慮到新資源能夠很自然地加入到網格中,與原來的資源融合在一起,共同發揮作用。
    (5)自治性與管理的多重性。網格環境下的局部資源既屬于個人或機構,由個人對資源作相應的管理和維護,又要在網格系統作整體部署時,由網格管理員根據系統任務情況統一調度網格環境下的資源。
2 數據庫連接技術JDBC
    Java中連接數據庫的技術之一是JDBC,它是一種用于執行SQL語句的Java API,可以為多種關系數據庫提供統一訪問,它由一組用Java語言編寫的類和接口組成。JDBC為工具/數據庫開發人員提供了一個標準的API,據此可以構建更高級的工具和接口,使數據庫開發人員能夠用純Java API編寫數據庫應用程序。
    通常在使用基于數據庫的Web應用時,JDBC工作步驟為:(1)與數據庫建立連接;(2)進行SQL語句操作,取出數據;(3)斷開數據庫連接。
    Connection con=DriverManager.getConnection(“url”);
    Statement stmt=con.createStatement();
    ResultSet rs=stmt.executeQuery(“SELECT a,b,c FROM Table1”);
    while (rs.next()) {
    int x=rs.getInt(“a”);
    String s=rs.getString(“b”);
    float f=rs.getFloat(“c”);}
3 基于MVC模式的在線投票系統
    隨著互聯網的發展,網上投票系統逐漸成為人們生活中的必不可少的一部分,如2008年奧運投票系統、網上流行的娛樂投票系統等。各種各樣的投票系統日益發展,充分調動了人們參與活動的積極性。
3.1 MVC(Model-View-Controller)模式
    使用MVC模式(如圖1)設計Web應用程序非常有效。其結合了JSP和Servlet兩種技術,Servlet可充當Controller的角色,JSP可以充當View層的角色,即采用JSP顯示頁面內容,但它并不處理任何的業務邏輯,而采用Servlet進行數據處理以生成動態內容[3]。

    MVC模式具有更清晰的頁面表現、清楚的開發者角色劃分,可以充分利用開發小組中的界面設計人員。同時,增加了代碼的重用率,使軟件的可維護性、可擴展性、靈活性和封裝性大大提高。
3.2 系統流程圖
    基于網格的電子投票系統,設計非常直觀,用戶很容易看出投票的情況,并且只有合法用戶才能進行有效投票。該系統分為多個功能模塊,主要有以下功能:用戶登錄、校驗、增加新投票項目、修改投票項目、刪除投票項目、投票、查看投票結果、退出系統。本投票系統還具有防止重復投票的功能。系統流程圖如圖2。

3.3 系統實現特色
    (1)JDBC連接數據庫技術
    在網格中實現該系統,如何操作數據庫是不可避免要遇到的問題,目前有多種數據庫連接技術,如CGI技術、WebAPI技術、RAD技術和JDBC技術等。通過分析,JDBC為所有數據庫管理系統提供一種標準接口,可以為多種關系數據庫提供統一訪問,簡單容易掌握,速度快。所以,選擇了通過JDBC連接數據庫和訪問數據庫,執行查詢和提取數據等操作,部分代碼如下:
    public JDBCConnect ( ) {
    try {Class.forName(url);        //加載數據庫驅動程序
    conn=DriverManager.getConnection(url);}     //建立連接
    catch (Exception e) {
    System.out.println (“JDBCConnect():”+e.getMessage());}}
    (2)禁止重復投票
    系統主要應用JSP的內置對象Application,與Session對象相比,Application對象的含義更加廣泛。在使用Session對象時,各個客戶端共享一個Session對象;而使用Application對象時,在同一個服務器中的JSP文件共享一個Application對象,除此之外,可以使用Application對象的getServerInfo()方法來獲取JSP的版本信息和名稱。
    應用Cookie技術實現一個IP地址每周只能投一次票的功能。通過request.getRemoteHost()方法取得客戶端的IP地址后,將其存放在Cookie對象中,并且通過cookie.setMaxAge(60*60*24*7)的方法設置存儲時間。通過Cookie[4]技術,可以防止在某一段時間內某個投票者重復使用同一IP地址重復投票。這種投票技術的特點是對重復投票得到了有效控制,而且可以記錄投票者的IP地址,并可間接確定用戶身份,因此該技術在網上被廣泛使用。   
    注意,此系統禁止重復投票,一個IP地址每周只能投一次票,投票時,系統自動記錄該主機IP地址,當學生代表在本周第二次投票時,系統給出相關提示信息。
實現投票的關鍵代碼如下:
    (1)使用JSP的內置對象Application
    <% String id=request.getParameter(“id”);
    if (id==null) {response.sendRedirect(“index.jsp”);}else {
    String sql=“update tb_voteOneTime set number=number+
    1 where id=′”+id+“′”;
    connection.executeUpdate(sql);
    connection.closeConnection();
    application.setAttribute(“id”,id);
    response.sendRedirect(“show.jsp”);}%>
    (2)應用Cookie實現一個IP地址每周只能投一次票的功能
    <jsp:useBean id=“connection” scope=“request” class=
    “com.dao.JDBConnection”/>
    <%@page import=“java.util.Date”%>
    <%String IP=request.getRemoteHost();
       Cookie [] cookies=request.getCookies();
       boolean flag=true;
       for (int i=0;i<cookies.length;i++) {
      if (IP.equals(cookies[i].getValue())) {flag=false;}}
      if (flag){String id=request.getParameter(“id”);
      String sqlVote=“update tb_VoteIP set number=number
      +1 where id=′”+id+“′”;
      connection.executeUpdate(sqlVote);
      connection.closeConnection();
      Cookie cookie=new Cookie(“IP”,IP);
      cookie.setMaxAge(60*60*24*7);
      response.addCookie(cookie);
      response.sendRedirect(“show.jsp”);
      } else{out.print(“<script language=′JavaScript′>
    alert(′一個IP地址每周只能投一次票′);
    window.location.href=′index.jsp′;</script>”);}%>
3.4 安全性解決方案
    一個安全實用的電子投票系統應該滿足如下標準[5]:
    (1)民主性。只有合法的投票者才能投票,且只能在規定的時間段內投票。
    (2)準確性。投票不能被中間機構或他人篡改、復制或刪除時不被發現;無效的選票可以被及時發現從而不會被計入最終的統計結果。
    (3)秘密性。選票的投出是匿名的,任何機構或個人不能確定投票者的投票內容,也不能確定選票的投票者。
    (4)可證實性。投票者可以確定其投票被正確計算在最終結果中。任何參與者或其他觀察監督者都可以核實最終結果的正確性。
    (5)公平性。最終統計結果公布前,任何參與者都無法得知中間的選票統計信息,因為中間的選票統計信息可能會影響投票者的投票意向。
    (6)簡單性。投票者無需特別的設備和技術就可簡單快速地完成投票;投票者無需到特別的地點進行投票;投票活動的組織進行應該簡單且效率高。
    本系統采用CA認證技術有效解決了投票過程的安全性問題。CA(Certificate Authority)[6]認證中心是指用于證明某一主體的身份以及合法性的權威認證機構,由社會公認的具有法律效力的權威機構組成,或由某單位的權威部門組成。由CA中心給用戶簽發認證證書,證書中包含用戶身份名稱和驗證密碼等信息。投票中心存放投票數據,記錄投票結果。
    如果雙方主體都有證書,而且都信任彼此的認證中心CA,則雙方可相互明確彼此的身份,其采用的認證協議是SSL協議。在相互認證可以進行之前,雙方首先要相信彼此的認證中心。實現過程中,要求雙方都有彼此認證中心自身的證書,認證中心自身的證書中包含認證中心的公鑰。這樣才能確保雙方由認證中心簽署的證書具有合法性。
    本文在網格環境中,設計開發出了安全有效的電子投票系統,給出了系統流程圖,實現了實時性的跨Web服務器動態網頁的創建。以JSP實現頁面顯示,JavaBean編寫數據庫連接,Servlet控制整個系統的流程,從而實現用戶界面和數據庫之間良好的交互,有效提高了系統的效率和性能?;贑A認證技術較好地解決了安全性問題,保證了投票者的合法性、公正性、真實性和有效性。

參考文獻
[1] 都志輝,陳渝,劉鵬.網格計算[M].北京:清華大學出版社,2002.
[2] 桂小林.網格技術導論[M].北京:北京郵電大學出版社,2005.
[3] 謝長勇,劉知貴,鄭曉紅,等.基于模式2的JSP管理信息系統的設計與實現[J].計算機應用研究,2006(7).
[4] 明日科技,王國輝.JSP程序開發范例寶典[M].北京:人民郵電出版社,2007.
[5] 阮鷗,陳卓.一種安全實用的電子投票協議[J].計算機安全,2007,31(3).
[6] 戴怡,楊庚.網格環境下多域間的認證機制研究[J].計算機工程與應用,2007,43(5).
 

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久先锋资源| 国产精品mm| 亚洲婷婷免费| 亚洲精品系列| 亚洲高清av在线| 久久国产直播| 久久国产精品99久久久久久老狼| 亚洲一区二区三区乱码aⅴ蜜桃女| 日韩视频在线免费| 亚洲美女视频| 亚洲精品在线观| 亚洲欧洲一区二区天堂久久| 亚洲国产毛片完整版| 亚洲第一精品久久忘忧草社区| 黄色在线一区| 一区二区三区在线观看国产| 精品96久久久久久中文字幕无| 精品av久久707| 在线观看日产精品| 亚洲第一福利视频| 亚洲国产婷婷香蕉久久久久久| 亚洲成人直播| 亚洲精品视频免费观看| 日韩视频不卡| 亚洲图片在线| 午夜精品久久久久久久99樱桃 | 99亚洲伊人久久精品影院红桃| 亚洲精品在线视频观看| 亚洲美女在线视频| 在线亚洲欧美专区二区| 亚洲欧美不卡| 新67194成人永久网站| 久久国产视频网站| 亚洲欧洲视频在线| 日韩一区二区精品在线观看| 宅男精品导航| 欧美一区二区三区的| 久久国产精品久久精品国产| 久久伊人免费视频| 欧美经典一区二区| 国产精品久久久久aaaa九色| 国产毛片一区二区| 狠狠综合久久av一区二区老牛| 亚洲国产欧美久久| 99伊人成综合| 欧美在线免费观看视频| 亚洲免费久久| 亚洲欧美日韩国产综合| 久久国产精品一区二区三区四区| 乱码第一页成人| 欧美日本一区二区高清播放视频| 国产精品久久国产精品99gif| 国产亚洲综合性久久久影院| 伊人色综合久久天天| 亚洲精选视频免费看| 亚洲专区国产精品| 亚洲国产精品福利| 亚洲视频第一页| 久久久777| 欧美日韩成人一区| 国产午夜久久久久| 亚洲精品国久久99热| 亚洲一二三区在线| 久久精品72免费观看| 99精品视频免费观看视频| 欧美一区二区视频免费观看| 欧美成人免费观看| 国产精品美女一区二区| 国产在线观看一区| 99精品欧美一区二区三区| 久久aⅴ国产紧身牛仔裤| 一区二区三区高清不卡| 久久久久久一区| 欧美日韩午夜在线| 国产在线高清精品| 亚洲图片欧美午夜| 日韩视频国产视频| 久久精品夜夜夜夜久久| 欧美性一二三区| 亚洲国产成人精品女人久久久| 亚洲视频在线播放| 99成人免费视频| 久久久蜜桃精品| 国产精品久久久久久久久免费| 亚洲电影在线看| 午夜精品在线看| 亚洲图片欧洲图片av| 蜜臀久久99精品久久久画质超高清 | 男女激情久久| 国产精品女主播| 亚洲精品九九| 久久精品国产精品亚洲| 午夜视频在线观看一区二区| 欧美日产一区二区三区在线观看 | 香蕉av777xxx色综合一区| 欧美激情视频免费观看| 伊人久久综合97精品| 欧美一区二区成人| 亚洲一区二区三区影院| 欧美精品一区二| 亚洲高清视频中文字幕| 亚洲福利视频网站| 久久爱91午夜羞羞| 国产精品美女主播| 99精品99久久久久久宅男| 亚洲精品一区中文| 欧美成人午夜激情在线| 国产视频不卡| 亚洲男人影院| 欧美一区二区免费| 国产精品免费一区二区三区在线观看| 亚洲美女视频| 夜夜嗨av一区二区三区| 欧美国产日韩亚洲一区| 悠悠资源网久久精品| 亚洲高清免费| 开元免费观看欧美电视剧网站| 国产亚洲欧美日韩一区二区| 亚洲欧美变态国产另类| 香蕉尹人综合在线观看| 国产精品一区二区在线观看网站| 亚洲一区在线免费| 欧美在线视频全部完| 国产日韩精品一区二区浪潮av| 亚洲欧美日韩国产一区| 欧美一区视频| 国产一区二区三区高清在线观看 | 久久精品国产999大香线蕉| 久久激情中文| 国产一区二区福利| 欧美一站二站| 另类综合日韩欧美亚洲| 亚洲高清av在线| 一区二区电影免费观看| 欧美丝袜第一区| 制服诱惑一区二区| 香蕉免费一区二区三区在线观看 | 狠狠综合久久| 亚洲欧洲视频在线| 欧美日本高清一区| 日韩一级在线| 欧美亚洲免费高清在线观看| 国产日韩欧美在线播放不卡| 久久精品国产99精品国产亚洲性色 | 国产欧美日韩亚洲一区二区三区| 在线中文字幕不卡| 欧美制服第一页| 激情一区二区三区| 日韩视频精品在线观看| 欧美视频在线免费看| 亚洲在线观看| 久久影视精品| 亚洲精品视频在线观看网站| 亚洲一级高清| 国产一区美女| 夜夜精品视频| 国产精品婷婷| 亚洲高清一区二区三区| 欧美人成网站| 亚洲一区精彩视频| 久久香蕉国产线看观看av| 亚洲破处大片| 欧美亚洲综合久久| 亚洲成人在线视频播放| 亚洲一区二区三区四区中文| 国产性色一区二区| 亚洲美女中文字幕| 国产精品久久久久久五月尺| 久久精品国产清高在天天线 | 亚洲巨乳在线| 久久国内精品视频| 亚洲国产天堂久久综合| 性亚洲最疯狂xxxx高清| 18成人免费观看视频| 亚洲女性裸体视频| 伊人激情综合| 亚洲一区二区视频在线观看| 国产综合精品| 亚洲淫片在线视频| 亚洲第一精品久久忘忧草社区| 亚洲综合电影一区二区三区| 红桃视频国产一区| 亚洲午夜性刺激影院| 黄色成人在线网址| 亚洲自拍三区| 在线看片欧美| 欧美一区二区网站| 亚洲美女毛片| 麻豆久久精品| 亚洲欧美另类在线观看| 欧美伦理91i| 久久国产精品电影| 国产精品久久久久永久免费观看| 亚洲欧洲中文日韩久久av乱码| 国产精品视频网| 夜夜嗨av一区二区三区中文字幕 | 亚洲国产精品日韩| 久久精品导航| 亚洲午夜在线观看视频在线| 欧美国产综合|