# Java Server Pages und Images



## krey (16. Sep 2005)

:idea:  Hi, ich versuche in JSP dynamisch Bilder du generieren und in die Seite integrieren.
Wie gehe ich das am besten an?

Es ist ja nicht möglich durcheinander Bilddaten und Html zu schreiben also muss das sicher getrennt werden.

:arrow: Ich könnte die JSP Seite die Bilder generieren lassen und per Strean in Dateien schreiben (bild1.jpg,bild2.jpg), und dann im Quelltext 
	

	
	
		
		

		
			





 u.s.w. angeben
:arrow: Oder eine JSP Seite schreiben welche die Bilder auf den request stream schreibt und dann in einer HTML Datei auf diese Bilder verweisen (
	

	
	
		
		

		
		
	


	




). 

Welche Möglichkeit ist besser, welche von der Struktur schöner und welche performanter? Lässt sich das nicht auch mit beans lösen?

Grüße, Martin


----------



## bronks (16. Sep 2005)

Ich mache es immer so: Ich baue ein Servlet welches eine Grafik streamt. Dieses Servlet binde ich per <img> in eine JSP ein ...


----------



## Bleiglanz (16. Sep 2005)

mach ein Servlet, sowas macht man nicht mit JSP



> Ich könnte die JSP Seite die Bilder generieren lassen und per Strean in Dateien schreiben (bild1.jpg,bild2.jpg), und dann im Quelltext
> 
> 
> 
> ...



das ist unsinn, denn WANN soll in dem Fall das Bild erzeugt werden?


----------



## krey (16. Sep 2005)

Bleiglanz hat gesagt.:
			
		

> mach ein Servlet, sowas macht man nicht mit JSP
> 
> 
> 
> ...



Bevor das HTML ausgeben wird was auf das Bild zugreift.


----------



## Bleiglanz (16. Sep 2005)

hmmm

sehe da eher ein Problem mit der nebenläufigkeit, wie sollen die Bilder denn heissen?

wenn zwei gleichzeitige Requests kommen und da zwei Threads in der Datei Bild1.jpg rumschreiben, geht das wahrscheinlich schief

wenn du eindeutige Namen erzeugst könnte das klappen, ist aber bestimmt langsamer als direkt zu streamen...


----------



## krey (16. Sep 2005)

Mhhh ok danke! Und wie istes damit die Bilder nur jede Minute generieren zu lassen? Und wie kann man so etwas verwirklichen?


----------



## Solour (16. Sep 2005)

wenn du dich für nebenläufigkeit und deren synchronisation interessierst such mal nach

Semaphoren (gibt ne java-classe schon für)
Monitore
synchroized (java-method modifier)

dann sollte das insgesamt kein problem sein
bye


----------



## krey (16. Sep 2005)

Mhhh es wäre ja auch möglich auf der Seite nen aufruf zu machen der die Bilder einmal in einer bestimmten Zeit generiert... Und dann werden die gespeichert. Wie performant ist denn ein Servlet das Bilder generiert?


----------



## bronks (16. Sep 2005)

krey hat gesagt.:
			
		

> ... Wie performant ist denn ein Servlet das Bilder generiert?


Das könnte vom Bild abhängen und auch davon, wie das Bild erzeugt wird ...


----------



## krey (17. Sep 2005)

Beispiele? Verfahren? Leistungskurven oder Diagramme? Wie Optimiert man sowas?


----------



## Bleiglanz (17. Sep 2005)

> Mhhh es wäre ja auch möglich auf der Seite nen aufruf zu machen der die Bilder einmal in einer bestimmten Zeit generiert... Und dann werden die gespeichert. Wie performant ist denn ein Servlet das Bilder generiert?


normalerweise performant genug (bei einfachen Sachen merkt der Client das kaum, wegen der Netzwerklatenz)

wenn du aber 100 Hits pro Sekunde hast könnte es sich schon lohnen, die bilder nur alle 5 Minuten zu erzeugen

könntest du z.B. über eine timestamp-member-variable im GenerierungsServlet lösen


----------

