基于jsp的投票系统代码
时间: 2023-08-09 16:10:45 浏览: 135
这里提供一个基于JSP的简单投票系统代码示例:
1. 首先,在数据库中创建一个名为"vote"的表,包含以下四个字段:
- id: 投票项的唯一标识符,自增长整数类型
- name: 投票项的名称,字符串类型
- count: 投票项的票数,整数类型
- time: 投票项创建时间,日期时间类型
2. 在JSP页面中,使用以下代码显示投票项列表和投票表单:
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.sql.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>投票系统</title>
</head>
<body>
<h1>投票系统</h1>
<%
// 连接数据库
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/vote";
String user = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, user, password);
// 查询投票项列表
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT id, name, count FROM vote");
while (rs.next()) {
String id = rs.getString("id");
String name = rs.getString("name");
int count = rs.getInt("count");
%>
<p><%=name%>: <%=count%> 票</p>
<form method="post" action="vote.jsp">
<input type="hidden" name="id" value="<%=id%>">
<input type="submit" value="投票">
</form>
<%
}
// 关闭数据库连接
rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
```
3. 在JSP页面中,使用以下代码处理投票请求:
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.sql.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>投票系统</title>
</head>
<body>
<h1>投票系统</h1>
<%
// 获取投票项ID
String id = request.getParameter("id");
// 连接数据库
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/vote";
String user = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, user, password);
// 查询投票项
PreparedStatement pstmt = conn.prepareStatement("SELECT count FROM vote WHERE id = ?");
pstmt.setString(1, id);
ResultSet rs = pstmt.executeQuery();
int count = 0;
if (rs.next()) {
count = rs.getInt("count");
}
// 更新投票项票数
pstmt = conn.prepareStatement("UPDATE vote SET count = ? WHERE id = ?");
pstmt.setInt(1, count + 1);
pstmt.setString(2, id);
pstmt.executeUpdate();
// 关闭数据库连接
rs.close();
pstmt.close();
conn.close();
%>
<p>投票成功!</p>
<a href="index.jsp">返回</a>
</body>
</html>
```
注意:以上代码仅供参考,实际应用中需要考虑更多的安全性和数据一致性问题。