基于javaweb+mysql的jsp+servlet晚会抽奖系统(java+jdbc+servlet+ajax+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb+mysql的JSP+Servlet晚会抽奖系统(java+jdbc+servlet+ajax+mysql)

一、项目运行 环境配置:

Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)

项目技术:

Jdbc+ Servlert + html+ css + JavaScript + JQuery + Ajax +等等

            System.err.println("connect失败");
            e.printStackTrace();
        }
        return connection;
    }

    public boolean deleteSQL(String sqlString) {
        try {
            prst = getConnnection().prepareStatement(sqlString);
            //prst.setString(1, parameter);
            prst.execute();
            return true;
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            System.out.println("");
            return false;
        }
    }

    public boolean deleteSQL(String sqlString, String parameter) {
        try {
            prst = getConnnection().prepareStatement(sqlString);
            prst.setString(1, parameter);
            return prst.execute();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            System.out.println("");
            return false;
        }
    }

    public boolean insertSQL(String sqlString) {
        try {
            prst = getConnnection().prepareStatement(sqlString);
            prst.execute();
            return true;
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        String dbClassName = "com.mysql.jdbc.Driver";
        String dbUrl = "jdbc:mysql://localhost:3306/project?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&autoReconnect=true&failOverReadOnly=false&allowPublicKeyRetrieval=true";
        String dbUser = "root";
        String dbPwd = "123456";
        try {
            Class.forName(dbClassName);
            connection = DriverManager.getConnection(dbUrl, dbUser, dbPwd);
        } catch (Exception e) {
            System.err.println("connect失败");
            e.printStackTrace();
        }
        return connection;
    }

    public boolean deleteSQL(String sqlString) {
        try {
            prst = getConnnection().prepareStatement(sqlString);
            //prst.setString(1, parameter);
            prst.execute();
            return true;
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            System.out.println("");
            return false;
        }
    }

    public boolean deleteSQL(String sqlString, String parameter) {
        try {
            prst = getConnnection().prepareStatement(sqlString);
            prst.setString(1, parameter);
            return prst.execute();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            System.out.println("");
            return false;
        }
    }

        try {
            prst = getConnnection().prepareStatement(sql);
            prst.setString(1, parameter1);
            prst.setInt(2, parameter2);
            prst.setString(3, parameter3);
            prst.setString(4, parameter4);
            prst.execute();
        } catch (SQLException e) {

            e.printStackTrace();
            return false;
        }
        return true;
    }

    public boolean executeUpdate(String sql, String parameter1, String parameter2, int parameter3, String parameter4, String parameter5) {
        try {
            prst = getConnnection().prepareStatement(sql);
            prst.setString(1, parameter1);
            prst.setString(2, parameter2);
            prst.setInt(3, parameter3);
            prst.setString(4, parameter4);
            prst.setString(5, parameter5);
            prst.execute();
        } catch (SQLException e) {
            e.printStackTrace();
            return false;
        }
        return true;
    }

    public boolean executeUpdate(String sql, String parameter1, String parameter2, String parameter3, String parameter4, String parameter5) {
        try {
            prst = getConnnection().prepareStatement(sql);
            prst.setString(1, parameter1);
            prst.setString(2, parameter2);
            prst.setString(3, parameter3);
            prst.setString(4, parameter4);
            prst.setString(5, parameter5);
            prst.execute();
        } catch (SQLException e) {
            e.printStackTrace();
				} else {
					sql = "insert into qiangda (group_id,ip,qiangda_time)values ("
							+ qiangda_group.getGroup_id()
							+ ",'"
							+ ip
							+ "','"
							+ String.valueOf(Calendar.getInstance()
									.getTimeInMillis()) + "')";
					System.err.println(sql);
					dbManager.insertSQL(sql);
					System.out.println("抢答成功!!!");
					String s = "{\"name\":\"提示\",\"age\":\"已提交抢答申请,请静候抢答结果!!!\"}";
					ServletActionContext.getResponse().setCharacterEncoding("UTF-8");
					ServletActionContext.getResponse().getWriter().print(s);
				}
			}
		} catch (Exception e) {
			// TODO: handle exception
		} finally {
			dbManager.closeConnection();

		}

	}

	public void view_latest_result() {
		DBManager dbManager = new DBManager();
		String sqlString = "select max(group_id) as max_id from qiangda_group ";
		try {
			System.out.println(sqlString);
			ResultSet resultSet = dbManager.executeQuery(sqlString);
			if (resultSet.next()) {
				int max_id = resultSet.getInt("max_id");
				sqlString = "select * from qiangda where group_id = "+max_id+" order by qiangda_time";
				System.out.println(sqlString);
				resultSet = dbManager.executeQuery(sqlString);
				List<qiangda> qiangdaList = new ArrayList<qiangda>();
				qiangda qiangda = null;
				while (resultSet.next()) {
					qiangda = new qiangda();
					qiangda.setGroup_id(resultSet.getInt("group_id"));
					qiangda.setIp(resultSet.getString("ip"));
	    }
	}

}

public class admin {
	private String username;
	private String password;

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}
}
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%
response.setHeader("Pragma","No-cache");
response.setHeader("Cache-Control","no-cache");
response.setDateHeader("Expires", 0);
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="css/style.css" rel="stylesheet" type="text/css" />
<c:if test="${sessionScope.admin==null }" >
<meta http-equiv="refresh" content="0;url=admin_login.jsp">
</c:if> 

