Avatar billede mf1616 Nybegynder
24. maj 2001 - 20:48 Der er 5 kommentarer og
1 løsning

Servlets generelt

Når der kommer et request til en servlet, bliver der så oprettet en ny \"instans\" af servlet objektet, eller er det den samme servlet (objekt) der \"kører\" hele tiden?
Avatar billede bearhugx Nybegynder
24. maj 2001 - 21:35 #1
Det er det samme objekt, der kører hele tiden...

/Søren Munk Skrøder
Avatar billede mf1616 Nybegynder
24. maj 2001 - 21:46 #2
Vil det så sige at variabler som fx bliver sat ved det ene request, er bevaret ved det næste?
Avatar billede lbhansen Nybegynder
24. maj 2001 - 21:59 #3
Det er ikke dikteret at sun, om der kører en ny instans eller ej. De fleste applikationsservere kører dog med en, eller et max antal instanser for at opnå performance.

Derfor vil jeg ikke råde til at anvende instansvariabler i en servlet,
men derimod gør bruge af Session objektet til at
gemme state data i.
Avatar billede mf1616 Nybegynder
24. maj 2001 - 22:01 #4
Eller sagt lidt mere konkret: erklæringen af variabler som værende \"static\", giver ikke rigtig mening indenfor Servlets
Avatar billede mf1616 Nybegynder
24. maj 2001 - 22:02 #5
Ups, svaret fra lbhansen kom mens jeg skrev :-) men det var præcis det jeg ville vide, takker
Avatar billede lbhansen Nybegynder
24. maj 2001 - 22:06 #6
static giver mening i servlets, hvis du har en
variabel, som skal deles af alle instanser( du
ved jo ikke hvor mange der er ). Dette er ofte
variable der bliver sat i init() metoden og ikke
ændrer sig. Det er derfor også bedst at final static til de variable for at andre der læser koden
ved at disse variable ikke ændrer tilstand

instansvariabler er tricky, for du ved ikke om de
er sat eller ej, eller bliver overskrevet af en
evt. anden instans
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester