Red de conocimiento informático - Conocimiento informático - Evaluar JSP, JavaBean, MVC, etc., y presentar argumentos positivos y negativos.

Evaluar JSP, JavaBean, MVC, etc., y presentar argumentos positivos y negativos.

MVC existía originalmente en programas de escritorio, M se refiere al modelo de datos, V se refiere a la interfaz de usuario y C es el controlador. El propósito de usar MVC es separar el código de implementación de M y V para que el mismo programa pueda usar diferentes expresiones. Por ejemplo, un lote de datos estadísticos se puede representar en forma de gráficos de barras, gráficos circulares, etc. El propósito de C es garantizar que M y V estén sincronizados, por lo que una vez que se cambia M, V también debe actualizarse.

Model-View-Controller (MVC) es un patrón de diseño de software inventado por Xerox PARC en la década de 1980 para el lenguaje de programación Smalltalk-80 y se ha utilizado ampliamente desde entonces. En los últimos años, se ha recomendado como patrón de diseño para la plataforma J2EE de Sun y se ha vuelto cada vez más popular entre los desarrolladores que utilizan ColdFusion y PHP. El patrón Modelo-Vista-Controlador es un conjunto de herramientas útil que tiene muchas ventajas, pero también algunas desventajas.

Cómo funciona MVC

MVC es un patrón de diseño que impone la separación de la entrada, el procesamiento y la salida de una aplicación. Al utilizar MVC, una aplicación se divide en tres componentes principales: modelo, vista y controlador. Cada uno maneja sus propias tareas.

Ver

Una vista es la interfaz que los usuarios ven y con la que interactúan. Para aplicaciones web más antiguas, una vista era una interfaz compuesta por elementos HTML. En las aplicaciones web más nuevas, HTML todavía juega un papel importante en la vista, pero han surgido nuevas tecnologías, incluidas Macromedia Flash y lenguajes de marcado como XHTML, XML/XSL, WML y servicios web.

Cada vez es más difícil lidiar con la interfaz de su aplicación, y una de las grandes ventajas de MVC es que le permite manejar muchas vistas diferentes para su aplicación. Ya sea que los datos se almacenen en línea o en una lista de empleados, no hay ningún procesamiento real en la vista; como vista, es solo una forma de generar los datos y permitir que el usuario los manipule.

Modelos

Los modelos representan datos empresariales y reglas de negocio. De los tres componentes de MVC, el modelo es el que realiza la mayor parte del procesamiento. Por ejemplo, puede utilizar objetos componentes como componentes EJB y ColdFusion para trabajar con bases de datos. Los datos devueltos por el modelo son neutrales, es decir, el modelo es independiente del formato de datos, por lo que un modelo puede proporcionar datos para múltiples vistas. La duplicación de código se reduce porque el código aplicado al modelo se escribe solo una vez y puede ser reutilizado por múltiples vistas.

Controlador

El controlador recibe la entrada del usuario y llama modelos y vistas para satisfacer las necesidades del usuario. Entonces, cuando se hace clic en un hipervínculo en una página web y se envía un formulario HTML, el controlador no genera nada y no se realiza ningún procesamiento. Simplemente recibe la solicitud y decide qué artefacto del modelo llamar para manejar la solicitud, y luego decide qué vista usar para mostrar los datos devueltos por el procesamiento del modelo.

Para resumir el proceso MVC, el controlador primero recibe la solicitud del usuario y decide qué modelo llamar para manejar la solicitud, luego el modelo usa lógica de negocios para procesar la solicitud del usuario y devuelve los datos, y finalmente el El controlador utiliza la vista adecuada para formatear los datos de retorno del modelo y presentarlos al usuario a través de la capa de presentación.

Por qué utilizar MVC

La mayoría de las aplicaciones web se crean utilizando un lenguaje procedimental como ASP, PHP o CFML. Son una combinación de código a nivel de datos (como consultas de bases de datos) y código a nivel de presentación (como HTML). Los desarrolladores experimentados separarán las capas de datos y de presentación, pero esto a menudo no es fácil de hacer y requiere una planificación cuidadosa y prueba y error. Si bien la creación de aplicaciones MVC requiere algo de trabajo adicional, los beneficios son innegables.

En primer lugar, se pueden disfrutar múltiples vistas de un modelo, y como comentaba, cada vez hay más formas de acceder a la aplicación. Una forma de resolver este problema es utilizar MVC, ya sea que el usuario necesite una interfaz Flash o una interfaz WAP, un modelo puede manejarlos todos.

Dado que ha separado los datos y las reglas comerciales de la capa de presentación, puede maximizar la reutilización de su código.

Debido a que los datos devueltos por el modelo no están formateados, diferentes interfaces pueden usar el mismo artefacto. Por ejemplo, muchos datos se pueden representar en HTML, pero también en Macromedia Flash y WAP. El modelo también incluye gestión de estado y persistencia de datos, por lo que los carritos de compras basados ​​en sesiones y los procesos de comercio electrónico también pueden ser reutilizados por sitios web Flash o aplicaciones web inalámbricas.

Debido a que el modelo es independiente y está separado del controlador y la vista, es muy fácil cambiar la capa de datos y las reglas comerciales de la aplicación. Si desea migrar una base de datos de MySQL a Oracle, o cambiar una fuente de datos basada en RDBMS a LDAP, simplemente cambie el modelo. Una vez que el modelo se implementa correctamente, las vistas se muestran correctamente independientemente de si los datos provienen de una base de datos o de un servidor LDAP. Dado que los tres componentes de una aplicación que utiliza MVC son antagónicos, cambiar un componente no afecta a los otros dos, por lo que puede crear buenos componentes débilmente acoplados basándose en esta idea de diseño.

Para mí, otro beneficio de los controladores es que puedes usarlos para conectar diferentes modelos y vistas para satisfacer las necesidades del usuario, lo que proporciona una forma poderosa de estructurar los medios de la aplicación. El controlador puede seleccionar el modelo a procesar según las necesidades del usuario y luego seleccionar la vista para mostrar los resultados al usuario.

Desventajas de MVC

La desventaja de MVC es que no es fácil entender completamente MVC porque la definición de MVC no es clara. El uso de MVC requiere una planificación cuidadosa y, debido a su compleja estructura interna, algo de tiempo para pensar.

Tendrá que dedicar mucho tiempo a pensar en cómo aplicar MVC a su aplicación y, dado que el modelo y la vista están estrictamente separados, esto dificultará la depuración de su aplicación. Cada componente debe probarse minuciosamente antes de su uso. Una vez que sus componentes hayan sido probados, podrá reutilizarlos con confianza.

Desde mi experiencia personal, es obvio que usar MVC también significa que necesitas administrar más archivos que antes porque estamos dividiendo la aplicación en tres componentes. A nosotros esto puede parecernos más trabajo, pero recuerda, no es nada comparado con los beneficios que aporta.

MVC no es adecuado para aplicaciones pequeñas o incluso medianas, y dedicar mucho tiempo a aplicar MVC a aplicaciones que no son muy grandes normalmente no compensa.

MVC es una buena forma de crear software

El patrón de diseño MVC es una buena forma de crear software y algunos de los principios que defiende (como separar el contenido y la visualización de cada uno) otros) Podría ser más fácil de entender. Sin embargo, si desea aislar los artefactos del modelo, la vista y el controlador, es posible que deba repensar su aplicación, especialmente su arquitectura. Si está dispuesto a adoptar MVC y puede manejar el trabajo adicional y la complejidad que conlleva, MVC llevará su software al siguiente nivel en términos de solidez, reutilización de código y estructura.

¿Cuál es el motivo de la aparición de jsp y java? Es muy difícil promocionar Java entre los desarrolladores. En primer lugar, Java carece de soporte generalizado por parte de los sistemas convencionales y existe una falta de soporte directo. Aplicaciones referenciadas en todas las plataformas y tecnologías. En ese momento, Java se movía agresivamente, dando pasos firmes en todas las capas de aplicaciones y en áreas en las que era bueno y en las que no. Lo que más entusiasma a los técnicos web es la aparición del servlet java y la madurez gradual de jsp. Este paso a paso ha llevado a java al escenario de la investigación y el desarrollo de tecnología web. Java utiliza su tecnología multiplataforma para permitir que las aplicaciones Java se implementen rápidamente en varias plataformas y realmente se puedan escribir y ejecutar en cualquier lugar. Hizo un buen uso de esta ventaja, combinando inteligentemente la versatilidad de Java, la facilidad de uso de JSP y la velocidad de servlet. Utilizó sus habilidades de implementación de plataforma para proteger eficazmente el problema de velocidad de Java, lo que hizo que Java se desarrollara rápidamente en el desarrollo web. difundido entre los miembros de la comunidad. Con potentes backends como java beans, ejb, servidores de aplicaciones java, servidores de transacciones java, etc., están avanzando hacia aplicaciones verdaderamente maduras.

¿Qué tipo de lenguaje es jsp? De hecho, jsp es java, pero es un lenguaje java especial con un motor especial agregado. Este motor combina aplicaciones /intranet de alta confiabilidad, internet/intranet y sistemas de aplicaciones cliente/servidor

Métodos de aprendizaje: java. archivos doc y una serie de documentos en el sitio java, recursos de código original en Internet (lo siento a todos, realmente no puedo hacer mejores sugerencias, y luego depende de la capacidad y la suerte de todos, así como de los internautas de inetnet ayuda)

Herramientas de I+D recomendadas: jbuilder/visual age para java (nunca he usado esto, pero alguien lo recomienda encarecidamente)/sun forte para javakawa

Entorno de I+D recomendado: windows nt /sistema de I+D de Windows 2000 jbuilder 3.5 (puede convertirse en un servidor web)

Herramienta de I+D recomendada: juilder 3.5 (puede convertirse en un servidor web)

Entorno de I+D recomendado: windows nt/ sistema de I+D de windows 2000 jbuilder 3.5 (puede convertirse en un servidor web y ni siquiera requiere otras herramientas) tomcat 3.1jdk 1.3 (no se puede instalar) acceso 2000/p ii 266/128m ram/9g hd

Entorno de aplicación recomendado (mínimo): redhat linux 6.2/mysql 3.22/apache 1.3.12/tomcat 3.1/jdk 1.3beta/piii 500/512m ram/9g hd

Entorno de aplicación recomendado (mejor): Solaris 8 / sybase 11/iplanet Enterprise Web server 4.1/jdk 1.3beta/sun netra t1/1g ram/18g hd

JavaBean es un componente reutilizable escrito en el lenguaje JAVA. Los JavaBeans exponen campos internos llamados propiedades al proporcionar métodos públicos que se ajustan a patrones de diseño consistentes. Se sabe que los nombres de propiedades se ajustan a este patrón y otras clases de Java pueden descubrir y manipular estas propiedades de JavaBean a través del mecanismo de introspección.

Los usuarios pueden utilizar JavaBeans para empaquetar funciones, procesos, valores, acceso a bases de datos y cualquier otro objeto que pueda crearse en código Java, y otros desarrolladores pueden utilizar páginas JSP internas, servlets, otros JavaBeans y subprogramas. a o la aplicación utiliza estos objetos. Los usuarios pueden pensar que JavaBeans brinda la capacidad de copiar y pegar desde cualquier lugar sin tener que preocuparse por ningún cambio.

JavaBeans es una interfaz de programación orientada a objetos de Sun Microsystems que le permite crear aplicaciones reutilizables o bloques de programas (llamados componentes) que se pueden usar en cualquier plataforma de sistema operativo importante en una red configurada. Al igual que los subprogramas de Java, los componentes JavaBeans (o "Beans") brindan a las páginas de la World Wide Web la capacidad de interactuar entre sí, por ejemplo, para calcular tasas de interés o cambiar el contenido de la página según las características del usuario o del navegador.

