如何通过会话获取id

时间:2014-05-01 13:23:07

标签: java mysql jsp

这是我按照colunm插入数据的代码,但我的困惑是我在users_id中提供的是什么类型的值,这是foriegn key in order table我希望users_id通过当前登录用户的会话给出想要下订单的值并且它的id是保存aginst他的订单记录代码在这里。

  <% request.getSession().getAttribute("users_id");%>
  <%  String add = request.getParameter("add");
      String type = request.getParameter("order_type");
      String city = request.getParameter("city");
      String veh = request.getParameter("vehicles");
      String date = request.getParameter("order_date");
      String users_id = request.getParameter("users_id");
      Class.forName("com.mysql.jdbc.Driver");
      Connection con =  
          DriverManager.getConnection("jdbc:mysql://localhost:3306/auto_lube","root", "mehar");
     Statement st = con.createStatement();
    System.out.println(add);
    //ResultSet rs;
         int i = st.executeUpdate("INSERT INTO `user_order` (`id`, `address`, `order_type`, `city`, `vehicle`, `order_date`, `users_id`) VALUES (NULL, '"+add+"', '"+type+"', '"+city+"', '"+veh+"', '2','"+users_id+"')");
    %>

1 个答案:

答案 0 :(得分:0)

首先,尝试避免使用JSP或您使用的任何设计页面上的代码。因为任何问题页面崩溃,您的代码将显示在页面上。因此,使用像servlet这样的后端工具,但这已经很老了,但为了学习,你可以使用它。如果可能,那么使用hibernate,它提供了非常好的支持。

将数据传递给java代码,然后访问会话数据。 如果可能的话,然后使用JSON传递订单详细信息,这将非常有用,同时存储数据并访问它并在任何地方更改它。

假设您要编辑订购商品的数量等,那么每次您不必向服务器发送请求时,json将非常有用。

使用预准备语句在DB中输入数据。 并使表order只有用户ID(从会话中获取)和订单号等订单明细。 和其他具有订单号和订购商品的表ordermaster,以及您需要的数量和价格以及订购时间和其他详细信息。所以这里ordermaster的订单ID将是order表中的外键。

相关问题