servlet informationen

  • kennst du das Buch Refactoring von Martin Fowler?
    http://www.amazon.de/exec/obidos/AS…3373574-9602464

    darin gibt es einen Katalog wie man das Design verbessern kann
    immer in kleinsten Schritten, bis man zum gewünschten Ergebnis kommt

    diesen Ansatz find ich ziemlich gut

    Four stages of acceptance:
    1.) this is worthless nonsense
    2.) this is interesting, but perverse, point of view
    3.) this is true, but quite unimportant
    4.) I alwas said so
    J.B.S. Haldane


  • hmmm ... nope, kenn ich nicht. Hört sich aber ganz interessant an. Sind da auch ansätze für servletbasierte Architekturen drinnen? Ich werd mal schauen, ob das in der Firma vielleicht in der Bibliothek verfügbar ist. Ansonst können wir das vielleicht bestellen ... das Buch kriegt man nicht zufällig auch als Onlineausgabe?

    *** Make it idiot proof, and someone will build a better idiot. ***


  • ich hab versucht mich in den letzten paar Tagen noch weiter mit dem Problem, dass sich die Servlet-Threads gegenseitig die Informationen überschreiben, auseinander zu setzen.

    Auf der Suche nach einem eindeutigen key für jeden Servlet-Request, bin ich auf die Idee gekommen, dass ja jedes Servlet in einem eigenen Thread abgearbeitet wird. Eigener Thread = Name (ID) des Threads.

    Und so funktioniert's:
    -) Servlet ruft den SessionHandler auf[INDENT]-) key wird anhand der ID (Name) des Threads generiert, der das Servlet ausführt[/INDENT]
    -) Servlet setzt request für seinen key
    -) die Postparameter werden verarbeitet
    [INDENT]-) ein beliebiges Objekt erstellt neuen SessionHandler
    [INDENT]-) key ist gleich, da Objekt im gleichen Thread läuft wie das Servlet[/INDENT]
    -) das Objekt holt sich request (Session)[/INDENT]
    -) nach der Abarbeitung der Postparameter löscht das Servlet seinen gespeicherten Request
    [INDENT]-) der Request wird ja nicht mehr gebraucht
    -) damit ist eine Art garbage collection gegeben[/INDENT]

    Aufpassen muss man natürlich, dass die Objekte, die diese Funktionalität nutzen direkt im Servlet-Thread laufen.

    Was haltet Ihr davon? Anbei ist der Code des SessionHandlers:

    *** Make it idiot proof, and someone will build a better idiot. ***

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!