Java實(shí)戰(zhàn)之晚會抽獎系統(tǒng)的實(shí)現(xiàn)
一、項(xiàng)目運(yùn)行
環(huán)境配置:
Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)
項(xiàng)目技術(shù):
Jdbc+ Servlert + html+ css + JavaScript + JQuery + Ajax +等等
二、效果圖
三、核心代碼
管理員登陸控制層
public class adminAction implements ModelDriven{ admin admin = null; public String login() { DBManager dbManager = new DBManager(); String sql= "select * from admin where username = '"+admin.getUsername()+"' and password = '"+admin.getPassword()+"'"; ResultSet resultSet = dbManager.executeQuery(sql); try { if (resultSet.next()) { System.out.println("登陸成功"); ActionContext.getContext().getSession().put("admin", admin); return "success"; }else { ActionContext.getContext().getSession().put("message", "登錄失敗"); return "failed"; } } catch (Exception e) { e.printStackTrace(); ActionContext.getContext().getSession().put("message", "登錄失敗"); // TODO: handle exception }finally{ dbManager.closeConnection(); } return "failed"; } @Override public Object getModel() { // TODO Auto-generated method stub if (admin == null) { admin = new admin(); } return admin; } }
抽獎控制層一二三等獎設(shè)置
public class choujiangAction implements ModelDriven { private luck_dog luck_dog = null; @Override public Object getModel() { // TODO Auto-generated method stub if (luck_dog == null) { luck_dog = new luck_dog(); } return luck_dog; } public void choujiang() { System.out.println(luck_dog.getLuck_num()); DBManager dbManager = new DBManager(); String sql = "select * from lucky_dog where luck_num = " + luck_dog.getLuck_num(); ResultSet resultSet = dbManager.executeQuery(sql); try { if (resultSet.next()) { System.out.println("這個號碼已經(jīng)中過獎?。。?); String s = "{\"name\":\"提示\",\"age\":\"alreadyexisterror\"}"; ServletActionContext.getResponse() .setCharacterEncoding("UTF-8"); ServletActionContext.getResponse().getWriter().print(s); return; } else { int total = 0; int luck_group = 0; sql = "select count(*)as totalCount from lucky_dog"; resultSet = dbManager.executeQuery(sql); if (resultSet.next()) { total = resultSet.getInt("totalCount"); }// 得到抽獎表中的記錄數(shù) if (total < 8) { luck_group = 3;// 三等獎8個 } else if (total < 13) { luck_group = 2;// 二等獎5個 } else if (total < 16) { luck_group = 1;// 一等獎3個 } else { System.out.println("抽獎總數(shù)已滿?。?!"); String s = "{\"name\":\"提示\",\"age\":\"totaloverflowerror\"}"; ServletActionContext.getResponse().setCharacterEncoding( "UTF-8"); ServletActionContext.getResponse().getWriter().print(s); return; } sql = "insert into lucky_dog (luck_num,luck_group)values(" + luck_dog.getLuck_num() + "," + luck_group + ")"; boolean result = dbManager.insertSQL(sql); if (result) { String s = "{\"name\":\"提示\",\"age\":\"success\"}"; ServletActionContext.getResponse().setCharacterEncoding( "UTF-8"); ServletActionContext.getResponse().getWriter().print(s); System.out.println("抽獎數(shù)據(jù)已經(jīng)寫入數(shù)據(jù)庫"); } else { System.out.println("抽獎數(shù)據(jù)寫入失敗"); } } } catch (Exception e) { // TODO: handle exception } finally { dbManager.closeConnection(); } } public void view_result() { System.out.println("view_resultview_resultview_result"); DBManager dbManager = new DBManager(); String sql = "select * from lucky_dog"; luck_dog luck_dog = null; ResultSet resultSet = dbManager.executeQuery(sql); List<luck_dog> luck_dogList = new ArrayList<luck_dog>(); try { while (resultSet.next()) { luck_dog = new luck_dog(); luck_dog.setId(resultSet.getInt("id")); luck_dog.setLuck_group(resultSet.getInt("luck_group")); luck_dog.setLuck_num(resultSet.getInt("luck_num")); luck_dogList.add(luck_dog); } JSONArray jsonArray = JSONArray.fromObject(luck_dogList); System.out.println(jsonArray); // String s = "{\"name\":\"提示\",\"age\":\"已提交搶答申請,請靜候搶答結(jié)果!?。"}"; ServletActionContext.getResponse().setCharacterEncoding("UTF-8"); ServletActionContext.getResponse().getWriter().print(jsonArray); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } finally { dbManager.closeConnection(); } } }
搶答控制層
public class choujiangAction implements ModelDriven { private luck_dog luck_dog = null; @Override public Object getModel() { // TODO Auto-generated method stub if (luck_dog == null) { luck_dog = new luck_dog(); } return luck_dog; } public void choujiang() { System.out.println(luck_dog.getLuck_num()); DBManager dbManager = new DBManager(); String sql = "select * from lucky_dog where luck_num = " + luck_dog.getLuck_num(); ResultSet resultSet = dbManager.executeQuery(sql); try { if (resultSet.next()) { System.out.println("這個號碼已經(jīng)中過獎?。。?); String s = "{\"name\":\"提示\",\"age\":\"alreadyexisterror\"}"; ServletActionContext.getResponse() .setCharacterEncoding("UTF-8"); ServletActionContext.getResponse().getWriter().print(s); return; } else { int total = 0; int luck_group = 0; sql = "select count(*)as totalCount from lucky_dog"; resultSet = dbManager.executeQuery(sql); if (resultSet.next()) { total = resultSet.getInt("totalCount"); }// 得到抽獎表中的記錄數(shù) if (total < 8) { luck_group = 3;// 三等獎8個 } else if (total < 13) { luck_group = 2;// 二等獎5個 } else if (total < 16) { luck_group = 1;// 一等獎3個 } else { System.out.println("抽獎總數(shù)已滿?。?!"); String s = "{\"name\":\"提示\",\"age\":\"totaloverflowerror\"}"; ServletActionContext.getResponse().setCharacterEncoding( "UTF-8"); ServletActionContext.getResponse().getWriter().print(s); return; } sql = "insert into lucky_dog (luck_num,luck_group)values(" + luck_dog.getLuck_num() + "," + luck_group + ")"; boolean result = dbManager.insertSQL(sql); if (result) { String s = "{\"name\":\"提示\",\"age\":\"success\"}"; ServletActionContext.getResponse().setCharacterEncoding( "UTF-8"); ServletActionContext.getResponse().getWriter().print(s); System.out.println("抽獎數(shù)據(jù)已經(jīng)寫入數(shù)據(jù)庫"); } else { System.out.println("抽獎數(shù)據(jù)寫入失敗"); } } } catch (Exception e) { // TODO: handle exception } finally { dbManager.closeConnection(); } } public void view_result() { System.out.println("view_resultview_resultview_result"); DBManager dbManager = new DBManager(); String sql = "select * from lucky_dog"; luck_dog luck_dog = null; ResultSet resultSet = dbManager.executeQuery(sql); List<luck_dog> luck_dogList = new ArrayList<luck_dog>(); try { while (resultSet.next()) { luck_dog = new luck_dog(); luck_dog.setId(resultSet.getInt("id")); luck_dog.setLuck_group(resultSet.getInt("luck_group")); luck_dog.setLuck_num(resultSet.getInt("luck_num")); luck_dogList.add(luck_dog); } JSONArray jsonArray = JSONArray.fromObject(luck_dogList); System.out.println(jsonArray); // String s = "{\"name\":\"提示\",\"age\":\"已提交搶答申請,請靜候搶答結(jié)果?。?!\"}"; ServletActionContext.getResponse().setCharacterEncoding("UTF-8"); ServletActionContext.getResponse().getWriter().print(jsonArray); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } finally { dbManager.closeConnection(); } } }
到此這篇關(guān)于Java實(shí)戰(zhàn)之晚會抽獎系統(tǒng)的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Java抽獎系統(tǒng)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Java畢業(yè)設(shè)計實(shí)戰(zhàn)之健身器材商城系統(tǒng)的實(shí)現(xiàn)
- Java實(shí)戰(zhàn)之酒店人事管理系統(tǒng)的實(shí)現(xiàn)
- Java畢業(yè)設(shè)計實(shí)戰(zhàn)之養(yǎng)老院管理系統(tǒng)的實(shí)現(xiàn)
- Java實(shí)戰(zhàn)之在線寄查快遞系統(tǒng)的實(shí)現(xiàn)
- Java實(shí)戰(zhàn)之在線租房系統(tǒng)的實(shí)現(xiàn)
- Java實(shí)戰(zhàn)之火車票預(yù)訂系統(tǒng)的實(shí)現(xiàn)
- Java畢業(yè)設(shè)計實(shí)戰(zhàn)之健身俱樂部管理系統(tǒng)的實(shí)現(xiàn)
- Java畢業(yè)設(shè)計實(shí)戰(zhàn)之工作管理系統(tǒng)的實(shí)現(xiàn)
- Java畢業(yè)設(shè)計實(shí)戰(zhàn)之學(xué)生管理系統(tǒng)的實(shí)現(xiàn)
相關(guān)文章
java-jsp springmvc-controller 傳值到頁面的方法
下面小編就為大家分享一篇java-jsp springmvc-controller 傳值到頁面的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-03-03Spring?Boot?利用?XML?方式整合?MyBatis
這篇文章主要介紹了Spring?Boot?利用?XML?方式整合?MyBatis,文章圍繞主題的相關(guān)資料展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,組要的小伙伴可以參考一下2022-05-05Java實(shí)現(xiàn)AWT四大事件的詳細(xì)過程
AWT的事件處理是一種委派式事件處理方式:普通組件(事件源)將整個事件處理委托給特定的對象(事件監(jiān)聽器);當(dāng)該事件源發(fā)生指定的事件時,就通知所委托的事件監(jiān)聽器,由事件監(jiān)聽器來處理這個事件2022-04-04詳解Java利用實(shí)現(xiàn)對稱加密(DES、3DES、AES)
本篇文章主要介紹了Java利用實(shí)現(xiàn)對稱加密(DES、3DES、AES),具有一定的參考價值,有興趣的可以了解一下。2017-01-01Java超詳細(xì)教你寫一個銀行存款系統(tǒng)案例
這篇文章主要介紹了怎么用Java來寫一個銀行的存款系統(tǒng),銀行存款主要有賬號和存款金額兩個屬性,感興趣的朋友跟隨文章往下看看吧2022-03-03詳解Java中的File文件類以及FileDescriptor文件描述類
在Java中File類可以用來新建文件和目錄對象,而FileDescriptor類則被用來表示文件或目錄的可操作性,接下來我們就來詳解Java中的File文件類以及FileDescriptor文件描述類2016-06-06