09. maj 2003 - 23:05Der er
19 kommentarer og 1 løsning
JSP og/eller Servlet???
Jeg sidder og skal lave en lille rapport over forskellige serverside script sprog, og har lavet mest i PHP.
Jeg er igang med at undersøge mulighederne inden for JSP/Servlet, men er i tvivl om begreberne.
Er det korrekt hvis jeg har forstået det sådan at JSP kan sidestilles med ASP og man i JSP benytter f.eks. java som man også kan benytte VBS i ASP?
Og hvor kommer servlest ind i billedet? Hvad er det?
Håber der er nogle der kan give en god forklaring på det. ps. Det er ikke en diskusion om hvad der er bedst...dem er der så mange af ;-), og vi har vist alle vores kæphest :-)
Jeg ved ikke om det er en _god_ forklaring - men her er en lille en af slagsen...
JSP kan sidestilles med ASP
I JSP er sproget man bruger Java - i ASP er det en afart af VB (Visual Basic)
JSP sider bliver (første gang, de kaldes) konverteret til en servlet (som .class) og det er detefter denne servlet, som bliver eksekveret, når JSP siden kaldes....
public class HelloWorldServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getWriter(); response.setContentType("text/html"); out.println("Time is " + (new Date())); } }
arne_v -> Jeg har læst noget om at man kan inkludere noget man kalder java-beans i sine JSP-sider. Som jeg forstå det er disse også en form for servlest så jo. De skulle være med til at opdele sitet i MVC, så kontrolen af data lå i disse java-beans?
arne_v -> Har jeg forstået der korrekt sådan så du i dit eksempel laver en JSP-side som bliver kaldt at en http request, og JSP-siden så kalder servleten?
jeg er i så tilfælde stadig i tvivl om hvad den store forskel er på jsp og servlets. Jeg kan godt se det syntaksmæssige i det, men i sidste ende laver de det samme. og nu nå jeg bragte beans på banen (...sorry), hvad er det så de kan som servlets ikke kan. For mig ligner sevlets ren java for mig (J2EE), og umiddlebat lyder det til at beans er det samme???
Dit eksempel på en MCV: dvs, at databasetilgangen forgår fra beans, funktionaliteten i servlets-siderne og resultatet bliver så vist via JSP-siderne?
Måske ville jeg omformulere det til at servlets initierer funktionaliteten, fordi ofte er meget af selve funktionaliteten også flyttet ud i selvstændige Java klasser.
Nu har jeg jo som sagt siddet med php, som jo umiddelbart (i hvert fald i mit tilfælde)er lidt nimmere at gå til. I PHP har jeg fået forståelsen for at der bruger man kun php, dvs. at der kombinere man ikke på samme måde de forskellige værktøjer. Vil det sige at dem som forsøger at have opdelt deres løsning i en MVC, kun gør det i php filer som så inkluderes i hinanden?
Umidelbart er jeg blevet ret glad for php, men det lader til at man har lidt flere muligheder igennem JSP (med brug af servlets, utility klasser og andre værktøjer) alt efter den opgave man nu skal løse!
dvs. JSP-sider kompileres til bytekode første gang den loades, og derefter går det stærkere, hvad med servlest og utility klasserne...fungere disse på samme måde? Når man siger at de loades første gang, menes der så at hver gang en ny klient loader første gang bliver koden kompileret, eller er det bare den første klient det lige skal igennem det?
Jeg er lige ved at have den på plads. Efter dine eksempler i starten har jeg udledt at de gør det samme og at man kan lave dem på begge måder. Efter den sidste kommentar spiller det ikke rigtig nogen rolle for serveren, da JSP-siden alligevel kompileres til en servlet(...en aha oplevelse).
De servlets (og utility klasser) man selv laver kompilere man selv fra starten, så disse vil ikke blive kompileret ved første load.
Når man siger at en JSP-side kompilere første gang så er det kun den første klient der besøger siden der skal vente i lidt længere tid, da JSP-siden jo selvføgelig ligger på serveren.
Jeg håber at mine udledninger af alle dine svar er korrekte, for så har jeg i hvert fald fået en meget bedre forståelse af hvordan det hele hænger sammen.
Jeg er datamatikerstud på 4. semester og er ved at skrive en synops om dette emne. På skolen undervises der i C++ (+ lidt java på valgfag). Takker for hjælpen :-)
At JSP er meget nemmere at udvikle og vedligeholde end servlets for HTML generering er dog ikke helt uvæsentligt.
Også selvom det i sidste ende bliver til nogenlunde ens byte kode.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.