订单生成(orderbiao表,orderdetailb表)

///////////////////////////////////////////用户购买产品生成订单
public boolean buyThis(User u,ArrayList al){
boolean ok=false;
Connection conn=Dbpool.getConn();
PreparedStatement pstmt=null;
String sqlsalesoder="insert into salesorder(userid,addr,odate) value(?,?,now())";
PreparedStatement Pstmt=Dbpool.Pstmt(conn, sqlsalesoder, Statement.RETURN_GENERATED_KEYS);
ResultSet rs=null;
try {
{
conn.setAutoCommit(false);
Pstmt.setInt(1, u.getId());
Pstmt.setString(2, u.getAddr());
Pstmt.executeUpdate();

rs = Pstmt.getGeneratedKeys();
rs.next();
int salesoderid=rs.getInt(1);



for(int i=0;i<al.size();i++){
ItemVO vo=(ItemVO)al.get(i);
String sql="insert into salesitem (productid,unitprice,pcount,orderid)values(?,?,?,?)";
pstmt=Dbpool.pstmt(conn, sql);

pstmt.setInt(1, vo.getId());
pstmt.setDouble(2, vo.getPrice());
pstmt.setInt(3,vo.getNum());
pstmt.setInt(4,salesoderid);
pstmt.executeUpdate();
conn.commit();
conn.setAutoCommit(true);
ok=true;
}
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
Dbpool.Close(rs);
Dbpool.Close(conn);
Dbpool.Close(pstmt);
}

  return ok;
}

猜你喜欢

转载自noskia.iteye.com/blog/620127
今日推荐