在web开发中hibernate3插入数据库日期不一致的问题解决方法

今天在写一个web项目时抛出异常

 nested exception is org.hibernate.exception.DataException: could not insert: [firstapp.order.vo.Order]

可见是date出错 后台我用的java.util.Date的时间格式,按道理应该是没有问题的,后来细想了一下相关的hibernate.hbm.xml

是不是有问题 果然我在这里    <property name="ordertime"></property>起初是没有加type的后来更改问题也就没了

如下

 <hibernate-mapping>
         <class name="firstapp.order.vo.Order" table="xxx">
             <id name="oid">
                 <generator class="native"></generator>
             </id>
             <property name="total"></property>
             <property name="ordertime" type="date"></property>
             <property name="state"></property>
             <property name="name"></property>

         </class>
    </hibernate-mapping>

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
非常好,您已经掌握了一些基础知识。接下来,我可以为您提供一个简单的示例代码,供您参考: 在JSP页面,添加一个表单: ``` <form action="submitDataServlet" method="post"> <label for="name">姓名:</label> <input type="text" id="name" name="name"> <br> <label for="email">邮箱:</label> <input type="email" id="email" name="email"> <br> <input type="submit" value="提交"> </form> ``` 在表单,我们定义了两个文本输入框,分别用于输入姓名和邮箱,并添加了一个提交按钮。在提交按钮,我们指定了formaction属性,将其指向一个名为submitDataServlet的Servlet。 接下来,我们创建一个名为submitDataServlet的Servlet,用于处理表单数据: ``` @WebServlet("/submitDataServlet") public class SubmitDataServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 获取表单数据 String name = request.getParameter("name"); String email = request.getParameter("email"); // 连接数据库 Connection conn = null; PreparedStatement pstmt = null; try { Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "password"); // 插入数据 String sql = "INSERT INTO users (name, email) VALUES (?, ?)"; pstmt = conn.prepareStatement(sql); pstmt.setString(1, name); pstmt.setString(2, email); pstmt.executeUpdate(); // 提示信息 response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); out.println("<html><body>"); out.println("<h3>数据已成功提交到数据库。</h3>"); out.println("</body></html>"); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } finally { // 关闭连接 try { if (pstmt != null) pstmt.close(); if (conn != null) conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } } ``` 在这个Servlet,我们首先获取了表单数据,并使用JDBC连接数据库。然后,我们构建了一个SQL语句,将表单数据插入数据库。最后,我们向页面输出了一个提示信息,告诉用户数据已经成功提交到数据库。 当用户点击提交按钮时,表单数据将会被提交到submitDataServlet进行处理。Servlet将会将数据插入数据库,并向用户输出一个提示信息。 当然,这个示例代码仅仅是一个基础的演示,您需要根据自己的实际需求进行修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值