public synchronized static OrderItem find(Integer orderID) throws SQLException
	{
		OrderItem order = null;
		Connection connection = null;
		PreparedStatement  prepStmt = null;
		try 
		{
			connection = DB.getConnection();
			connection.setAutoCommit(true);

			prepStmt = connection.prepareStatement("SELECT * FROM OrderItem WHERE OrderItemID = ?;");
			prepStmt.setInt(1, orderID);
			prepStmt.setMaxRows(1); 

			ResultSet rs = prepStmt.executeQuery();

			while (rs.next())
			{
				order = new OrderItem();
				order.OrderItemID 	= rs.getInt("OrderItemID");
				order.ProductID 	= rs.getInt("ProductID");
				order.Quantity 		= rs.getInt("Quantity");
				order.Discount 		= rs.getDouble("Discount");
				order.OrderDate 	= rs.getDate("OrderDate");
				order.ShippingDate 	= rs.getDate("ShippingDate");
				order.Delivered 	= rs.getBoolean("Delivered");

				order.loadProduct();
			}
			rs.close();
			prepStmt.close();
			DB.closeConnection();
			return order;
		}
		catch (Exception e) 
		{
	    	throw e;
		}
	}