public class huodongAction {
	
	public void delete_choujiang() {
		String sqlString = "delete from lucky_dog";
		DBManager dbManager = new DBManager();
		try {
			if (dbManager.deleteSQL(sqlString)) {
				String s = "{\"name\":\"提示\",\"age\":\"已删除全部抽奖数据,请重新抽奖!!!\"}";
				ServletActionContext.getResponse()
						.setCharacterEncoding("UTF-8");
				ServletActionContext.getResponse().getWriter().print(s);
			}
		} catch (Exception e) {
			// TODO: handle exception
		}finally{
			dbManager.closeConnection();
		}
	}

	public void delete_fenzu() {
		String sqlString = "delete from huodong";
		DBManager dbManager = new DBManager();
		try {
			if (dbManager.deleteSQL(sqlString)) {
				String s = "{\"name\":\"提示\",\"age\":\"已删除全部分组数据,请重新分组!!!\"}";
				ServletActionContext.getResponse()
						.setCharacterEncoding("UTF-8");
				ServletActionContext.getResponse().getWriter().print(s);
			}
		} catch (Exception e) {
			// TODO: handle exception
		}finally{
			dbManager.closeConnection();
		}

	}


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;
	}
}

public class qiangda implements Serializable{
	private int qiangda_id;
			// 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\":\"已提交抢答申请,请静候抢答结果!!!\"}";
			ServletActionContext.getResponse().setCharacterEncoding("UTF-8");
			ServletActionContext.getResponse().getWriter().print(jsonArray);
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		} finally {
			dbManager.closeConnection();

		}

	}

}

