Hace tiempo que no dedicaba una entrada para hablar de temas programiles, así que hoy toca uno de ellos: JSP y Servlets.

Como supongo que conocéis de que va tanto uno como otro (y si no es así… me parece que este post no os sirve para mucho :P), pues iré directamente al grano.

Todos los que halláis trabajado con JSPs sabéis que su finalidad es la de facilitar la vida al diseñador web y volver loco al programador… ¿Razones? Son sencillas, básicamente es lo inmanejable que es ese código y lo poco que se puede reutilizar (fíjese que he dicho en lo poco, no en lo absoluto ;) ), además, hay que añadir que la depuración de ese código (sobre todo cuando crece) es una labor ingente.

El otro lado de ésto son los Servlets. Esta clase es capaz de hacer lo mismo que todo JSP usando el flujo de salida a web, pero claro, dicho código es inmanejable por los diseñadores Web, y por ello se consideran que los Servlets con “manejadores”, es decir, se utilizan para transportar datos de un lado para otro, de conectar cosas, pero ya de nada que tenga que ver con la capa visual.
Y como curiosidad, y supongo que sabéis, todo JSP es transformado a un servlet automáticamente por el contenedor antes de poder ser utilizado…

Bien, leo aquí algo con lo que estoy muy de acuerdo. Si os fijáis es norma general que en el trabajo se utilice el JSP para la vista, aunque la vista no sea importante o, inclusive, aunque no vaya a participar ningún diseñador web en ella, solamente programadores…

En ese artículo mencionan el porque no volver, en esos casos, a utilizar solamente servlets, con lo que podríamos usar métodos de clases, reutilizar código mediante herencia, depurar de una manera decente…

Como ejemplo, tomo el que viene en el artículo… En un JSP quedaría ésto así:

Código JSP

Y en un servlet sería así:

Código Servlet

¿Qué es lo más intuitivo?En fin, si tenéis tiempo y no os asusta que el artículo esté en inglés, leerlo, que es muy bueno. Y si tenéis más tiempo todavía, pensar en ésto, pensar en lo que, según el proyecto, podría aligerar toda la carga de trabajo de depuración y mantenimiento de las aplicaciones.

Más información:
http://www-128.ibm.com/developerworks/java/library/j-pureserv/?ca=dgr-jw22PureServletGUI

  1. Bueno, yo siempre que use (o vi en código cuando toco parchear) JSP eran sólo para presentación y ahí si los veo MUY utiles. Dejabas todo como properties de la request y ale, ya le podía dar la vena al cliente de quererte cambiar la interfaz, que tus Struts eran sagrados y no los tocaba nadie…

    No se, soy mas novato que tú en temas cárnicos, pero yo la MVC y los frameworks estos tipo Struts los veo útiles y que ahorran tiempo, que van lentos, pues que compren máquina nueva (que les da igual comprarla, pero pagar a un cárnico por encima de la tarifa marco – o como se llame eso – para hacer la aplicación rápida y bien, nooo eso no… eso es pecao yles quitan la subscrición al “Expansión” o al “Cinco Días” XDDDD).

    Eso si, meter lógica de negocio en JSPs kilométricos (que por suerte aún no los he visto) debería quitar hasta puntos del carné…

    Bueno, no me enrollo más :P, que los JSPs pues depende para qué… ale me voy a ver fotos del Scythe Ninja Plus que me esta entrado antojo y mañana puede que caiga… juguetitos *__*, etc …

  2. En los casos que me comentas, por supuesto que sí que tiene que ser así… Pero luego por un lado están lo JSP de 4000 líneas (verídico y sufrido por un servidor…) y por otro están los que simplemente quieren una interfaz para el manejo de cosas, no para presentar a cliente ni nada…

    De todas, yo creo que a los JSPs aun les hace falta una vuelta más de tuerca, porque el lenguaje de etiquetas es incomodo y dificultoso de depurar… Falta una evolución por ahí todavía ;)

    ¿¿Fotos del Scythe Ninja Plus?? ¿¿Qué es eso?? :O

  3. Cierto, de hecho, yo no se como se depuran los JSP, al menos una depuración mas allá de la traza de excepciones que te suelta el OC4J o el Tomcat porque no le gusta el JSP. ¿Cómo se depuran? Yo sólo se de esa forma. ¿Hay mas formas?

    Scythe Ninja Plus: disipador + ventilador para la CPU. Cerca de medio kilo de cobre y aluminio de fabricación 100% japonesa … ainsss… no te pongo el link porque lo trata como SPAM, simplemente buscalo en google imagenes y lo ves. Estaba mirando fotos para ver que tal queda puesto con la placa base en vertical (como la tiene todo el mundo) porque… es que es medio kilo ahí colgando…da cosa… eso si, subes el micro de 2.4GHz (stock) a 3GHz y ni se inmuta… ainsss… jeje… me callo que estas cosas me pierden… ^^UUUUU

    P.D: Está genial lo de gravatar en el blog… ;)

  4. Pues bueno, puesto que mi fuerte tampoco son los JSP y los rehuyo como la peste no te podría decir… En principio no hay mucho más… salvo el Eclipse y compañía que tienen plugins que te pueden chivar algo… y luego meterle las pruebas con algo tipo HttpUnit pues…. poco más

    Guau… ¡¡Overclock Rules!!

Leave a Reply

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>