java - 新行未插入数据库中

标签 java forms jsp jdbc

在执行这个特定的 JSP 页面时,我遇到了一些严重的问题。 代码

<tr>
<td>
<%rs2 = st.executeQuery("Select * from degrees"); %>
<select name = "courses">
<%while(rs2.next()) {%>
<option value = "<%=rs2.getString(1)%>"><%=rs2.getString(2)%></option>
<%} %>
</select> 
</td>
<td>
<input type = "text" name = "ratings" class = "span1">
</td>
<td>
<a href = "">Delete Course</a>
</td>
</tr>
<%if(request.getParameter("courses")!="0"&&request.getParameter("ratings")!=null){
   String degree_id = request.getParameter("courses");
   int ratings = Integer.parseInt(request.getParameter("ratings"));
   PreparedStatement ps = con.prepareStatement("Insert into college_degree values (?,?,?)");
   ps.setString(1,college_id);
   ps.setString(2,degree_id);
   ps.setInt(3,ratings);
   ps.executeUpdate();
   c_a = Integer.parseInt(course_added);
   c_a++;
   String str = Integer.toString(c_a);
   course_added = str;
   String site = new String("degree_to_college.jsp?course_added="+course_added);
   response.setStatus(response.SC_MOVED_TEMPORARILY);
   response.setHeader("Location", site);  
}

%>
</tbody>
</table>
<form action = "degree_to_college.jsp">
<input type = "submit" class = "btn-primary large" value = "NEW COURSE" />
</form>**

这里的问题是单击“新类(class)”后,我被重定向到同一页面,数据库中没有任何更改。没有数据添加到数据库中。

最佳答案

您忘记在使用后关闭语句和连接。关闭连接将立即提交事务。正常的 JDBC 习惯用法是它们在创建它们的 try block 的 finally block 中关闭。

顺便说一句,你已经more serious issues有了这个 JSP。

关于java - 新行未插入数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9406514/

相关文章:

java - 将 jsp 文件合并/叠加到特定位置

java - 使用按钮更改jsp中的变量值

java - Android Maven 插件执行测试时运行时异常

java - 在不启动浏览器的情况下安装 JRE

Java 空字符串等于结果

javascript - document.createElement 表单仅传递第一个值

jquery post 不工作并且没有错误

python - 如何让我的 HTML 按钮从 SQLite 数据库中删除正确的列表项?

jsp - EL有什么函数可以得到一个数的绝对值吗?

java - HQL Like 不返回任何内容