public class vder {
	public int[] getRandomFromArray(int[] array, int count) {
		// ArrayList<Integer>arrayList =null;
		int[] a = array;
		int[] result = new int[count];
		boolean r[] = new boolean[array.length];
		Random random = new Random();
		int m = count; // 要随机取的元素个数

/*
function zOpen(){
	var diag = new Dialog("Diag2");
	diag.Width = 900;
	diag.Height = 400;
	diag.Title = "弹出窗口示例";
	diag.URL = "http://www.so7c.com";
	diag.OKEvent = zAlert;//点击确定后调用的方法
	diag.show();
}
*/
function zAlert(){
		Dialog.alert("你点击了一个按钮");
}

/*
function zConfirm(){
	Dialog.confirm('警告:您确认要XXOO吗?',function(){Dialog.alert("yeah,周末到了,正是好时候");});
}
*/
/*
function sometext(ele,n){
	var strArr=["可","以","清","心","也"];
	var writeStr=""
	for(i=0;i<n;i++){
		index=parseInt(Math.random()*5);
		for(j=0;j<5;j++){
			str=index+j>4?index+j-5:index+j;
			writeStr+=strArr[str];
		}
	}
	$(ele).innerHTML=writeStr;
}
*/
</script>
</head>
<body align="center">
<br/><br/><br/>

<div></div>
<!-- <input type="button" value="抽奖器" οnclick="zOpenD()" /> -->
<INPUT type=image src="images/choujiangqi.png" align=absMiddle border=0 name=RedImg3 onclick="zOpenD()">
<br/>
<div></div>
<!-- <input type="button" value="抢答器" οnclick="zOpenD1()" /> -->
<INPUT type=image src="images/qiangdaqi.png" align=absMiddle border=0 name=RedImg3 onclick="zOpenD1()">
<br/>
<!-- <input type="button" value="分组器" οnclick="zOpenD2()" /> -->
<INPUT type=image src="images/fenzuqi.png" align=absMiddle border=0 name=RedImg3 onclick="zOpenD2()">
			e.printStackTrace();
		} finally {
			dbManager.closeConnection();

		}

	}

}

public class vder {
	public int[] getRandomFromArray(int[] array, int count) {
		// ArrayList<Integer>arrayList =null;
		int[] a = array;
		int[] result = new int[count];
		boolean r[] = new boolean[array.length];
		Random random = new Random();
		int m = count; // 要随机取的元素个数
		if (m > a.length || m < 0)
			return a;
		int n = 0;
		while (true) {
			int temp = random.nextInt(a.length);
			if (!r[temp]) {
				if (n == m) // 取到足量随机数后退出循环
					break;
				n++;
				System.out.println("得到的第" + n + "个随机数为:" + a[temp]);
				result[n - 1] = a[temp];
				r[temp] = true;
			}
		}
		return result;
	}

