⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 orderserviceimpl.java

📁 网上购物系统的简易代码
💻 JAVA
字号:
package com.tarena.develop.service.impl;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import com.tarena.develop.common.JDBCUtil;
import com.tarena.develop.entity.Order;
import com.tarena.develop.entity.OrderLine;
import com.tarena.develop.entity.Product;
import com.tarena.develop.entity.User;

public class OrderServiceImpl implements OrderService {

	public List<Order> getOrders(User user) {
		PreparedStatement ps = null;
		ResultSet rs = null;
		Order o = null;
		List<Order> orders= new ArrayList<Order>();
		String sql = "select orderId,ordername,payway,createdate,stateid,cost from t_order,t_user "+
		"where t_order.userid=t_user.id and t_user.id=? ";
		Connection con=JDBCUtil.getConnection();
		try {
			ps = con.prepareStatement(sql);
			ps.setInt(1, user.getId());
			rs = ps.executeQuery();
			while(rs.next()){
				o = new Order();
				o.setOrderid(rs.getInt(1));
				o.setOrdername(rs.getString(2));
				o.setPayway(rs.getString(3));
				o.setCreatedate(rs.getDate(4));
				o.setCost(rs.getDouble(6));
				o.setStateid(rs.getString(5));
				orders.add(o);
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally{
			JDBCUtil.relese(rs, ps, con);
		}
		
		return orders;
	}

	public List<OrderLine> getOrderLine(Order order) {
		Connection con=null;
		PreparedStatement ps=null;
		ResultSet rs=null;
		List<OrderLine> list= new ArrayList<OrderLine>();
		OrderLine orderline=null;
		Product pro = null;
		try{
			con=JDBCUtil.getConnection();
//			con.setAutoCommit(false);
			String sql="select tol.orderlineid,tol.orderid,tol.pid,tol.amount,tp.pid,tp.name,tp.discription,tp.price,tp.author,tp.images from t_orderline tol inner join t_order tor on tol.orderid = tor.orderid inner join t_product tp on tol.pid = tp.pid where tol.orderid=?";
			ps=con.prepareStatement(sql);
			ps.setInt(1,order.getOrderid());
			rs=ps.executeQuery();
			while(rs.next()){
				orderline=new OrderLine();
				pro = new Product();
				pro.setPid(rs.getInt(5));
				pro.setName(rs.getString(6));
				pro.setDiscription(rs.getString(7));
				pro.setPrice(rs.getDouble(8));
				pro.setAuthor(rs.getString(9));
				pro.setImage(rs.getString(10));
				
				orderline.setOrderlineid(rs.getInt(1));
				//以下得不到得对象如何得到
				orderline.setOrder(order);
				orderline.setProduct(pro);
				orderline.setAmount(rs.getInt(4));
				list.add(orderline);
			}
//			con.commit();
		}catch(Exception e){
			e.printStackTrace();
//			try {
//				con.rollback();
//			} catch (SQLException e1) {
//				// TODO Auto-generated catch block
//				e1.printStackTrace();
//			}
		}finally{
			JDBCUtil.relese(rs, ps, con);
		}
		return list;
	}
	public Order find(int orderid){
        Connection con=null;
		PreparedStatement ps=null;
		ResultSet rs=null;
		Order order=null;
		String sql="select orderid,ordername,payway,createdate,stateid,cost,userid from t_order where orderid=? ";
		try{
		    con=JDBCUtil.getConnection();
//		    con.setAutoCommit(false);
		    ps=con.prepareStatement(sql);
		    ps.setInt(1,orderid);
		    rs=ps.executeQuery();
			order.setOrderid(rs.getInt(1));
			order.setOrdername(rs.getString(2));
			order.setPayway(rs.getString(3));
			order.setCreatedate(rs.getDate(4));
			order.setStateid(rs.getString(5));
			order.setCost(rs.getDouble(6));
//			con.commit();
		}catch(Exception e){
			e.printStackTrace();
//			try {
//				con.rollback();
//			} catch (SQLException e1) {
//				// TODO Auto-generated catch block
//				e1.printStackTrace();
//			}
		}finally{
			JDBCUtil.relese(rs, ps, con);
		}
		return order;
	}

	
	public Order getOrder(Integer orderid,User user) {
		Connection conn = null;
		PreparedStatement pstm = null;
		ResultSet rs = null;
		String sql = "select orderid,ordername,payway,createdate,stateid,cost,userid from t_order where orderid = ?";
		Order order = null;
		conn = JDBCUtil.getConnection();
		try {
			pstm = conn.prepareStatement(sql);
			pstm.setInt(1, orderid);
			rs = pstm.executeQuery();
			if(rs.next()){
				order = new Order();
				order.setOrderid(orderid);
				order.setOrdername(rs.getString(2));
				order.setPayway(rs.getString(3));
				order.setCreatedate(rs.getDate(4));
				order.setStateid(rs.getString(5));
				order.setCost(rs.getDouble(6));
				order.setUser(user);
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return order;
	}
//	public void addOrder(Order order,Integer userid) {
//		Connection conn = null;
//		PreparedStatement pstm = null;
//		
//		String sql = "insert into t_order values (?,?,?,?,?,?,?)";
//		String sql1= "insert into t_orderline values (?,?,?,?)";
//		conn = JDBCUtil.getConnection();
//		int orderid = JDBCUtil.getPrimaryKey(conn);
//		try {
//			conn.setAutoCommit(false);
//			pstm = conn.prepareStatement(sql);
//			pstm.setInt(1, JDBCUtil.getPrimaryKey(conn));
//			pstm.setString(2, order.getOrdername());
//			pstm.setString(3, order.getPayway());
//			pstm.setDate(4, order.getCreatedate());
//			pstm.setString(5, order.getStateid());
//			pstm.setDouble(6, order.getCost());
//			pstm.setInt(7, userid);
//			pstm.executeUpdate();
//			pstm.close();
//			pstm = conn.prepareStatement(sql1);
//			
//			pstm.setInt(1, JDBCUtil.getPrimaryKey(conn));
//			pstm.setInt(2, orderid);
//			pstm.setInt(3, pid);
//			pstm.setInt(4, amount);
//			pstm.executeUpdate();
//			conn.commit();
//		} catch (SQLException e) {
//			try {
//				conn.rollback();
//			} catch (SQLException e1) {
//				// TODO Auto-generated catch block
//				e1.printStackTrace();
//			}
//			e.printStackTrace();
//		}finally{
//			JDBCUtil.relese(null, pstm, conn);
//		}
//	}

	
	}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -