Foro Oficial - Framework's Persistencia

colosal

Lanero Regular
5 Ene 2007
6
Saludos,

En estos dias he estado leyendo sobre los framework's de persistencia. He encontrado que existen varios, y muy buenos, segun he leido Hibernate es el mejor.

Una cosa que no he podido entender es, si la configuracion de la sesion (nombre de usuario, clave, etc) se almacena en una archivo .xml que esta en el disco duro, para que hibernate lo lea y cree la conexion. Entonces en todo esto veo un grave problema pues la contraseña debe ser guardada en el disco y es suceptible de ser accedida por intrusos.

Pero como este problema es algo demasiado evidente, entonces creo que yo desconosco la forma de como evitar esto, o depronto tengo mal el concepto, asi que les agradeceria me dieran una pequeña aclaracion al respecto.

Gracias de antemano.
 
El siguiente es un ejemplo del archivo de configuracion de Hibernate:

PHP:
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>

    <session-factory>

        <!-- Configuracion de Conexion a la BD -->
        <property name="connection.driver_class">org.hsqldb.jdbcDriver</property>
        <property name="connection.url">jdbc:hsqldb:hsql://localhost</property>
        <property name="connection.username">colosal</property>

        <!-- AQUI SE DEBE ESPECIFICAR LA CONTRASEÑA-->
        <property name="connection.password">mi_clave</property>

        <!-- SQL dialect -->
        <property name="dialect">org.hibernate.dialect.HSQLDialect</property>

        <!-- Enable Hibernate's automatic session context management -->
        <property name="current_session_context_class">thread</property>

        <mapping resource="events/Event.hbm.xml"/>

    </session-factory>

</hibernate-configuration>
 
Hola,

Quisiera que dieran sus opiniones sobre cual framework de persistencia compatible con java es el mejor, es decir, cual ofrece mas ventajas, rendimiento, herramientas?.

¿Recomiendan usar Anotaciones (Annotations) o Archivos de mapeo XML (mapping files) ?

Yo soy novato en este cuento, asi que espero sus sugerencias.

-
 
colosal dijo:
Saludos,

En estos dias he estado leyendo sobre los framework's de persistencia. He encontrado que existen varios, y muy buenos, segun he leido Hibernate es el mejor.

Una cosa que no he podido entender es, si la configuracion de la sesion (nombre de usuario, clave, etc) se almacena en una archivo .xml que esta en el disco duro, para que hibernate lo lea y cree la conexion. Entonces en todo esto veo un grave problema pues la contraseña debe ser guardada en el disco y es suceptible de ser accedida por intrusos.

Pero como este problema es algo demasiado evidente, entonces creo que yo desconosco la forma de como evitar esto, o depronto tengo mal el concepto, asi que les agradeceria me dieran una pequeña aclaracion al respecto.

Gracias de antemano.

Buena pregunta:

Si la aplicación es un Standalone, nada que hacer, pueden lograr obtener las credenciales de acceso, ya es un asunto que administrar y controlar quienes emplean el PC para evitar percances.

Sin embargo hay buenas prácticas a tener en cuenta, ejemplo: crear perfiles en la base de datos, uno de esos perfiles es el que la aplicación emplea para autenticarse, sólo tiene acceso a la información permitida, más no a sentencias que alteren la estructura, éstos últimos permisos solo los tiene el perfil DBA.

Si es una App Web o que funciona desde una maquina remota de acceso restringido, no tiene problemas porque solo los administradores del sistema tienen acceso al servidor, los clientes no tendrán forma de obtener las credenciales de los archivos de configuración HIbernate.
 
  • Me gusta
Reacciones: 2 personas
roger padilla dijo:
Hola,

Quisiera que dieran sus opiniones sobre cual framework de persistencia compatible con java es el mejor, es decir, cual ofrece mas ventajas, rendimiento, herramientas?.

-

Toplink de Oracle es una excelente alternativa, está liberado para uso libre con SUNAS 9 (Glassfish), esta última versión aparece como una implementación de Entities EJB3.

roger padilla dijo:
¿Recomiendan usar Anotaciones (Annotations) o Archivos de mapeo XML (mapping files) ?
-

Anotaciones. Es más simple y por lo tanto se vuelve más ágil para implementar. Además es más natural con la codificación de los Beans.
 
He encontrado una excelente comparacion sobre diferentes frameworks de persistencia, en la comparacion se tienen en cuenta aspectos como: rendimiento en las CRUDs, curva de aprendizaje, cantidad de codigo que debemos escribir, librerias adicionales, y muchas mas. Recomendado!!!

Los contrincantes son: Hibernate 3.0, JPOX JDO 1.2, Castor JDO 1.05, iBatis 2.2, y JDBC (para comparar).

Este analisis nos puede ayudar muchisimo a la hora de elegir el framework más adecuado para lo que necesitemos en cada caso

http://www.devx.com/Java/Article/33768/1954?pf=true

-
 
mi ignorancia es grande yo lo se, pero toi trabajando en asp.net y me hablan de frameworks tambien, que es exactamente un framework? un conjunto de clases ke hacen algo en particular para añadir a tu programa? ooo estoi miando fuera del tiesto
 
