abcd423417984 Skrevet 14. april 2005 Del Skrevet 14. april 2005 Nøyaktig hva er forskjellen på Java servlets, JSP, og Java beans? Lenke til kommentar
berzerker Skrevet 14. april 2005 Del Skrevet 14. april 2005 Nøyaktig hva er forskjellen på Java servlets, JSP, og Java beans? Java beans har ingenting med de to første å gjøre. Du kan lage Java beans som du kan putte inni andre grafiske elementer (hvis du mente Enterprise Java Beans er det noe HELT annet igjen). Servlet er Java kode med HTML som produserer rein HTML. JSP er HTML med Java kode som produserer rein HTML. Lenke til kommentar
abcd423417984 Skrevet 14. april 2005 Forfatter Del Skrevet 14. april 2005 hvordan henger java beans sammen med jsp da? ikke enterprise... Lenke til kommentar
boemane Skrevet 15. april 2005 Del Skrevet 15. april 2005 (endret) hvordan henger java beans sammen med jsp da? ikke enterprise... JavaBeans er i bunn og grunn en helt vanlig java klasse som følger visse design-kriterier. For at en klasse skal kunne være en JavaBean må den blandt annet: - Ha en tom konstruktør - Ha get/set metoder for instansevariabler JSP - JavaServer Pages - er Sun's "svar" på PHP og ASP. En JSP fil er et "HTML"-dokument som inneholder java kode, scriptlets, innenfor flagene <% og %>. For å kunne kjøre JSP sider må du ha en J2EE-webserver (f.eks. tomcat http://jakarta.apache.org/tomcat/ eller JBoss http://www.jboss.org - Disse er begge gratis (opersource). En Servlet er en Java klasse som skriver ut HTML kode, så på mange måter det "motsatte" til en JSP fil. Selv om det ikke er merkbart for brukeren blir en JSP fil kompilert om til en Servlet første gang den hentes fra serveren. JSP og Servlets kan benytte seg av JavaBeans som underliggende datastruktur. noe som er veldig vanlig. JSP har spesielle flagg for å kommunisere med Beans <jsp:useBean ...>, <jsp:setProperty ... > og <jsp:getProperty ... > for å nevne noen. Edit: Mente jeg hadde skrevet noe om dette på forumet tidligere: http://forum.hardware.no/index.php?showtopic=275013&hl= .:BoeManE:. Endret 15. april 2005 av boemane Lenke til kommentar
smetho Skrevet 16. april 2005 Del Skrevet 16. april 2005 JSP blir oversatt til Servlet behind the scenes. Lenke til kommentar
abcd423417984 Skrevet 30. april 2005 Forfatter Del Skrevet 30. april 2005 Okay da forstår jeg hva de forskjellige tingene er, men jeg lurer fremdeles på noe. Hvis jeg skal ha en servlet som tar seg av en request, men så skal den bygge siden ut i fra en JSP med javabeans, hvordan skal jeg opprette (og overføre) denne beanen fra servlet til jsp? Lenke til kommentar
Frank2004 Skrevet 1. mai 2005 Del Skrevet 1. mai 2005 Okay da forstår jeg hva de forskjellige tingene er, men jeg lurer fremdeles på noe. Hvis jeg skal ha en servlet som tar seg av en request, men så skal den bygge siden ut i fra en JSP med javabeans, hvordan skal jeg opprette (og overføre) denne beanen fra servlet til jsp? Høres ut som om du er på riktig vei her, og har en arkitektur hvor JSP kun brukes til presentasjon. Akkurat det å opprette en bean blir vel akkurat som å lage hvilket som helst annet objekt. Deretter legger du den i f.eks. request scope, så den kan hentes ut igjen i med en <usebean... > tag. Lenke til kommentar
abcd423417984 Skrevet 1. mai 2005 Forfatter Del Skrevet 1. mai 2005 Så det holder å inni servleten gjøre noe slik som; request.putAttribute("beansak", bønneobjekt); (jeg antar at bønneobjektet da må extende java.lang.Object?) også hente inn requestdispatcher og forwarde (eller include?) til en servlet, for så i servleten å bruke useBean tag? Lenke til kommentar
Frank2004 Skrevet 1. mai 2005 Del Skrevet 1. mai 2005 Så det holder å inni servleten gjøre noe slik som; request.putAttribute("beansak", bønneobjekt); (jeg antar at bønneobjektet da må extende java.lang.Object?) også hente inn requestdispatcher og forwarde (eller include?) til en servlet, for så i servleten å bruke useBean tag? request.setAttribute("bønneid", bønne), ja. Holdt meg til forward selv, include blir mer for å hente inn templates fra inne i et view, imo. Alle klasser arver på en eller annen måte fra Object, så det trenger du ikke tenke på. Et av kravene til en Java bean er vel at den er serialiserbar, så du kan vurdere å implementere java.io.Serializable, selv om jeg ikke har vært borti en web-container som klager om jeg dropper det. Lykke til. Absolutt masse å lære av dette, og når du har skjønt hvordan alt henger sammen og fått ihop en grei MVC-arkitektur er du vel klar for Spring eller lignende rammeverk. Lenke til kommentar
abcd423417984 Skrevet 1. mai 2005 Forfatter Del Skrevet 1. mai 2005 Tusen takk for svar. En siste ting jeg lurer på; Hvis jeg i servleten henter ut en rekke rader (uvisst antall på tidspunktet jeg koder) fra en tabell, hvordan bør jeg lagre dette i en javabean? Når det plutselig blir flere elementer så bryter logikken litt for meg. Lenke til kommentar
MailMan13 Skrevet 1. mai 2005 Del Skrevet 1. mai 2005 (endret) Da legger du alle bønnene i en collection (LinkedList er vel det mest elegante) og henter den frem igjen i jsp filen med: <jsp:useBean id='flereBønner' scope='request' type='java.util.Collection' /> Bibelen for J2EE applikasjoner (siden ingen har nevnt det), virker som du er på riktig vei: http://java.sun.com/blueprints/corej2eepat...erns/index.html Endret 1. mai 2005 av MailMan13 Lenke til kommentar
Frank2004 Skrevet 1. mai 2005 Del Skrevet 1. mai 2005 Tusen takk for svar. En siste ting jeg lurer på; Hvis jeg i servleten henter ut en rekke rader (uvisst antall på tidspunktet jeg koder) fra en tabell, hvordan bør jeg lagre dette i en javabean? Når det plutselig blir flere elementer så bryter logikken litt for meg. Tjah.. Som en liste (ArrayList f.eks.) av nye beans? Så bruker du JSTL's <c:forEach> tag for å traversere elementene i denne. F.eks.: <c:forEach var="rad" items="${minbean.rader}"> <h1>${rad.enProperty}</h1> <p>${rad.enAnnenProperty}</p> <hr /> </c:forEach> Lenke til kommentar
abcd423417984 Skrevet 1. mai 2005 Forfatter Del Skrevet 1. mai 2005 (endret) Når jeg lager denne bønnen så antar jeg at den må legges i en egen fil? Uansett får jeg bare beskjed i servleten at den "cannot find symbol" da jeg prøver å opprette en instans av bønnen. Jeg er ganske ny i java og sliter derfor fort med ting som dette som sikkert er svært enkelt. Bønnen ligger i en egen fil med samme navn som klassen, den er kompilert, og jeg prøver å opprette en instans med; klasse k = new klasse(); Det virker hvis jeg legger klassen i servlet fila, men da klarer ikke JSP fila å bruke den. Hvor skal bønneklassene lagres for at både servlet og jsp skal kunne bruke den? EDIT: Fikk ting til å virke Endret 1. mai 2005 av invictus Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå