public Pizza haePizza(int id) throws DAOPoikkeus {
		
		Pizza pizza = new Pizza();
		
		// avataan yhteys
		Connection yhteys = avaaYhteys();
		
		try {
			
			// Haetaan tietokannasta ostoskoriin jokin tietty pizza.
			String pizzaSQL = "select Tuote.nimi, Tuote.numero, Tuote.hinta, Tuote.tuoteID from Tuote WHERE Tuote.tuoteID = ?;";
			String taytteetSQL = "select Tayte.nimi, Tayte.TayteID from Tayte INNER JOIN TuotteenTayte ON TuotteenTayte.tayteID = Tayte.tayteID INNER JOIN Tuote ON Tuote.tuoteID = TuotteenTayte.tuoteID where Tuote.tuoteID = ?;";
			
			PreparedStatement pizzaLause = yhteys.prepareStatement(pizzaSQL);
			PreparedStatement tayteLause = yhteys.prepareStatement(taytteetSQL);
			
			// Käytetään pizzan ID-numeroa hakemiseen.
			pizzaLause.setInt(1, id);
			
			// Suoritetaan pizzan haku -lause.
			ResultSet pizzaTulos = pizzaLause.executeQuery();
			
			// Käydään tulokset läpi:
			while (pizzaTulos.next()) {
				int numero = pizzaTulos.getInt("numero");
				String nimi = pizzaTulos.getString("nimi");
				double hinta = pizzaTulos.getDouble("hinta");
				int pizzaId = pizzaTulos.getInt("tuoteID");
				
				pizza = new Pizza(numero, nimi, hinta, pizzaId);
			}

			for (int i = 0; i < 1; i++) {
				ArrayList<Tayte> lista = new ArrayList<Tayte>();
				tayteLause.setInt(1, id);
				ResultSet tayteTulos = tayteLause.executeQuery();
				
				while(tayteTulos.next()) {
					String nimi = tayteTulos.getString("nimi");
					int tayteId = tayteTulos.getInt("TayteID");
					// lisätään Pizza väliaikaiseen listaan
				Tayte tayte = new Tayte(nimi, tayteId);
				lista.add(tayte);
					
				}
				pizza.setTaytteet(lista);
				System.out.println(pizza);
			}
			
		} catch(Exception e) {
			// Tapahtui jokin virhe?
			throw new DAOPoikkeus("Tietokantahaku aiheutti virheen.", e);
		} finally {
			// Lopulta aina suljetaan yhteys!
			suljeYhteys(yhteys);
		}
		
		return pizza;
	}