功能需求用戶分為普通登陸用戶以及管理員賬戶

普通用戶提供以下功能:

系統(tǒng)" />

国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

15158846557 在線咨詢 在線咨詢
15158846557 在線咨詢
所在位置: 首頁 > 營(yíng)銷資訊 > 網(wǎng)站運(yùn)營(yíng) > 如何使用Java制作一個(gè)網(wǎng)頁版的投票系統(tǒng)?

如何使用Java制作一個(gè)網(wǎng)頁版的投票系統(tǒng)?

時(shí)間:2023-07-05 07:21:01 | 來源:網(wǎng)站運(yùn)營(yíng)

時(shí)間:2023-07-05 07:21:01 來源:網(wǎng)站運(yùn)營(yíng)

如何使用Java制作一個(gè)網(wǎng)頁版的投票系統(tǒng)?:

投票系統(tǒng)的功能

設(shè)計(jì)一個(gè)投票系統(tǒng),實(shí)現(xiàn)用戶對(duì)某件事的匿名投票,有后臺(tái)管理的功能,實(shí)現(xiàn)對(duì)整個(gè)系統(tǒng)的管理

功能需求

用戶分為普通登陸用戶以及管理員賬戶

普通用戶提供以下功能:

系統(tǒng)首頁上顯示所有投票選項(xiàng)的列表,顯示當(dāng)前登錄用戶并提供注銷功能,用戶可以通過選中某個(gè)選項(xiàng)并點(diǎn)擊“投票”按鈕進(jìn)行投票操作。

用戶點(diǎn)擊后可在當(dāng)前一頁面上看到各個(gè)投票選項(xiàng)目前的投票情況,主要包括各選項(xiàng)所得的票數(shù),并且以柱形顯示各選項(xiàng)的得票率,可以讓用戶從直觀上看到各項(xiàng)的得票情況。

管理員用戶提供以下功能:

顯示當(dāng)前登錄用戶并提供注銷功能,提供系統(tǒng)管理實(shí)現(xiàn)用戶的增刪查改及重新投票等功能,還能顯示用戶列表及投票情況表。

開發(fā)的系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)要合理,能夠?qū)崿F(xiàn)設(shè)計(jì)的全部功能,能夠運(yùn)行演示。能夠體一個(gè)軟件的基本功能。

配置以及使用的技術(shù)

Jdk1.8、 tomcat6.0、 Eclipse、 sql server 2008、JSP

SQL Server系列軟件是Microsoft 公司推出的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。

普通用戶模板關(guān)系圖如下:

管理員模塊關(guān)系圖如下:

數(shù)據(jù)庫設(shè)計(jì)如下:

關(guān)鍵代碼實(shí)現(xiàn)

用戶登錄模塊

<% request.setCharacterEncoding("gb2312"); String account = request.getParameter("account"); String password = request.getParameter("password"); UserDao udao = new UserDao(); User user = udao.getUserByAccount(account); if(user == null||!user.getPassword().equals(password)){ %> <br><br><br><br><br><br> 登錄失敗<a href="loginForm.jsp">返回登錄頁面</a> <% } else if(user.getAdmin()==true){ session.setAttribute("user", user); response.sendRedirect("admin.jsp"); } else{ session.setAttribute("user", user); response.sendRedirect("display.jsp"); } %>投票模塊代碼

<% String account=user.getAccount(); String[]teacherno =request.getParameterValues("teacherno"); VoteDao vdao = new VoteDao(); UserDao udao = new UserDao(); int ticket= udao.ticket(account); if(ticket>0){ if(teacherno!=null){ vdao.updateVotes(teacherno); vdao.updateTictet(account); } response.sendRedirect("display.jsp"); } else{ response.sendRedirect("noTicket.jsp"); } %>新建用戶模塊

<% request.setCharacterEncoding("gb2312"); String account = request.getParameter("account"); String password = request.getParameter("password"); String uname = request.getParameter("uname"); String admin =request.getParameter("admin"); UserDao udao = new UserDao(); User user2=udao.getUserByAccount(account); if(user2!=null){ %> <jsp:forward page="changeError2.jsp"></jsp:forward> <% } udao.adduser(account, password, uname, admin); %> <br><br><br><br><br><br> <p align="center">創(chuàng)建用戶成功!<br> <a href="admin.jsp">返回</a></p>刪除用戶模塊

<% request.setCharacterEncoding("gb2312"); String account = request.getParameter("account"); String acc = user.getAccount(); if(acc.equals(account)){ %> <jsp:forward page="changeError3.jsp"></jsp:forward> <% } UserDao udao = new UserDao(); User user2=udao.getUserByAccount(account); if(user2==null){ %><jsp:forward page="changeError.jsp"></jsp:forward> <% } udao.deluser(account); %> <br><br><br><br><br><br> <p align="center">刪除用戶成功!<br> <a href="admin.jsp">返回</a></p>修改用戶模塊

<% request.setCharacterEncoding("gb2312"); String account = request.getParameter("account"); String password = request.getParameter("password"); String uname = request.getParameter("uname"); String admin =request.getParameter("admin"); UserDao udao = new UserDao(); User user2=udao.getUserByAccount(account); if(user2==null){ %> <jsp:forward page="changeError.jsp"></jsp:forward> <% } udao.changeuser(account, password, uname, admin); %> <br><br><br><br><br><br> <p align="center">修改用戶成功!<br> <a href="admin.jsp">返回管理頁面</a></p>初始化投票模塊

public void initVote() throws Exception{ initConnection(); String sql="UPDATE T_VOTE SET VOTE = 0"; PreparedStatement ps = conn.prepareStatement(sql); ps.executeUpdate(); closeConnection();} public void initTicket() throws Exception{ initConnection(); String sql="UPDATE T_USER SET TICKET = 1"; PreparedStatement ps = conn.prepareStatement(sql); ps.executeUpdate(); closeConnection();}注銷登錄模塊

<% session.invalidate(); response.sendRedirect("loginForm.jsp"); %>防刷票的實(shí)現(xiàn)

public int ticket(String account) throws Exception{ initConnection(); String sql ="SELECT TICKET FROM T_USER WHERE ACCOUNT= ? "; PreparedStatement ps = conn.prepareStatement(sql); ps.setString(1, account); ResultSet rs = ps.executeQuery(); rs.next(); int ticket =rs.getInt("TICKET"); if(ticket==0) { closeConnection(); return 0; } else { closeConnection(); return 1; } }

連接數(shù)據(jù)庫

public void initConnection() throws Exception { Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); conn=DriverManager.getConnection("jdbc:sqlserver://localhost: 1433;DatabaseName=Vote;user=root;password=123456789");

數(shù)據(jù)庫操作設(shè)計(jì)

public User getUserByAccount(String account) throws Exception{ User use = null; initConnection(); String sql="SELECT ACCOUNT,PASSWORD,UNAME,ADMIN FROM T_USER WHERE ACCOUNT = ?"; PreparedStatement ps = conn.prepareStatement(sql); ps.setString(1, account); ResultSet rs =ps.executeQuery(); if(rs.next()) { use = new User(); use.setAccount(rs.getString("ACCOUNT")); use.setPassword(rs.getString("PASSWORD")); use.setUname(rs.getString("UNAME")); use.setAdmin(rs.getBoolean("ADMIN")); } closeConnection(); return use;


如需項(xiàng)目源碼的同學(xué)請(qǐng)?jiān)诠娞?hào)后臺(tái)回復(fù)關(guān)鍵字【源碼】領(lǐng)取



關(guān)鍵詞:系統(tǒng),投票,使用

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