Hallo!
Ich habe diverse Bilder als Blob in der Datenbank gespeichert. Nach langem probieren und viel suchen konnte ich mithilfe des folgenden Servlet Code die Bilder aus der DB herauslesen und anschließend ausgeben. Das funktioniert auch wunderbar, das einzige was ich noch einfügen will, ist, dass ich die Größe des Bildes für zum anzeigen ändern kann. Nun meine Frage: Was muss ich beim Code ändern damit das funktioniert, wie kann man die Größe eines buffered image ändern?
Vielen dank für eure Hilfe!
Gruß,
Florian
Hier der Servlet Code:
Ich habe diverse Bilder als Blob in der Datenbank gespeichert. Nach langem probieren und viel suchen konnte ich mithilfe des folgenden Servlet Code die Bilder aus der DB herauslesen und anschließend ausgeben. Das funktioniert auch wunderbar, das einzige was ich noch einfügen will, ist, dass ich die Größe des Bildes für zum anzeigen ändern kann. Nun meine Frage: Was muss ich beim Code ändern damit das funktioniert, wie kann man die Größe eines buffered image ändern?
Vielen dank für eure Hilfe!
Gruß,
Florian
Hier der Servlet Code:
Java:
@RemoteServiceRelativePath("showImage")
public class Images extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse res){
if(req.getParameter("patientenid") != null){
int imageid = Integer.parseInt(req.getParameter("patientenid"));
try {
StammdatenServer getImage = new StammdatenServer();
BufferedImage image = new BufferedImage(50, 50, BufferedImage.TYPE_USHORT_GRAY);
//BufferedImage image = new BufferedImage(100,100, BufferedImage.TYPE_INT_RGB);
image = getImage.getPatientImage(imageid);
/*BufferedImage scaledImage = null;
Graphics2D graphics2D = image.createGraphics();
graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
RenderingHints.VALUE_INTERPOLATION_BILINEAR);
graphics2D.drawImage(image, 0, 0, 100, 100, null)*/
res.setContentType("image/jpeg");
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(res.getOutputStream());
encoder.encode(image);
}
catch(Exception e){
System.err.println(""+e);
}
}
}
}