基本思路:
一个Regist.jsp注册页面,用于收集用户信息,发送请求给控制器Servlet;控制器层Servlet封装模型层对象 jBean,并调用其方法regiser实现用户信息的保存;模型层JavaBean.java 接收控制器层的对象,完成对数据库的操作。
话不多说,上代码。
首先有个数据库访问公共类,以后凡是操作数据库的页面都可以调用。不容多说:
Unilt.java
/** * */ package javaBeanServlet; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; /** * @author Administrator * */ public class Unilt { private static final String URL = "jdbc:mysql://localhost:3306/userdb"; private static final String USER = "root"; private static final String PASSWORD = "111111"; protected static Statement s = null; protected static ResultSet rs = null; protected static Connection coon = null; public static synchronized Connection getConnection() { try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { coon = DriverManager.getConnection(URL, USER, PASSWORD); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return coon; } public static int executeUpdate(String sql) { int result = 0; try { s = getConnection().createStatement(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { result = s.executeUpdate(sql); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return result; } public static ResultSet executeQuery(String sql) { try { s = getConnection().createStatement(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { rs = s.executeQuery(sql); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return rs ; } public static PreparedStatement executePreparedStatement(String sql) { PreparedStatement ps = null; try { ps = getConnection().prepareStatement(sql); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return ps; } public static void rollback() { try { getConnection().rollback(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void close() { if (rs != null) { try { rs.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if (s != null) { try { s.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if (coon != null) { try { coon.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }