2009-12-23 1 views
2

Si nous avons une demande personne-répertoire, où l'on peut vérifier les détails d'une personne spécifique (par exemple, une personne avec id 239) àcomment créer l'URL de vanité dans des applications Web de Java?

http://person-directory.com/detail.jsp?id=239 

comment pouvons-nous créer urls vanité en elle? dire au lieu de taper l'URL ci-dessus, nous utilisons

http://person-directory.com/julius 

pour ouvrir la page de détail de personne avec id 239 et nom d'utilisateur jules.

Merci

Umar

Répondre

6

Je suppose que vous aurez à

  1. mapper un servlet au contexte racine (c.-à-http://person-directory.com/)
  2. utiliser le HttpServletRequest.getPathInfo() et extraire le nom de la URL à laquelle votre servlet a été appelée avec
  3. utilisez ce nom pour faire une recherche dans votre source de données principale

Notez qu'une meilleure URL peut être http://person-directory/username/julius. Vous pouvez ensuite mapper votre UserServlet sur http://person-directory/username et fournir d'autres servlets sur d'autres URL.

+0

Cela ressemble à une façon de faire les choses. Avant l'étape 3, vous pouvez avoir une liste de noms à exclure en tant que partie du site Web. –

+0

Oui. Je pense qu'une meilleure URL serait http: // hostname/user/julius. Je vais modifier la réponse pour inclure cette –

2

Vous pouvez également essayer d'utiliser le filtre de réécriture d'URL: http://tuckey.org/urlrewrite/. Bien sûr, vous devez changer votre code pour interroger par nom d'utilisateur au lieu d'id.

Questions connexes