Búsqueda

Veamos si puedo ser claro
He estado leyendo sobre los frameworks. He trabajado un tiempo sobre Struts.
Pero ya me di cuenta de que hay que evolucionar.
Me gustó Spring+iBatis+Struts, porque Hibernate exige muchos recursos del servidor.
Por lo que he visto, me falta mucho por investigar y aprender.
La preguntas en todo caso es:

¿Debo seguir investigando sobre la integración de Spring+iBatis+Struts con el propósito de desarrollar una aplicación de alta demanda?

¿Podrían darme tips y ligas para encontrar información?

Agradezco todo comentario y ayuda
 
Veamos si puedo ser claro
He estado leyendo sobre los frameworks. He trabajado un tiempo sobre Struts.
Pero ya me di cuenta de que hay que evolucionar.
Me gustó Spring+iBatis+Struts, porque Hibernate exige muchos recursos del servidor.
Por lo que he visto, me falta mucho por investigar y aprender.
La preguntas en todo caso es:

¿Debo seguir investigando sobre la integración de Spring+iBatis+Struts con el propósito de desarrollar una aplicación de alta demanda?

¿Podrían darme tips y ligas para encontrar información?

Agradezco todo comentario y ayuda

Bueno, asumiendo que están hablando de Java EE por los elementos mencionados, sabrás que hay muchas alternativas para crear soluciones de alta demanda, Spring es una buena alternativa y ya que te interesante en ello y además has adquirido algún conocimiento, puedes continuar por ese camino y podrás crear aplicaciones de alta demanda. La situación más allá de la plataforma elegida, también dependerá mucho de la arquitectura que implementes y tomar las decisiones correctas sólo te lo dará la experiencia y una buena preparación en el área correspondiente. Por otro lado, hablando específicamente de la persistencia (que es uno de los elementos importantes del aplicativo de alta demanda a tener en cuenta, porque hay muchos más) debes ser cuidadoso en qué elementos vas a solucionar con un ORM (Object-Relational Mapping) y cuales seguramente requerirán un acceso más directo y de bajo nivel, digamos un JDBC o Store procedure de base de datos.

Con respecto a la información, más que navegación por Internet buscando blogs y foros, te recomendaría mejor leer libros a fines que te darán bases más sólidas, y si estás implementando una aplicación tan demandante, debe tener cierto grado de importancia que invita a tomar los menores riesgos posibles.
 
Bueno, asumiendo que están hablando de Java EE por los elementos mencionados, sabrás que hay muchas alternativas para crear soluciones de alta demanda, Spring es una buena alternativa y ya que te interesante en ello y además has adquirido algún conocimiento, puedes continuar por ese camino y podrás crear aplicaciones de alta demanda. La situación más allá de la plataforma elegida, también dependerá mucho de la arquitectura que implementes y tomar las decisiones correctas sólo te lo dará la experiencia y una buena preparación en el área correspondiente. Por otro lado, hablando específicamente de la persistencia (que es uno de los elementos importantes del aplicativo de alta demanda a tener en cuenta, porque hay muchos más) debes ser cuidadoso en qué elementos vas a solucionar con un ORM (Object-Relational Mapping) y cuales seguramente requerirán un acceso más directo y de bajo nivel, digamos un JDBC o Store procedure de base de datos.

Con respecto a la información, más que navegación por Internet buscando blogs y foros, te recomendaría mejor leer libros a fines que te darán bases más sólidas, y si estás implementando una aplicación tan demandante, debe tener cierto grado de importancia que invita a tomar los menores riesgos posibles.


Gracias
Sería mucho abusar si me recomiendas algunos Libros?
 
Recomendaciones

Gracias
Sería mucho abusar si me recomiendas algunos Libros?

Hace algún tiempo leí los siguientes:

- Pro Java™ EE Spring Patterns: Best Practices and Design Strategies Implementing Java EE Patterns with the Spring Framework. Ed. Apress. Página oficial http://www.apress.com/book/view/1430210095.

- Spring in Action. Ed. Manning Publications Co.. Página oficial http://www.manning.com/walls4/.

El primero es arquitecturalmente interesante, por lo que trata de patrones y estrategias de diseño, el segundo es más orientado a implementación; sin embargo notarás que son libros de antes de 2009, así que no estaría de más echar un vistazo a ver qué salió en el 2009.
 
Hace algún tiempo leí los siguientes:

- Pro Java™ EE Spring Patterns: Best Practices and Design Strategies Implementing Java EE Patterns with the Spring Framework. Ed. Apress. Página oficial http://www.apress.com/book/view/1430210095.

- Spring in Action. Ed. Manning Publications Co.. Página oficial http://www.manning.com/walls4/.

El primero es arquitecturalmente interesante, por lo que trata de patrones y estrategias de diseño, el segundo es más orientado a implementación; sin embargo notarás que son libros de antes de 2009, así que no estaría de más echar un vistazo a ver qué salió en el 2009.


Gracias. Revisaré lo que me indicas
 

Los últimos temas