Desde la perspectiva del usuario, un componente puede ser un botón con el que interactúas o puede ser un pequeño programa computacional que se inicia cuando presionas el botón. Desde la perspectiva del desarrollador, el componente del botón y el componente de la calculadora se crean por separado y se pueden usar juntos o en diferentes combinaciones con diferentes componentes en diferentes aplicaciones o situaciones.

Cuando se utiliza un componente o bean, otros beans pueden ver las propiedades del bean (por ejemplo, el color de fondo de la ventana), y los beans que no se han "encontrado" entre sí antes pueden aprender dinámicamente sobre las propiedades de los demás. propiedades e interactuar.

Los beans se desarrollan utilizando el kit de desarrollo Bean (BDK) de Sun y pueden ejecutarse en muchos entornos de aplicaciones (llamados contenedores) en cualquier plataforma de sistema operativo importante, incluidos navegadores, procesadores de texto y algunas otras aplicaciones.

Para crear un componente utilizando JavaBeans, debe escribir un programa en el lenguaje de programación Java de Sun e incluir declaraciones de JavaBeans para describir la funcionalidad del componente (como la funcionalidad de la interfaz de usuario) y desencadenar la interacción del bean con otros beans en el sistema. mismo contenedor o en la red eventos de comunicación.

Los beans también tienen persistencia, un mecanismo para guardar el estado de los componentes en una ubicación segura. Por ejemplo, mediante la persistencia, un componente (Bean) puede "recordar" datos ingresados ​​por un usuario específico en sesiones de usuario anteriores.

Los JavaBeans permiten que las aplicaciones Java compongan documentos como interfaces OpenDoc y ActiveX.

I. Historia de JavaBeans

Originalmente, JavaBeans estaba destinado a ser un estándar para empaquetar código de software reutilizable. En particular, se utiliza para ayudar a los fabricantes a desarrollar componentes de software Java para su uso en entornos de desarrollo integrados (IDE). Por ejemplo, estos componentes incluyen controles de cuadrícula que permiten a los usuarios arrastrar y soltar widgets en el entorno de desarrollo. Desde entonces, los JavaBeans se han ampliado como componentes estándar para aplicaciones de red Java, y el marco de componentes de JavaBean se ha ampliado como Enterprise Beans (EJB).

Dos: la diferencia entre JavaBeans y Enterprise Beans

Los JavaBeans y los server beans (a menudo llamados Enterprise JavaBeans (EJB)) tienen algunas similitudes básicas. Son objetos o componentes creados con un conjunto de propiedades para realizar tareas específicas. También pueden extraer funciones adicionales del contenedor que reside actualmente en el servidor. Esto permite que el bean se comporte de manera diferente según la tarea y el entorno específicos.

Los Enterprise Beans se diferencian de los JavaBeans, que se desarrollan utilizando el paquete java.beans, que forma parte de Java 2 Standard Edition. Por lo tanto, los Enterprise Beans son componentes de procesos cruzados. Los JavaBeans se utilizan normalmente como widgets GUI, mientras que los Enterprise Beans se utilizan como objetos comerciales distribuidos.

Tres: La evolución de JavaBeans

Originalmente, el propósito de JavaBeans era convertirse en un estándar para empaquetar código de software reutilizable. En particular, se utiliza para ayudar a los fabricantes a desarrollar componentes de software Java para su uso en entornos de desarrollo integrados (IDE). Estos componentes incluyen elementos como controles de cuadrícula y los usuarios pueden arrastrar y soltar widgets en el entorno de desarrollo. Sobre esta base, los JavaBeans se pueden ampliar como componentes estándar de las aplicaciones de red Java, y el marco del componente JavaBean se ha ampliado a los Enterprise Beans (EJB).

IV.Requisitos para JavaBean

