Retornar foto do banco?

Galera alguém pode me ajudar a terminar esse método, por favor???

....
public BufferedImage retornaFoto(HttpServletResponse res, String codigo_foto) throws Exception,IOException {
		
		String sql = null;
		byte [] image;

		try {
			Class.forName("org.gjt.mm.mysql.Driver");
			con= DriverManager.getConnection("jdbc:mysql://localhost:3306/teste","","");
			sql = "Select * from foto where cod_foto = " + codigo_foto;
		
			pstmt = con.prepareStatement(sql);
			rs = pstmt.executeQuery();
		
			if(rs.next()){
				Blob blob = rs.getBlob("foto");
				blob.getBytes(1, (int) blob.length());
				image = blob.getBytes(1, (int) blob.length());
				int BUFFER = image.length;
				fs = new ByteArrayInputStream(image);
				decoder = JPEGCodec.createJPEGDecoder(fs);
				bImage = decoder.decodeAsBufferedImage();
				encoder = JPEGCodec.createJPEGEncoder(res.getOutputStream());

				encoder.encode(bImage);
			}
			
		}catch (ClassNotFoundException e) {
			throw new Exception("Driver nao encontrado " + e);
		}catch (SQLException e) {
			throw new Exception("Erro com o banco de dados " + e);
		}catch (Exception ex) {
			throw new Exception("Erro: " + ex);
		}
		return bImage;
	}
...

Eu estou tentando criar um método que me retorne a foto do banco passando um código da foto, só que peguei alguns códigos na net e montei esse, mas pintou uma dúvida agora o que eu devo retornar para minha JSP, ou seja no return coloco o que?, coloquei “bImage” mas não tenho certeza se é isso, e depois como recupero esse retorno na JSP? aguardo quelquer ajuda.

Um abraço.