如何在没有用户和密码的情况下保存到sql server数据库中

时间:2014-07-17 10:27:51

标签: java jsp

我想在没有用户名或密码的情况下在sql server数据库中保存数据。下面给出了代码示例。任何人都可以解释不将数据保存到数据库的原因吗? 预先感谢。请帮帮我

<%
       String username = request.getParameter("username");
       String password = request.getParameter("password");

       try  
       {
           Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
           String url = "jdbc:sqlserver://localhost:1433;databaseName=azan";
           Connection con = null;
           con = DriverManager.getConnection(url);
           Statement st = con.createStatement();
           String sql = "INSERT INTO huzaifa (username,password) VALUES ('"+username+"','"+password+"')";
           st.executeUpdate(sql);
           con.close();


       }catch (Exception ex)
       {
       System.out.print(ex);
       }//

   %>

4 个答案:

答案 0 :(得分:2)

您可以执行此操作的唯一方法是在服务器中使用 JNDI绑定数据源。一般来说,它的工作方式如下:

  1. 在服务器中配置数据源。用户名和密码是配置的一部分。
  2. 数据源绑定到 JNDI树
  3. 数据源可以查找到JNDI树中,从那里可以获得连接。
  4. 获得连接后,您可以解除查询。
  5. Here is an example如何在Tomcat中执行此操作。

答案 1 :(得分:1)

我建议你在Servlet中移动数据库操作代码,而不是在JSP中移动。

如果你真的想在JSP中做,那么试着避免使用Scriplet。

使用JSP Standard Tag LibraryJSP Expression Language代替使用更易于管理且不易出错Scriplet。使用提供JSTL SQL标记的SQL Tag Library来访问JSP中的数据库。

示例代码:

<sql:setDataSource var="dataSource" 
    driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"
    url="jdbc:sqlserver://localhost:1433;databaseName=azan" user=""
    password="" />

<sql:update dataSource="${dataSource}"
    sql="INSERT INTO huzaifa (username,password) VALUES ( values(?,?)">
    <sql:param value="${param.username}" />
    <sql:param value="${param.password}" />
</sql:update>

答案 2 :(得分:0)

首先让我理解你的问题。您从参数中获取2个值并将其保存在数据库中。现在你试图保存没有列名的值?我是对的吗? 如果是这种情况,那么您只需使用不带列名的INSERT命令。

例如INSERT INTO table_name VALUES(value1,value2,value3,...);

否则,如果你想在没有提供认证用户名和密码的情况下在数据库中保存值,我希望不可能。

答案 3 :(得分:0)

从SQL Server的角度来看,如果您不希望在应用程序连接中声明用户名和密码,则需要使用集成安全性,该安全性会传递Web服务器中配置的登录用户或用户上下文。

我不是一名java开发人员,但已经针对您要执行的操作找到了以下内容,希望对您有所帮助。

http://social.msdn.microsoft.com/Forums/sqlserver/en-US/3d8da2ca-4efb-41d6-bb08-b7193cf49753/jdbc-integrated-security-problem?forum=sqldataaccess