Viniendo de otros marcos web, estoy acostumbrado a poder asignar partes de una URL a los parámetros del método. Sé que web.xml proporciona una forma de asignar una URL completa a un servlet, pero ¿hay alguna manera de obtener más funciones de esto, como asignar partes de la URL a los parámetros del método?Enrutamiento de URL en Java
Respuesta
El uso de Spring (MVC) es excesivo para esto. Si no necesita inyección de dependencia, estará contento con redirect filter.
Puede hacer tales cosas con Spring web MVC. Su API de controlador puede asignar partes de la URL a llamadas específicas en la parte de atrás.
En realidad, la mayoría de los marcos MVC admiten acciones RESTful (es decir, permiten mapear URLs sobre métodos de acción): Spring MVC, Stripes, Struts 2 con REST plugin.
Si no está utilizando ninguna de ellas, puede lograr esto con la reescritura de URL. El UrlRewriteFilter es bastante famoso y permite implementar tales cosas. De la documentación sobre Method Invocation:
La correlación de servlet estándar que es realiza a través de web.xml es bastante limitante. Solo .xxx o/xxxx/, sin capacidad para tienen algún tipo de coincidencia inteligente. Utilizando UrlRewriteFilter se puede establecer cualquier regla cuando coincida con para ejecutar método (s) en una clase .
invocar un servlet directamente
<rule> <from>^/products/purchase$</from> <run class="com.blah.web.MyServlet" method="doGet" /> </rule>
Esto invocará doGet (HttpServletRequest solicitud, HttpServletResponse respuesta) cuando se empareja la "de" en una solicitud. (Recuerde que este método tiene que ser público!)
Lo utilizan para delegar limpiamente a sus métodos
<rule> <from>^/pref-editor/addresses$</from> <run class="com.blah.web.PrefsServlet" method="runAddresses" /> </rule> <rule> <from>^/pref-editor/phone-nums$</from> <run class="com.blah.web.PrefsServlet" method="runPhoneNums" /> </rule>
He escrito una biblioteca llamada jurlmap que entre otras cosas hace lo que usted está pidiendo para.
- 1. URL de enrutamiento en PHP
- 2. Backbone.js Enrutamiento de URL
- 3. Url enrutamiento regex PHP
- 4. web.sitemap con Dynamic URL (URL Enrutamiento)
- 5. Enrutamiento MVC sin controlador en la url
- 6. Enrutamiento de URL tipo Django para PHP
- 7. asp.net HttpHandler personalizado y enrutamiento de URL
- 8. ASP.NET MVC enrutamiento/SEO Friendly URL
- 9. Enrutamiento url a minúsculas cómo hacerlo?
- 10. Enrutamiento vs Url Rewrite (IIS7) Rendimiento
- 11. .NET MVC enrutamiento w/codificación URL Problemas
- 12. Cómo implementar el enrutamiento de URL en PHP
- 13. Enrutamiento: ¿Cómo ocultar el nombre de la acción en url?
- 14. ¿Flask admite expresiones regulares en su enrutamiento de URL?
- 15. Problema de enrutamiento url AJAX en IIS con directorio virtual
- 16. Enrutamiento en rieles. Los puntos en el URL
- 17. Cómo ignorar la ruta en los formularios asp.net enrutamiento url
- 18. ¿Es posible localizar una URL/enrutamiento en ASP.NET MVC?
- 19. Enrutamiento de URL en ASP.net, necesita obtener un parámetro de la url
- 20. Python Selector (biblioteca de enrutamiento de URL), experiencia/opiniones?
- 21. ASP.NET 4.0 URL de enrutamiento HTTP Error 404.0 - No encontrado
- 22. Ember.js Enrutamiento: coincidencia al final de la url
- 23. ASP .Net MVC enrutamiento: Url únicamente con ID de cadena
- 24. Problemas con las URL de enrutamiento usando CGI y Bottle.py
- 25. IgnoreRoute with webservice - Excluye las URL de asmx del enrutamiento
- 26. Reemplazar el listado de directorios con el enrutamiento MVC URL
- 27. Unescape url en java
- 28. Cifrado de URL en Java
- 29. Cómo enrutar URL estructuradas por árbol con enrutamiento ASP.NET?
- 30. Django: ¿Cómo creo un enrutamiento url genérico a las vistas?
¡Es divertido de usar! Gracias por esta lib! – dajood
Ah, su servidor está caído. Es mejor compartir proyectos en Github. –
Lo tengo en github: https://github.com/mtomis/jurlmap, pero no estoy seguro de lo útil que todavía es. – mtomis