JSP将数据插入MYSQL数据库

时间:2011-12-24 00:42:39

标签: sql database jsp insert

所以我正在处理我的JSP作业,而我正在尝试做的是让用户输入一个 用户名和密码,然后将添加到我的SQL数据库中。我一直在寻找 通过谷歌3个小时,现在尝试不同的方法,但到目前为止没有成功。 到目前为止,我得到的最接近的东西很简单,比如

"INSERT into database_name (username, password) VALUE = (${'param.rusername'}, ${'rpassword})"

无论如何,我使用了一些不同的方法,这就是我的JSP页面现在的样子。

<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
<%@ page import="java.sql.*" %> 
<%@ page import="java.io.*" %> 

<sql:setDataSource scope="application"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/my_schema"
user="root"
password="******"
/> 

<c:choose>
<c:when test="${empty param.rusername && empty param.rpassword}">
    <jsp:forward page="newUser.jsp" />     
</c:when>
</c:choose>                             

<html>
<body>
    <h1>Registration Complete</h1>
    <a href="index.jsp">Return to login</A>

    <%

    String username = request.getParameter("rusername");
    String password = request.getParameter("rpassword");

    Class.forName("com.mysql.jdbc.Driver");
    Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/my_schema", "root", "*****");

    Statement st = con.createStatement();

    String sql = ("INSERT INTO login VALUES ('password' + 'username')");
    st.executeUpdate(sql);
    con.close();

    %>
</body>
</html>

1 个答案:

答案 0 :(得分:0)

我不建议这样做。

如果必须,请阅读JSTL <sql>标签;他们会让这个问题更容易处理。应不惜一切代价避免使用Scriptlet代码。