【问题标题】:post method is not working for postman(chrome extension)post 方法不适用于邮递员(chrome 扩展)
【发布时间】:2014-02-14 07:45:43
【问题描述】:

我有项目,在这个我只是将两个值保存到 mysql 数据库中,它工作正常。我的要求是我想使用邮递员发送数据,但是这些值没有保存到数据库中,我没有得到任何例外,请帮助我如何解决这个问题。 我的代码是:

主页.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<script type="text/javascript">
function validateForm()
{
 var x=document.getElementById("location").value;
if( x == "" )
{
  alert( "Please Enter The Location!" );

  return false;
}
var y=document.getElementById("time").value;
if( y == ""  )
{
  alert( "Please Enter The Time!" );

  return false;
}
var digits = "0123456789";
var temp;

for (var i = 0; i < document.getElementById("time").value.length; i++) {
    temp = document.getElementById("time").value.substring(i, i + 1);
    if (digits.indexOf(temp) == -1) {
        alert("Please enter correct time");
        document.getElementById("time").focus();
        return false;
    }
}
}
</script>
</head>
<body bgcolor="cyan">
<form name="myForm" method="post" action="insert.jsp"  onsubmit="return validateForm()">
<div style="background-image:url(bg.jpg);">
<center><h1><font color="red">TRAFFIC INFORMATION SYSTEM</font></h1></center><br>
</div>
<hr size="10" color="red">
<center>
<table  cellpadding="12">
<tr>
<td align="left">
Location</td><td>   <input type="text" name="location"></td>
<tr>
<td align="right">
Expected Time
</td>
<td align="left">
<input type="text" size="3" name="time" maxlength="3">
Minutes
</td>
</tr>
<tr><td></td>
<td><input type="image" src="submit.gif" alt="Submit" width="48" height="48"/></td></tr>
</table>
</center>
</form>
</body>
</html>

插入.jsp

<%
DBCreation creation;
Connection connection;
String location;
String time;

    location=request.getParameter("location");
    time=request.getParameter("time");

    connection=new DBCreation().getConnection();

    try {
        PreparedStatement statement=connection.prepareStatement("insert into Jam_Info values(?,?)");
        statement.setString(1, location);
        statement.setString(2, time);
        int i=statement.executeUpdate();
        if(i>0)
        {
            RequestDispatcher dispatcher=request.getRequestDispatcher("success.jsp");
            dispatcher.forward(request, response);
        }
    } catch (SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

%>

【问题讨论】:

    标签: java mysql database jsp servlets


    【解决方案1】:

    你必须写提交来保存数据

    connection.commit(); 
    

    你还没有关闭连接。

    connection.close();
    

    将它写在 finally 块中。

    【讨论】:

    • 是我的问题与这句话有关
    • 是的...只需提交连接对象。数据将保存在数据库中。
    • 当我提交时我得到了这个异常 [java.sql.SQLException: Can't call commit when autocommit=true]
    • 在插入语句之前写入自动提交 false [conn.autocommit(false)]。并在插入语句后写入 conn.commit();
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    • 1970-01-01
    • 2018-08-01
    • 1970-01-01
    • 2022-07-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多