日期:2014-05-18  浏览次数:20682 次

jsp如何连接mysql并把数据写入mysql数据库
其实我是在做一个注册界面,就是把用户名和密码写入mysql数据库。求各位大神给出代码啊。

------解决方案--------------------
还是用java类连接吧
Java code

import java.sql.*;

public class TestMysqlConnection {

    /**
     * @param args
     */
    public static void main(String[] args) {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        try {
            Class.forName("com.mysql.jdbc.Driver");

            conn = DriverManager
                    .getConnection("jdbc:mysql://localhost/mydata?user=root&password=root");
            stmt = conn.createStatement();
            rs = stmt.executeQuery("select * from dept");
            while (rs.next()) {
                System.out.println(rs.getString("deptno"));
            }

        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException ex) {
            // handle any errors
            System.out.println("SQLException: " + ex.getMessage());
            System.out.println("SQLState: " + ex.getSQLState());
            System.out.println("VendorError: " + ex.getErrorCode());
        } finally {
            try {
                if(rs != null) {
                    rs.close();
                    rs = null;
                }
                if(stmt != null) {
                    stmt.close();
                    stmt = null;
                }
                if(conn != null) {
                    conn.close();
                    conn = null;
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }

    }

}

------解决方案--------------------
jsp页面最好别放跟数据库操作有关的代码...先贴上一个servlet简单实现你要求的吧
Java code

public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        // 获取前台数据
        String u = request.getParameter("username");
        String p = request.getParameter("password");
        Connection conn = null;
        PreparedStatement ps = null;
        try {
            Class.forName("com.mysql.jdbc.Driver").newInstance();
            String url = "jdbc:mysql://localhost/mydb?user=root&password=kingfish&useUnicode=true&characterEncoding=gbk";
            conn = DriverManager.getConnection(url);
            String sqlString = "insert into users (uname,upass) values (?,?)";
            ps = conn.prepareStatement(sqlString);
            ps.setString(1, u);
            ps.setString(2, p);
            if (ps.executeUpdate() > 0)
                System.out.println("插入成功");

        } catch (Exception e) {
            // TODO: handle exception
            System.out.println("插入失败");
            e.printStackTrace();
        } finally {
            try {
                if (ps != null) {
                    ps.close();
                    ps = null;
                }
                if (conn != null) {
                    conn.close();
                    conn = null;
                }
            } catch (Exception e2) {
                e2.printStackTrace();
                // TODO: handle exception
            }
        }

    }