@Override
	public List<Shop> findAllShopsByCity(String city) throws BusinessException {
		List<Shop> shops=new ArrayList<Shop>();
		Connection connection=null;
		Statement statement=null;
		ResultSet resultSet=null;
		try {
			connection=dataSource.getConnection();
			String sql= "SELECT * FROM shops WHERE city='"+city+"'";
			statement=connection.createStatement();
			resultSet=statement.executeQuery(sql);
			while (resultSet.next()) {
				Integer id=resultSet.getInt("shop_id");
				String name=resultSet.getString("name");
				String country=resultSet.getString("country");
				String address=resultSet.getString("address");
				String postcode=resultSet.getString("postcode");
				String telephone=resultSet.getString("telephone");
				int rating=resultSet.getInt("rating");
				User user=new User(resultSet.getString("username"));
				Shop shop=new Shop(id, user, name, country, address, postcode, telephone, city, rating);
				shops.add(shop);
			}
		}  catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			throw new BusinessException();
		} finally {
			if (resultSet != null) {
				try {
					resultSet.close();
				} catch (SQLException e) {
				}
			}
			if (statement != null) {
				try {
					statement.close();
				} catch (SQLException e) {
				}
			}
			if (connection != null) {
				try {
					connection.close();
				} catch (SQLException e) {
				}
			}
		}
		return shops;
	}