avaBean es una clase de Java que pertenece a ciertas pautas específicas de conocimiento de la traducción y amplía la adaptabilidad y el alcance, permitiendo a los usuarios acceder a propiedades y métodos internos. A través de estos, las clases JavaBean se pueden utilizar de las siguientes maneras:

1. En un entorno de desarrollo integrado, la funcionalidad JavaBean permite a los desarrolladores de aplicaciones explorar métodos dentro de ella, incluso si el JavaBean se ha compilado y se ha conservado la fuente original. El archivo no se puede utilizar.

2. En el estilo distribuido de invocación de método remoto (RMI), esta característica no suena interesante, pero con la incorporación de la versión empresarial de JavaBean, esta situación cambiará en el futuro.

3. Para guardar los valores y estados de las propiedades de JavaBean en el disco.

Esto es un poco simplista, si quieres saber más, consulta alguna información.

5. Consideraciones de diseño de JavaBean

En la práctica, es muy útil ampliar el diseño de JavaBean antes de realizar rendimiento o procesamiento sobre el objeto. Generalmente se supone que los desarrolladores web cumplirán funcionalmente los requisitos para utilizar JavaBeans si se proporciona la información relevante. Por ejemplo, cuando HTML muestra datos confidenciales, los usuarios pueden bloquear entradas como contraseñas y números de teléfono.

Los JavaBeans son confiables cuando se planifican y diseñan cuidadosamente.

Nulo en Java es diferente de nulo en SQL

Mire este programa de prueba:

clase pública NullTest

{

public static void main(String[] args)

{

int I = 0;

// int I = null; // No es una inicialización válida

String str = null;

String strZeroOutValue = " ";

StringBuffer sb = new StringBuffer("Prueba nula :Cadena inicializada como null = ");

sb.append( str);

sb.append("\n Cadena que representa un valor de salida cero:");

sb.append(strZeroOutValue);

System.out.println(sb.toString());

}

}

Este programa producirá los siguientes resultados:

Prueba nula: Cadena inicializada a nulo = nulo

La cadena representa un valor puesto a cero:

In In JavaBean, declaramos la variable I como int, luego tenemos que lidiar con el valor relacionado con la variable, porque I no tiene valor por defecto y el tipo int no se puede inicializar a nulo, si el valor int no se inicializa explícitamente, el compilador generará un error.

La ejecución del programa NullTest verificará que la cadena vacía en el texto pueda reemplazar el valor nulo utilizado para mostrar inserciones y actualizaciones de SQL. Si necesitamos eliminar alguna información, al eliminar texto en un área del formulario, debemos enviar una cadena de longitud cero a la base de datos.

Aunque la mayoría de las bases de datos tratan las cadenas vacías como valores nulos, si la base de datos que estamos usando no admite el manejo de cadenas vacías, tenemos que escribir código Java adicional para crear nuestras propias declaraciones de inserción SQL.

Ejemplo:

if(test.length==0)

{

sb.append("null");

}

else

{

sb.append(prueba);

}

Alcance de JavaBean:

Alcance de JavaBean. El alcance de un JavaBean se indica en la etiqueta

de la derecha. Se generará una referencia de acceso directo a JavaBean.

Descripción: el motor del servidor jsp eliminará

los siguientes cuatro ámbitos: página, solicitud, conversación y aplicación.

Alcance de la sesión:

Alcance de la sesión Los JavaBeans se utilizan principalmente para múltiples páginas y períodos de tiempo: por ejemplo, para completar información del usuario. Agregue información y reciba comentarios, guarde el historial de páginas recientes de los usuarios. Los JavaBeans con ámbito de conversación retienen cierta información relacionada con el ID de conversación del usuario.

Esta información proviene de una cookie de sesión temporal que el cliente y el servidor eliminan cuando el usuario cierra el navegador.

Ámbito de página/solicitud:

