package com.wsj.Dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
import javax.persistence.criteria.Order;
import com.wsj.Bean.Category;
import com.wsj.Bean.Orderline;
import com.wsj.Bean.Orders;
import com.wsj.Bean.Orderstatus;
import com.wsj.Bean.Payway;
import com.wsj.Bean.Product;
import com.wsj.Bean.Publish;
import com.wsj.Util.ConnectionFactory;
public class OrderDaoImpl implements OrderDao{
@Override
public void saveOrder(Orders order) {
// TODO Auto-generated method stub
Connection conn=ConnectionFactory.getConn();
String sql2="select order_seq.nextval from dual";
String sql="insert into orders values(?,?,?,?,?,?)";
String sql1="insert into orderline values(order_seq.nextval,?,?,?)";
PreparedStatement ps2=null;
PreparedStatement ps=null;
PreparedStatement ps1=null;
long userid=0;
try {
ps2=conn.prepareStatement(sql2);
ResultSet rs=ps2.executeQuery();
while(rs.next()) {
userid=rs.getLong(1);
}
ps=conn.prepareStatement(sql);
ps.setLong(1, userid);
ps.setString(2, order.getUser().getUserid());
ps.setLong(3, order.getPayway().getId());
ps.setString(4, order.getName());
ps.setLong(5, order.getOrderstatus().getId());
ps.setDouble(6, order.getCost());
ps.execute();
ps1=conn.prepareStatement(sql1);
Set<Orderline> orderlines=order.getOrderlines();
for(Orderline line:orderlines){
ps1.setLong(1, userid);
ps1.setLong(2, line.getProduct().getId());
ps1.setInt(3, line.getNum());
ps1.execute();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
public void deleteOrderById(long orderid) {
// TODO Auto-generated method stub
Connection conn=ConnectionFactory.getConn();
Statement sts=null;
try {
sts=conn.createStatement();
String sql1="delete from orderline where order_id="+orderid;
sts.execute(sql1);
String sql="delete from orders where id="+orderid;
sts.execute(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
public Set<Orders> findOrderByUserid(String userid) {
// TODO Auto-generated method stub
Connection conn=ConnectionFactory.getConn();
Statement sts=null;
ResultSet rs=null;
Set<Orders> set=new HashSet<Orders>();
try {
sts=conn.createStatement();
String sql="select o.id,o.name,o.cost,p.id,p.name,s.id,s.name,s.description,r.id,r.num,d.id,d.name,d.writer,d.price,d.page,d.description,d.images,u.id,u.name,c.id,c.name,c.description"
+ " from orders o,payway p,orderstatus s,orderline r,product d,publish u,category c"
+ " where o.user_id='"+userid +"' and o.payway_id=p.id and o.orderstatus_id=s.id and r.order_id=o.id and r.product_id=d.id and d.publish_id=u.id and d.category_id=c.id";
rs=sts.executeQuery(sql);
Map<Long, Orders> map=new HashMap<Long, Orders>();
while(rs.next()){
Long id=rs.getLong(1);
if(!map.containsKey(id)){
Orders order=new Orders();
order.setId(id);
order.setName(rs.getString(2));
order.setCost(rs.getDouble(3));
Payway pay=new Payway();
pay.setId(rs.getLong(4));
pay.setName(rs.getString(5));
order.setPayway(pay);
Orderstatus status=new Orderstatus();
status.setId(rs.getLong(6));
status.setName(rs.getString(7));
status.setDescription(rs.getString(8));
order.setOrderstatus(status);
Set<Orderline> orderlines=new HashSet<Orderline>();
Orderline line=new Orderline();
line.setId(rs.getLong(9));
line.setNum(rs.getInt(10));
Product p=new Product();
p.setId(rs.getLong(11));
p.setName(rs.getString(12));
p.setWriter(rs.getString(13));
p.setPrice(rs.getDouble(14));
p.setPage(rs.getLong(15));
p.setDescription(rs.getString(16));
p.setImages(rs.getString(17));
Publish publish=new Publish();
publish.setId(rs.getLong(18));
publish.setName(rs.getString(19));
p.setPublish(publish);
Category cate=new Category();
cate.setId(rs.getLong(20));
cate.setName(rs.getString(21));
cate.setDescription(rs.getString(22));
p.setPublish(publish);
p.setCategory(cate);
line.setProduct(p);
line.setOrder(order);
orderlines.add(line);
order.setOrderlines(orderlines);
map.put(id, order);
}else{
Orders order=map.get(id);
Orderline line=new Orderline();
line.setId(rs.getLong(9));
line.setNum(rs.getInt(10));
Product p=new Product();
p.setId(rs.getLong(11));
p.setName(rs.getString(12));
p.setWriter(rs.getString(13));
p.setPrice(rs.getDouble(14));
p.setPage(rs.getLong(15));
p.setDescription(rs.getString(16));
p.setImages(rs.getString(17));
Publish publish=new Publish();
publish.setId(rs.getLong(18));
publish.setName(rs.getString(19));
p.setPublish(publish);
Category cate=new Category();
cate.setId(rs.getLong(20));
cate.setName(rs.getString(21));
cate.setDescription(rs.getString(22));
p.setCategory(cate);
line.setProduct(p);
line.setOrder(order);
order.getOrderlines().add(line);
map.put(id, order);
}
}
if(map!=null){
for(Orders m:map.values()){
set.add(m);
}
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return set;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
jsp+servlet 网上书城项目 (350个子文件)
0010d0d10c17441c38375061806cac9a2772c7 174B
017bba22ded30647d5487691097bc32a0d6636 5KB
0246b045b51be1820fababe63cce7b978969a8 405B
0a1c70b123f334ae621bd2dec9bf6f00207a1a 2KB
0e030742e0295f7c2d52a4f915b2246d2b0e47 213B
0e694b3df110fb3d8d80db12a2893d1ddd775a 94B
1076afa6b91062e755b215818e3aea1d7660ac 3KB
119904ea968b36406e751753d98240a5ea79dd 63B
11b12b3b4207f5c4e98d41339bbe89b75f6ff9 18KB
12c95fc2c037f8d4c067120026741cc874e6e3 188B
151cb6ba43efd34e8bc857b8bb94dc00b869b3 52B
15d32e57d2e14ba5520c846639b5aa37a5aadb 787B
1696d5b9bdd68c417007fcacdf65b3d136bc07 882B
1932ecea6c5f06c8a1e16513dba7b077ff95b3 693B
19aacbf3a476f8e79b941284b65f28d2df38f1 428B
19dbea6f7d0698c9114eb7a4405798cf207f79 56B
1d6ef17c24a4f3c92c6528577e25843cb34c5b 161B
1dd58a56375ad14f242158c539127ca55ce3c4 923B
1ecbc99721c1d06837353aea9498a6efa54aba 569B
20e9a6deefdbfcb198fc13b00f24ccd951f80b 230B
23d513f0c2e47f20ffb225de7f6bde6019b291 234B
249fbe70e27dc8c689bb4de3cc5d80c77c224c 467B
2578e690dbc108043061d1785308a8a123556e 2KB
25ae01f9e067c6a073ac76712d0911a8766a86 4KB
27018ff482c7a24ce21a4059cb02a5ef5d0bde 942B
27119403c0226e2c5b205791fafbb5c46c87b1 409B
283a4a705fb2775d2ffc76764e37bd1a1ba1d2 485B
29db7b794eea7f970ebc081b9deab08c25353a 45B
29ee0c84563bca5a9e29eeba875208b9b84808 106B
2a107cf4c4a2ea535ba6ac5bfadb9e48a33575 112B
2a83b5b0ccd8e360203d9a3a65ca5e84e9c6fc 494B
2b96f9772aec5e9d38d28f38e67d97bab3f56f 135B
2ce56705ab98219a34ddd526e40f358c43bc87 300B
2d2707cf7f60adca9d0c2cdb42f8087ba42833 910B
2d4028786f282d06d34f33f39c0379f810f8dc 248B
2de8f0fcdf62883cc2ac33e63927fa6f689278 3KB
2e54fb8b8b09ab5061e4f542e4f3f2eb3ec066 236B
2fa8f37c4da4464d2896582197af793cb6b98d 2KB
302ffc38b9c7fcee4ee06f241dfde07a6f71fa 198B
32226fc697142103c515cd7efc2525bd9c7d28 739B
3559a1fb2de136408af67be37e810282b391b7 2KB
35e54b647771d12373076eeb1dfa0c8f8d0978 121B
36b56ffc081e92d92d17973d09ce9dc7663241 198B
36d2949aa78771b51b79e89bf60b00f36578b0 327B
3745d4f1ee888cff5af10eb8321ddeaf812590 216B
37b63063ce6052bdc49c5fd0745b078f162c90 154B
39775ae0d0f01d95df8e3ffe908f5944898681 373B
3ace98e2e0292522be8dd1ff750ca0197d17de 193B
3b174ec075e6b99a38a60a8ca31072ef5a4d9b 3KB
3c55885e6469cc92fa4c2061956275e216f823 2KB
4256d4f3b90ce71ce1b3ff9707c0eabef152b6 549B
425f77af413e2f6134b23535f17fc586669dbc 167B
4272e1c0740423e25eb40be9a98ce1556474b1 52B
433042585bc9649da5327b96b97d2f404233aa 464B
45c4cc2633c2c091393309a660fbc465526e9d 468B
47bcc85c1de2d0fb7ce929c294888df233eed5 8KB
47fff543156fe1ecee23610b755c3851a8aa2f 2KB
48ee29b592de050d9acde7289e61563c9cf2d4 122B
49b6b57307222014264a3bea04715d55f1b141 865B
4c27f62c52827664e3beb7e4c9ee54dd939f8c 145B
4fe288cb1e244e8f5be553274f80eff0682be9 205B
53e0ff53a05d08a21980bbc265278e5d6ea1b0 8KB
57d33ee021f670a77e9dfb250df8b6859b304b 123B
58c38109ddf70522e92f6071189398b6d927c8 395B
5b83e9b9ed855f5a337b422653d2c83448d739 1KB
5edda3749562f4f49f03d5eb1607850e90ae92 333B
6136aedaf747cb9585d43d8c36fb7e237088cb 753B
632052788f98cc737e28467ca1555aa9d08190 228B
63295ce3b1ea3ac6a8ebaf96a7af99482c0d7c 296B
6364d789562ef87ce9b9ee328cea2ee55580ea 2KB
6394249910b0d46ce55b931c42e62de9b219c4 211B
652ba09029129c060780ce3bc85e7899491208 7KB
68798dd534f4efc359b78b179e2507b49b7776 79B
69d000d54a00099bb978cf666728dffaf3dfa0 70B
6c32d888277f44dc0037bbf686dc51f36bba10 395B
6e0acf97200159d4114d223b24e39c77b270f9 110B
711d09d18621cbc0f222d44d63fd5cd6844c24 112B
7261f86b4d46a5ebcf2eb2a274bdfbdfb3a155 2KB
732388f02f7aa08df19a1b6c7ceb87d36a93f3 695B
73ff643826d3b376ff792e7e4ff277b87ba1ca 1KB
75a62366c5615a0ae4e84d5b3ede95176f28f6 547B
76265f97feaaffe3ab63efb5762ddcd1dad055 5KB
766e94dbbf416c9f582294f6e98c5e782ed504 11KB
7a6b1d8df197e7a6a6a2fe9286bbbb52fdeec5 2KB
7bb3cb71ac04e775cb6f3a8d70e2705c0841f5 826B
7ceca923b75d1e70c3b4d1b914ee2b7d8a150b 114B
7d72fadccbe552f4a1f9ab365c0065c847a5da 768B
7edfbf04c2e5b55023577fb757788b1afb2be5 68B
7ee6efc15bff1aef9e0275da4d65e19ed91d56 53B
8015a2f387885a37ddc73a18085ea6791b16f1 2KB
8053ab5dc2e17aa79f59f068928f51fa1e060d 858B
81c800587f73c8638f8950c45797f48f786f79 300B
824a8d2a9b93d5ba2af0cfa8786a8ee3dd8206 998B
82f4eddc922c1e0ebe58a1f3673e600592e030 151B
846f52f86bc0b4ec3679e0c06b19e4dc460c53 2KB
887262619f3df7d5a0c708b920dd0e9332baae 145B
88ea61bc91df37fc895199999de1bfb5ff88df 111B
89cf1df9315fa034bf2de6e70a5cd6b100ab64 1KB
8b92cd83b53bc477fbf057a13c935886036252 310B
8d2df600c043721520205e74320cdd90a77fac 406B
共 350 条
- 1
- 2
- 3
- 4
资源评论
- 去去丶2019-05-10缺少文件,根据项目路径发现没有目录或者文件
Soul丶Knight
- 粉丝: 19
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- rain-ripples.PNG
- Gitlab: Python项目CI/CD实践 > fastapi-t1 > Dockerfile
- springboot的校园失物招领系统源码.zip
- Skeleton-Low Poly 低多边形骨架模型Unity插件美术资源包unitypackage
- Direct X修复工具
- Android教你如何一分钟实现下拉刷新功能项目完整实例代码
- 基于SpringBoot校园失物招领系统 前后端分离项目(mysql脚本在后端程序中).zip
- 使用JSTL需要的jar包程序文件
- 潘晓庆 321023199101293449。23-24年.xls
- 目标检测数据集(YOLOV5目录格式):花生检测(2类别,包含训练集、验证集)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功