源代码
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>用户添加页面</title> <script type="text/javascript"> function check(form) { teacher = form.password.value; didian = form.nickname.value; if(form.username.value == ""){ alert("课程名称不能为空"); return false; } if(form.password.value == ""){ alert("任课教师不能为空"); return false; } if((teacher!= "王建民")&&(teacher!= "刘立嘉")&&(teacher!= "刘丹")&&(teacher!= "王辉")&&(teacher!= "杨子光")){ alert("任课教师错误"); return false; } if(form.nickname.value == ""){ alert("教学地点不能为空"); return false; } /*if((didian != "基教")&&(didian != "基教405")){ alert("教学地点错误"); return false; }*/ if((didian.indexOf("基教")!=0)&&(didian.indexOf("一教")!=0)&&(didian.indexOf("二教")!=0)&&(didian.indexOf("三教")!=0)){ alert("教学地点错误"); return false; } return true; } </script> </head> <body> <%request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8"); %> <jsp:include page="inc.jsp"> <jsp:param name="every" value="添加" /> </jsp:include> <form name = "form1" action = "add.jsp" method = "post" onsubmit = "return check(form1)" > <table align="center" border="1" width="500"> <tr> <td>课程名称 : </td> <td> <input type="text" name="username" /> </td> </tr> <tr> <td>任课教师:</td> <td> <input type="text" name="password" /> </td> </tr> <tr> <td>教学地点:</td> <td> <input type="text" name="nickname" /> </td> </tr> <tr align="center"> <td colspan="2"> <input type="submit" value="提交" /> <input type="reset" value="重置" /> </td> </tr> </table> </form> </body> </html>
连接数据库
package com.jaovo.msg.dao; import java.sql.*; import java.util.*; import com.jaovo.msg.Util.DBUtil; import com.jaovo.msg.Util.UserException; import com.jaovo.msg.model.User; public class UserDaoImpl implements IUserDao{ @Override public void add(User user) { //获得链接对象 Connection connection = DBUtil.getConnection(); //准备sql语句 String sql = "select count(*) from usertable where username = ?"; //创建语句传输对象 PreparedStatement preparedStatement = null; ResultSet resultSet = null; try { preparedStatement = connection.prepareStatement(sql); preparedStatement.setString(1, user.getUsername()); //接收结果集 resultSet = preparedStatement.executeQuery(); //遍历结果集 while(resultSet.next()) { if (resultSet.getInt(1) > 0) { throw new UserException("用户已存在") ; } } sql = "insert into usertable(username,password,nickname) values(?,?,?)"; preparedStatement = connection.prepareStatement(sql); preparedStatement.setString(1, user.getUsername()); preparedStatement.setString(2, user.getPassword()); preparedStatement.setString(3, user.getNickname()); preparedStatement.executeUpdate(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { //关闭资源 DBUtil.close(resultSet); DBUtil.close(preparedStatement); DBUtil.close(connection); } } @Override public void delete(int id) { // TODO Auto-generated method stub Connection connection = DBUtil.getConnection(); String sql = "delete from usertable where id = ?"; PreparedStatement preparedStatement = null; try { preparedStatement = connection.prepareStatement(sql); preparedStatement.setInt(1, id); preparedStatement.executeUpdate(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { DBUtil.close(preparedStatement); DBUtil.close(connection); } } @Override public void update(User user) { // TODO Auto-generated method stub Connection connection = DBUtil.getConnection(); String sql = "update usertable set password = ?,nickname = ? where id = ?"; PreparedStatement preparedStatement =null; try { preparedStatement = connection.prepareStatement(sql); preparedStatement.setString(1, user.getPassword()); preparedStatement.setString(2, user.getNickname()); preparedStatement.setInt(3, user.getId()); preparedStatement.executeUpdate(); }catch (SQLException e ){ e.printStackTrace(); }finally { DBUtil.close(preparedStatement); DBUtil.close(connection); } } @Override public User load(int id) { Connection connection = DBUtil.getConnection(); String sql = "select * from usertable where id = ?"; PreparedStatement preparedStatement = null; ResultSet resultSet=null; User user = null; try { preparedStatement = connection.prepareStatement(sql); preparedStatement.setInt(1, id); resultSet = preparedStatement.executeQuery(); while(resultSet.next()) { user = new User(); user.setId(id); user.setUsername(resultSet.getString("username")); user.setPassword(resultSet.getString("password")); user.setNickname(resultSet.getString("nickname")); } } catch (Exception e) { // TODO: handle exception e.printStackTrace(); }finally { DBUtil.close(resultSet); DBUtil.close(preparedStatement); DBUtil.close(connection); } // TODO Auto-generated method stub return user; } @Override public User load(String username) { // TODO Auto-generated method stub Connection connection = DBUtil.getConnection(); String sql = "select * from usertable where username = ?"; PreparedStatement preparedStatement = null; ResultSet resultSet = null; User user =null; try { preparedStatement = connection.prepareStatement(sql); preparedStatement.setString(1, username); resultSet = preparedStatement.executeQuery(); while(resultSet.next()) { user = new User(); user.setId(resultSet.getInt("id")); user.setUsername(username); user.setPassword(resultSet.getString("password")); user.setNickname(resultSet.getString("nickname")); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { DBUtil.close(resultSet); DBUtil.close(preparedStatement); DBUtil.close(connection); } return user; } @Override public List<User> load() { // TODO Auto-generated method stub Connection connection = DBUtil.getConnection(); String sql = "select * from usertable"; PreparedStatement preparedStatement = null; ResultSet resultSet = null; List<User> users = new ArrayList<User>(); User user =null; try { preparedStatement = connection.prepareStatement(sql); resultSet = preparedStatement.executeQuery(); while(resultSet.next()) { user =new User(); user.setId(resultSet.getInt("id")); user.setUsername(resultSet.getString("username")); user.setPassword(resultSet.getString("password")); user.setNickname(resultSet.getString("nickname")); users.add(user); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { DBUtil.close(resultSet); DBUtil.close(preparedStatement); DBUtil.close(connection); } return users; } @Override public User login(String username, String password) { Connection con = DBUtil.getConnection(); PreparedStatement pra = null; ResultSet rs = null; User user = null; String sql = "select * from usertable where username = ?"; try { pra = con.prepareStatement(sql); pra.setString(1,username); rs = pra.executeQuery(); while(rs.next()) { user = new User(); user.setId(rs.getInt("id")); user.setUsername(username); user.setPassword(rs.getString("password")); user.setNickname(rs.getString("nickname")); } if(user==null)throw new UserException("该用户不存在"); if(!user.getPassword().equals(password))throw new UserException("密码错误"); } catch (SQLException e) { System.out.println(e.getMessage()); } return user; } }
实验截图
数据库中表