Los JavaBeans de alcance de página y solicitud son a veces similares a los beans de formulario porque los usan para manejar formularios. Los formularios tardan mucho en procesar la entrada del usuario y normalmente se utilizan cuando la página acepta solicitudes HTTP/POST o GET. Además, los beanies con alcance de página y solicitud se pueden utilizar para reducir la carga en servidores de sitios web grandes, donde el procesamiento diferido puede consumir recursos significativos si se utilizan beanies conversacionales.

Aplicación:

El alcance de la aplicación generalmente se aplica a los componentes del servidor, como la agrupación de conexiones JDBC, el monitoreo de aplicaciones, el conteo de congestión y otras clases que involucran el comportamiento del usuario.

Restricciones en la generación de HTML en Bean:

En teoría, JavaBean no generará ningún HTML, porque este es el trabajo de la capa jsp; sin embargo, para las necesidades de mensajes dinámicos, Algunos formatos preparados previamente son muy útiles. El HTML generado será devuelto por el método JavaBean de la etiqueta.

Aquí hay algunas cosas muy importantes a tener en cuenta:

1. No intente poner ningún tamaño de fuente en el HTML devuelto por JavaBean.

No todos los navegadores son iguales. Muchos navegadores no pueden manejar el tamaño de fuente completo.

2. No intente colocar ningún script o DHTML en el HTML devuelto por JavaBean.

Enviar script o DHTML directamente a la página equivale a la autodestrucción, ya que algunas versiones del navegador fallarán al manejar scripts incorrectos (poco común, pero cierto). Los usuarios se enfrentarán a una pesadilla de depuración si sus JavaBeans impulsan dinámicamente un lenguaje HTML complejo en tiempo de ejecución. Además, el HTML complejo limitará la vida útil y la flexibilidad de los JavaBeans.

3. No proporciones ninguna opción.

Si los usuarios ven la página en un sistema diferente, proporcione un método alternativo.

6. La misión de JavaBean

La misión de JavaBean es: "escribir una vez, ejecutar en cualquier lugar, reutilizar en cualquier lugar", es decir, "escribir una vez, ejecutar en cualquier lugar, reutilizar en cualquier lugar" . "Escribir una vez, ejecutar en cualquier lugar, reutilizar en cualquier lugar" significa "escribir una vez, ejecutar en cualquier lugar, reutilizar en cualquier lugar". Esta es en realidad una solución simple, compacta y brillante para los problemas cada vez más complejos que afectan a la industria del software.

1 Un componente de software completo solo debe escribirse una vez, sin necesidad de reescribir el código para mejorar o mejorar la funcionalidad. Por lo tanto, JavaBeans debería proporcionar un método práctico para mejorar la utilización del código original. Además de ser importante en términos de ahorro de recursos de desarrollo, escribir componentes JavaBean de una vez por todas también es muy útil en términos de control de versiones. De esta manera, puede mejorar continuamente el componente sin tener que comenzar desde cero. sin cometer los mismos errores

2. Los componentes JavaBean se pueden ejecutar en cualquier lugar, lo que significa que el componente se puede utilizar en cualquier entorno y plataforma para cumplir con diversos requisitos de interacción. Dado que JavaBean se basa en Java, puede hacerlo. ser compatible fácilmente con plataformas interactivas. La capacidad de un componente JavaBean para ejecutarse en cualquier lugar no solo significa que el componente puede ejecutarse en diferentes plataformas operativas, sino que también significa que el componente puede usarse en entornos de red distribuidos. 3. Los componentes JavaBean se pueden reutilizar en cualquier lugar, lo que significa que se pueden reutilizar en una variedad de escenarios, incluidas aplicaciones, otros componentes, documentos, sitios web y herramientas de construcción de aplicaciones. Esta es quizás la tarea más importante del componente JavaBean, porque. es una de las tareas características que separa el componente JavaBean del programa Java. Las dos primeras tareas del programa Java son componentes JavaBean, pero la tercera tarea es exclusiva del componente JavaBean.

Estas tres cosas son demasiadas y han excedido la cantidad de palabras en el cuadro de texto. Puede consultar la información relevante para obtener más detalles.