	public static void main(String[] args) {
		// Long along = System.currentTimeMillis();
		// int a[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9,
		// 10,11,12,13,14,15,16,17,18,19,20,21,22,23,24 };
		/*
		 * int a[] = new int[100]; for(int i =0;i<100;i++) a[i]=i; boolean r[] =
		 * new boolean[a.length]; Random random = new Random(); int m = 10; //
		 * 要随机取的元素个数 if (m > a.length || m < 0) return; int n = 0; Long along =
		 * System.currentTimeMillis(); while (true) { int temp =
		 * random.nextInt(a.length); if (!r[temp]) { if (n == m) // 取到足量随机数后退出循环
            return false;
        }
        return true;
    }

    public boolean executeUpdate(String sql, String parameter1, int parameter2, String parameter3, String parameter4) {
        try {
            prst = getConnnection().prepareStatement(sql);
            prst.setString(1, parameter1);
            prst.setInt(2, parameter2);
            prst.setString(3, parameter3);
            prst.setString(4, parameter4);
            prst.execute();
        } catch (SQLException e) {

            e.printStackTrace();
            return false;
        }
        return true;
    }

    public boolean executeUpdate(String sql, String parameter1, String parameter2, int parameter3, String parameter4, String parameter5) {
        try {
            prst = getConnnection().prepareStatement(sql);
            prst.setString(1, parameter1);
            prst.setString(2, parameter2);
            prst.setInt(3, parameter3);
            prst.setString(4, parameter4);
            prst.setString(5, parameter5);
            prst.execute();
        } catch (SQLException e) {
            e.printStackTrace();
            return false;
        }
        return true;
    }

    public boolean executeUpdate(String sql, String parameter1, String parameter2, String parameter3, String parameter4, String parameter5) {
        try {
            prst = getConnnection().prepareStatement(sql);
            prst.setString(1, parameter1);
            prst.setString(2, parameter2);
            prst.setString(3, parameter3);
            prst.setString(4, parameter4);
            prst.setString(5, parameter5);
            prst.execute();
        } catch (SQLException e) {
            e.printStackTrace();
            return false;
	private int qiangda_id;
	private int group_id;
	private String ip;
	private Long qiangda_time;

	public int getQiangda_id() {
		return qiangda_id;
	}

	public void setQiangda_id(int qiangda_id) {
		this.qiangda_id = qiangda_id;
	}

	public int getGroup_id() {
		return group_id;
	}

	public void setGroup_id(int group_id) {
		this.group_id = group_id;
	}

	public String getIp() {
		return ip;
	}

	public void setIp(String ip) {
		this.ip = ip;
	}

	public Long getQiangda_time() {
		return qiangda_time;
	}

	public void setQiangda_time(Long qiangda_time) {
		this.qiangda_time = qiangda_time;
	}

}

	diag.Height = 400;
	diag.Title = "弹出窗口示例";
	diag.URL = "http://www.so7c.com";
	diag.OKEvent = zAlert;//点击确定后调用的方法
	diag.show();
}
*/
function zAlert(){
		Dialog.alert("你点击了一个按钮");
}

/*
function zConfirm(){
	Dialog.confirm('警告:您确认要XXOO吗?',function(){Dialog.alert("yeah,周末到了,正是好时候");});
}
*/
/*
function sometext(ele,n){
	var strArr=["可","以","清","心","也"];
	var writeStr=""
	for(i=0;i<n;i++){
		index=parseInt(Math.random()*5);
		for(j=0;j<5;j++){
			str=index+j>4?index+j-5:index+j;
			writeStr+=strArr[str];
		}
	}
	$(ele).innerHTML=writeStr;
}
*/
</script>
</head>
<body align="center">
<br/><br/><br/>

<div></div>
<!-- <input type="button" value="抽奖器" οnclick="zOpenD()" /> -->
<INPUT type=image src="images/choujiangqi.png" align=absMiddle border=0 name=RedImg3 onclick="zOpenD()">
<br/>
<div></div>
<!-- <input type="button" value="抢答器" οnclick="zOpenD1()" /> -->
<INPUT type=image src="images/qiangdaqi.png" align=absMiddle border=0 name=RedImg3 onclick="zOpenD1()">
<br/>
			}
		} 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\":\"已提交抢答申请,请静候抢答结果!!!\"}";
			ServletActionContext.getResponse().setCharacterEncoding("UTF-8");
			ServletActionContext.getResponse().getWriter().print(jsonArray);
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		} finally {
			dbManager.closeConnection();

		}

	}


<script type="text/javascript">
/*
function $(ele) {
  if (typeof(ele) == 'string'){
    ele = document.getElementById(ele)
    if(!ele){
  		return null;
    }
  }
  return ele;
}
*/

function zOpenD(){
	var diag = new Dialog("Diag1");
	diag.Width = 1000;
	diag.Height = 720;
	diag.Title = "抽奖环节";
	diag.URL = "choujiang.jsp";
	diag.ShowMessageRow = true;
	diag.MessageTitle = "抽奖环节";
	diag.Message = "三等奖8位  二等奖5位 一等奖3位";
	//diag.OKEvent = zAlert;//点击确定后调用的方法
	diag.show();
}

function zOpenD1(){
	var diag = new Dialog("Diag1");
	diag.Width = 900;
	diag.Height = 550;
	diag.Title = "抽奖环节";
	diag.URL = "qiangda_admin.jsp";
	diag.ShowMessageRow = true;
	diag.MessageTitle = "抢答环节";
	diag.Message = "主持人点击抢答按钮之后才可以开始抢答";
	//diag.OKEvent = zAlert;//点击确定后调用的方法
	diag.show();
}

