¿Cuál es la diferencia entre llamar a clases JAVA en JSP y usar JavaBeans?
Puedes usar JavaBean como una clase general. Bean es solo una clase especial. Especialmente, se puede llamar a JavaBean a través de
Los beans también eran archivos de clase en ese momento, pero no había restricciones para los archivos java comunes. Si un archivo de clase se crea de acuerdo con las especificaciones de los beans, entonces es un bean. Hacerlo de acuerdo con las especificaciones del frijol es equivalente a un componente. En otras palabras, el frijol es tecnología de componentes.
Para asegurar que una clase java se convierta en un javabean, existen cuatro especificaciones simples y necesarias:
Esta clase es serializable, es decir, debe implementar el java.io. Interfaz serializable.
Esta clase debe tener un constructor sin parámetros.
Si la variable miembro se llama acceso al método. Las propiedades deben ser públicas. Si hay un constructor en la clase, entonces este constructor también es público y no tiene parámetros.
Esta clase contiene todos los métodos de manejo de eventos necesarios.
La diferencia entre JavaBean y Servlet:
Tipo 1: En JavaBean general, solo hay declaraciones de atributos y los métodos setXxx y getXxx correspondientes a los atributos (generalmente no recomendados) y no no contiene lógica empresarial; este tipo de JavaBean puede entenderse simplemente como un "objeto de datos".
Tipo 2: también existe un JavaBean, que contiene lógica de procesamiento empresarial y se utiliza para procesar datos comerciales específicos; generalmente se utiliza el "objeto de datos" mencionado anteriormente (por supuesto, no se puede utilizar).
El servlet se utiliza principalmente para: recibir solicitudes, encapsular JavaBean 'Tipo 1', llamar al método de lógica empresarial correspondiente del JavaBean 'Tipo 2' y enviar una respuesta al cliente.
El anterior es el modo utilizado por Struts 1.x: ActionForm es el JavaBean de Tipo1, ActionBean es el JavaBean de Tipo2 y ActionServlet es el Servlet mencionado anteriormente. Struts 2.x utiliza una combinación de Type1 + Type2 (objetos de datos y procesamiento comercial) y Servlet (en realidad, el método Webwork).
¿Cuál es la diferencia entre javaBean y Servlet?
¿Cuándo usar javaBaen?
¿Cuándo usar Servlet y cuándo usar una combinación de los dos?
Los Javabeans no son más que un sistema de configuración y obtención. métodos en ellos
el servlet se usa para manejar algunas capas lógicas
Javabean dice que el punto general es la implementación
Javabean, servlet y jsp corresponden a M ( odel), C (ontroller) y V ( iew)
Ejemplo: el servlet consulta la base de datos-----javabean guarda los resultados de la consulta-----jsp muestra los resultados de la consulta
javabean es una clase Java ordinaria con atributos dentro. Se agregaron captadores y definidores y se proporcionó una construcción predeterminada. Puede existir en cada capa de una arquitectura multicapa. Puedes hacer lo que quieras con él.
Y Servlet es algo en la capa de presentación... sólo debería existir en la capa de presentación. A menudo se utiliza como controlador en MVC.
En el modo MVC general, Servlet desempeña principalmente el papel de C.
javabeans y servlets son dos cosas diferentes. Debido a que javabean es un componente y se puede usar en cualquier lugar, por supuesto se puede usar en servlets.
Según la definición de Sun, se llama JavaEE. aplicaciones Consta de dos partes: (1) componentes, que representan la lógica empresarial y la lógica de rendimiento, y son completados por los desarrolladores (2) servicios estándar del sistema, que son proporcionados por la plataforma JavaEE, es decir, todo lo que está fuera de esta. El alcance es No pertenece a la categoría de aplicaciones JavaEE. El servlet, como uno de los componentes que expresa la lógica en las aplicaciones JavaEE, es, por supuesto, parte de las aplicaciones JavaEE. JavaBean se produjo antes que J2EE y sus usos técnicos son más extensos y no se limitan a JavaEE. Según la definición de Sun, no entra dentro del alcance de la tecnología JavaEE.
De hecho, el uso real a gran escala de la tecnología de componentes JavaBean está en Swing. Todos los controles en Wing, incluidos JButton, JTree, etc., utilizan la tecnología JavaBean. famoso modelo MVC, si no me cree, descubra la API Swing, estudie JTree y JTable detenidamente y sabrá qué es un JavaBean real.
Servlet es una clase especial de Java que solo puede sobrevivir en un contenedor JavaEE. Es como un pez en una pecera que no puede sobrevivir sin un contenedor. Los JavaBeans pueden existir independientemente del entorno JavaEE y se pueden utilizar tanto en el cliente como en el servidor.
El llamado POJO es EJB sin la palabra E, y el JB restante es JavaBean. En otras palabras, JavaBean en J2EE puede incluso servir como tarea completada por algunos EJB, y su uso es mucho. mayor que el de Servlet. La última diferencia es que el objetivo principal de JavaBean es gestionar el flujo de datos entre varias capas de aplicaciones JavaEE. Por lo tanto, en algunos marcos (como Struts), existen FormBean y ActionBean, cuya esencia es gestionar datos. Creo que si se aclaran los puntos anteriores, no debería ser difícil distinguir Servlets y JavaBeans.
¿Cuáles son las diferencias entre JSP y Servlet en la aplicación?
En pocas palabras, SUN desarrolló por primera vez Servlet, que tiene funciones relativamente poderosas y un diseño de sistema avanzado. Sin embargo, todavía utiliza el antiguo método CGI para generar declaraciones HTML, que se generan oración por oración. escribiendo Y es muy inconveniente modificar HTML. Más tarde, SUN lanzó un JSP de tipo mosaico similar a ASP, que incrustaba JSP TAG en declaraciones HTML, lo que simplificó y facilitó enormemente el diseño y la modificación de páginas web.
Los nuevos lenguajes de Internet, como ASP, PHP y JSP, son todos lenguajes SCRIPT integrados. Desde la perspectiva de la estructura de red de tres capas, un proyecto de red se divide en al menos tres capas: capa de datos, capa empresarial y capa de presentación. Por supuesto que puede ser más complejo.
El servlet es muy potente para escribir la capa empresarial, pero es muy inconveniente para escribir la capa de presentación. JSP está diseñado principalmente para facilitar la escritura de la capa de presentación. Por supuesto, también puedes escribir una capa empresarial.
Los amigos que están acostumbrados a escribir ASP, PHP y CGI a menudo mezclan inconscientemente la capa de presentación y la capa empresarial, como poner la información de procesamiento de la base de datos en JSP. De hecho, debería colocarse en la capa empresarial. Según la propia recomendación de SUN, JSP solo debe almacenar cosas relacionadas con la capa de presentación, es decir, solo la parte que genera la página web HTML. Todos los cálculos de datos, análisis de datos y procesamiento de conexiones de bases de datos pertenecen a la capa empresarial y deben colocarse en JavaBeans. Llame a JavaBean a través de JSP para lograr una integración de dos capas.
De hecho, la tecnología DNA lanzada por Microsoft no hace mucho es, en pocas palabras, tecnología ASP+COM/DCOM. Completamente similar a JSP + BEANS, todas las capas de presentación se completan con ASP y todas las capas comerciales se completan con COM/DCOM. La integración se logra a través de llamadas.
¿Por qué utilizar estas tecnologías de componentes? Debido a que el lenguaje ASP/JSP puro es muy ineficiente de ejecutar, si hay una gran cantidad de clics del usuario, el lenguaje SCRIPT puro alcanzará rápidamente su límite superior funcional, y la tecnología de componentes puede aumentar en gran medida el límite superior funcional y acelerar la ejecución. velocidad.
Por otro lado, el lenguaje SCRIPT puro mezcla la capa de presentación y la capa empresarial, lo que hace que la modificación sea inconveniente y el código no se pueda reutilizar. Si desea modificar un lugar, a menudo implica más de diez páginas de CÓDIGO. Utilizando tecnología de componentes, solo necesita modificar los componentes.
En resumen, Servlet es un producto temprano e imperfecto. capa empresarial Muy bien, escribir la capa de presentación huele mal y mezcla las dos capas.
Entonces, se introduce JSP + Bean, JSP se usa para escribir la capa de presentación y Bean se usa para escribir la capa comercial. El propio SUN también tiene la intención de utilizar JSP para reemplazar Servlet en el futuro.
Sin embargo, esto no significa que aprender Servlet sea inútil. De hecho, debes comenzar con Servlet, luego JSP y luego JSP+BEAN.
El énfasis es: si ha aprendido JSP pero no puede utilizar e integrar JavaBeans, no lo ha aprendido. Todo el mundo debería dedicar más esfuerzo a JSP+Bean.
Podemos ver que cuando tanto ASP+COM como JSP+Bean adoptan la tecnología de componentes, todos los componentes se compilan primero, residen en la memoria y luego se ejecutan rápidamente. Por lo tanto, la ventaja de velocidad de Servlet/JSP compilado primero y luego ejecutado en la memoria desaparece.
Por el contrario, la estrecha integración de ASP+COM+IIS+NT debería tener una mayor ventaja en velocidad. Además, la eficiencia del desarrollo de ASP+COM+IIS+NT es muy alta, aunque existen muchos errores.
Entonces, ¿por qué seguir usando JSP+Bean?
Porque JAVA realmente tiene un futuro brillante. Después de la escisión de Microsoft, el sistema operativo unirá fuerzas. Los desarrolladores de software de aplicaciones deben encontrar un lenguaje de desarrollo común para el desarrollo. Ha llegado el momento de que JAVA domine el mundo. Si la escisión de Microsoft se desarrolla sin problemas, la empresa de software de aplicaciones que se escindió se convertirá en el nuevo líder de JAVA.
Los actuales gigantes de JAVA, SUN e IBM, están sin vida y son decepcionantes.
Se espera que la nueva empresa inyecte nueva vitalidad a la empresa. Sin embargo, es probable que la nueva empresa inicie una guerra de estándares JAVA con la antigua SUN. Ambas partes formularán sus propios estándares, lo que afectará a la plataforma JAVA.
Además, las máquinas actuales son cada vez más rápidas y la desventaja de velocidad de JAVA pronto podrá superarse. javabean se puede usar como modelo + control, o se puede usar solo como modelo, o solo se puede usar para la transferencia de datos (JSP envía datos al Bean, BeanN ejecuta y opera la base de datos, y viceversa)
Si aún no has aprendido a utilizar otros frameworks, como HIBERNATE, SPRING, STRUTS, etc. La función de javabean es cargar datos. A este tipo de bean lo llamo bean de datos. Por ejemplo, los registros consultados desde la base de datos se pueden guardar en el bean de datos.
Otra función de javabean es procesar cierta lógica empresarial. Por ejemplo, puede utilizar JDBC en javabean para acceder a la base de datos, cargando así información de la base de datos en el bean de datos y también puede eliminarla. la base de datos.
La función principal del Servlet es controlar los saltos de página. Por ejemplo, se envía una solicitud desde login.jsp al Servlet. El Servlet llama al método business bean para consultar si la base de datos tiene la contraseña y el usuario. name, si es correcto, el servlet puede usar el método de objeto de solicitud o respuesta para saltar a la página deseada.
Dos modos de desarrollo JSP
Modo 1: JSP+JavaBeans
Esto se refiere a la tecnología JSP+JavaBean. En el modo uno, la página JSP responde únicamente a la solicitud y devuelve los resultados del procesamiento al cliente. Todos los datos son procesados por JSP a través de Bean para realizar el rendimiento de la página. La tecnología Modo 1 también permite separar la presentación de la página de la lógica empresarial de la página.
El uso extensivo de formularios de patrones a menudo resulta en la incrustación de una gran cantidad de lenguaje de script o código JAVA en la página. Esta situación se vuelve muy mala cuando la lógica empresarial que debe procesarse es compleja. Una gran cantidad de código puede hacer que toda la página sea muy compleja. Para los diseñadores de interfaces front-end, esto es simplemente inimaginable.
Esta situación es más común en proyectos grandes, lo que también dificulta el desarrollo y mantenimiento del código, lo que resulta en un desperdicio innecesario de recursos. En cualquier proyecto, un modelo de este tipo siempre conducirá a más Menos problemas. respuestas definidas y dificultades en la gestión de proyectos.
En resumen, el modo uno no puede satisfacer las necesidades de grandes proyectos, pero puede satisfacer mejor las necesidades de aplicaciones pequeñas.
Modo 2: JSP+Servlet+JavaBeans
La tecnología Servlets es una técnica que utiliza la tecnología JAVA para implementar funciones CGI. La tecnología Servlets se ejecuta en el servidor WEB y se utiliza para generar páginas WEB. La tecnología de servlets es muy adecuada para el procesamiento y la programación del lado del servidor, y los servlets permanecerán donde están durante mucho tiempo.
Sin embargo, en el proceso de desarrollo del proyecto real, los diseñadores de páginas pueden usar fácilmente herramientas HTML ordinarias para desarrollar servlets de páginas JSP, pero es más adecuado para los desarrolladores de back-end que requieren un entorno de desarrollo integrado JAVA. , lo que significa que la tecnología Servlet requiere más programadores.
La tecnología Modo 2 combina la tecnología JSP y Servlet para reflejar plenamente las ventajas técnicas de ambas. En este modo, la página se representa mediante JSP. Complete una gran cantidad de procesamiento de transacciones a través de Servlet. Servlet actúa como controlador y es responsable de enviar solicitudes a los clientes. Servlet crea los beans y objetos requeridos por JSP y luego decide qué página JSP enviar al cliente en función del comportamiento de solicitud del usuario.
Desde el punto de vista del desarrollo, el Modo 2 tiene un rendimiento de página más claro, una división clara de las funciones de los desarrolladores y puede aprovechar al máximo los diseñadores de interfaces del equipo de desarrollo. Estas ventajas son particularmente destacadas a gran escala. Al utilizar este modelo, cada desarrollador puede aprovechar al máximo sus respectivas fortalezas. Los diseñadores de interfaces pueden aprovechar al máximo su poder expresivo y diseñar hermosas expresiones de interfaz. tratamiento. En proyectos de gran escala, el modo 2 se adopta aún más.
Servlet es una aplicación Java del lado del servidor independiente de plataforma y protocolo ubicada dentro del servidor web. A diferencia de las aplicaciones Java tradicionales iniciadas desde la línea de comandos, el servidor web carga el servlet. Máquina virtual Java que soporta Servlets.
Comparación entre Servlet de Java y JSP (JavaServerPages):
JavaServerPages (JSP) es una tecnología que implementa codificación mixta de HTML estático ordinario y HTML dinámico sin agregar ninguna esencia. Funciones que no se pueden implementar usando Servlets. Sin embargo, es más conveniente escribir HTML estático en JSP sin tener que usar declaraciones println para generar cada línea de código HTML. Más importante aún, con la separación del contenido y la apariencia, las tareas de diferente naturaleza en la producción de páginas se pueden separar fácilmente: por ejemplo, el diseño HTML lo realiza el diseñador de la página, dejando espacio para que el programador de Servlet inserte contenido dinámico.
El contenido web dinámico JSP puede ser una gran tecnología para el contenido web dinámico y puede separar el contenido y la presentación, entonces, ¿por qué sigue siendo necesario implementar servlets al mismo tiempo que JSP?
De hecho, la practicidad de los servlets no es un problema. Se destacan en el procesamiento del lado del servidor y continúan existiendo debido a sus atractivos métodos de instalación. De hecho, JSP puede considerarse como una abstracción de servlets de alto nivel, que se implementa en forma de extensión API de Servlet2.1.
Nota: los servlets no deben usarse indiscriminadamente; es posible que no funcionen para todos. Por ejemplo, mientras que un diseñador de páginas puede escribir fácilmente páginas JSP utilizando herramientas HTML o XML convenientes, los servlets pueden ser más adecuados para los desarrolladores de back-end que a menudo usan algún tipo de IDE para escribir. Este es un trabajo de procesamiento que generalmente requiere experiencia en programación avanzada.
Al publicar servlets, incluso los desarrolladores deben tener cuidado de garantizar que no haya un acoplamiento estrecho entre la presentación y el contenido. Por lo general, esto se puede lograr agregando un paquete de distribución de terceros como htmlKona. Pero incluso si esto se puede hacer, aunque puede proporcionar cierta flexibilidad a través de simples ajustes en pantalla, todavía no puede garantizar cambios en el formato de la presentación en sí. Por ejemplo, si su presentación cambia de HTML a DHTML, aún deberá asegurarse de que el paquete de distribución sea coherente con el nuevo formato. En el peor de los casos, si no hay un paquete de distribución disponible, terminará con una web dinámica. Utilice código escrito a mano para presentaciones. Entonces, ¿cuál es la solución?
Uno de los métodos consiste en utilizar JSP y tecnología de servlet al mismo tiempo para crear un sistema de aplicaciones.