function zOpenD2(){
	var diag = new Dialog("Diag1");
	diag.Width = 700;
	diag.Height = 300;
	diag.Title = "分组";
	diag.URL = "huodongfenzu.jsp";
	diag.ShowMessageRow = true;
		DBManager dbManager = new DBManager();
		ResultSet resultSet = dbManager.executeQuery(sql);
		List<huodong> huodongList = new ArrayList<>();
		huodong huodong = null;
		try {
			while (resultSet.next()) {
				huodong = new huodong();
				huodong.setGroup_id(resultSet.getInt("group_id"));
				huodong.setHuodong_id(resultSet.getInt("huodong_id"));
				huodong.setId(resultSet.getInt("id"));
				huodong.setNum(resultSet.getInt("num"));
				huodongList.add(huodong);
			}
			JSONArray jsonArray = JSONArray.fromObject(huodongList);
			System.out.println(jsonArray);
			// String s = "{\"name\":\"提示\",\"age\":\"已提交抢答申请,请静候抢答结果!!!\"}";
			ServletActionContext.getResponse().setCharacterEncoding("UTF-8");
			ServletActionContext.getResponse().getWriter().print(jsonArray);

		} catch (Exception e) {
			// TODO: handle exception
		} finally {
			dbManager.closeConnection();
		}

	}

	public void fenzu() {
		DBManager dbManager = new DBManager();
		String sqlString = "";
		sqlString = "select * from huodong";
		ResultSet resultSet = dbManager.executeQuery(sqlString);
		try {
			if (resultSet.next()) {
				System.out.println("分组方案已经确定,不允许修改!!!");
				String s = "{\"name\":\"提示\",\"age\":\"分组方案已经确定,不允许修改!!!\"}";

				ServletActionContext.getResponse()
						.setCharacterEncoding("UTF-8");
				ServletActionContext.getResponse().getWriter().print(s);
				return;
			}

public class huodongAction {
	
	public void delete_choujiang() {
		String sqlString = "delete from lucky_dog";
		DBManager dbManager = new DBManager();
		try {
			if (dbManager.deleteSQL(sqlString)) {
				String s = "{\"name\":\"提示\",\"age\":\"已删除全部抽奖数据,请重新抽奖!!!\"}";
				ServletActionContext.getResponse()
						.setCharacterEncoding("UTF-8");
				ServletActionContext.getResponse().getWriter().print(s);
			}
		} catch (Exception e) {
			// TODO: handle exception
		}finally{
			dbManager.closeConnection();
		}
	}

	public void delete_fenzu() {
		String sqlString = "delete from huodong";
		DBManager dbManager = new DBManager();
		try {
			if (dbManager.deleteSQL(sqlString)) {
				String s = "{\"name\":\"提示\",\"age\":\"已删除全部分组数据,请重新分组!!!\"}";
				ServletActionContext.getResponse()
						.setCharacterEncoding("UTF-8");
				ServletActionContext.getResponse().getWriter().print(s);
			}
		} catch (Exception e) {
			// TODO: handle exception
		}finally{
			dbManager.closeConnection();
		}

	}

	public void fenzu_view() {
				} else if (i <= 33) {
					group_id = 3;
				} else {
					group_id = 4;
				}
			}
			sqlString = "insert into huodong (huodong_id,group_id,num)values("
					+ huodong_id + "," + group_id + "," + result[i - 1] + ")";
			System.out.println(sqlString);
			dbManager.insertSQL(sqlString);
		}

		try {
			String s = "{\"name\":\"提示\",\"age\":\"分组方案已生成!!!\"}";

			ServletActionContext.getResponse().setCharacterEncoding("UTF-8");
			ServletActionContext.getResponse().getWriter().print(s);
		} catch (Exception e) {
			// TODO: handle exception
		}

		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();
		}

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