简要介绍Struts最早是作为ApacheJakarta项目的组成部分,项目的创立者希望通过对该项目的研究,改进和提高JavaServerPages、Servlet、标签库以及面向对象的技术水准。Structs框架的核心是一个弹性的控制层,Struts的目的是为了减少在运用MVC设计模型来开发Web应用的时间。MVC:它除了能在C层发挥巨大的作用外,在其它层也提供了相应的支持。
映射文件详解目标学习Hibernate的配置文件(hibernate.cfg.xml)学习Hibernate的映射声明(*.hbm.xml)Hibernate配置文件Hibernate配置文件主要用于配置数据库连接和Hibernate运行时所需的各种属性每个Hibernate配置文件对应一个Configuration对象。
简述Hibernate的作用:ORM:Object Relational Mapping,对象关系映射。将java程序中的对象自动持久化到关系数据库中。而Hibernate的作用好比就是在java对象与关系数据库之间的一座桥梁,它主要负责两者之间的映射。在Hibernate内部封装了JDBC技术(但只是一个轻量级的封装,因而可以让程序设计人员更方便的以面向对象的思想操纵数据库),并向外提供API接口。
Hibernate目前总共分为三大类查询:cretiria,hql,本地sql。第一:关于cretiria的查询 具有一个直观的、可扩展的条件查询API是Hibernate的特色。15.1.创建一个Criteria实例org.hibernate.Criteria接口表示特定持久类的一个查询。Session是Criteria实例的工厂。
第一章ORM概述目标:理解ORM熟悉Hibernate的作用软件分层的优点伸缩性可维护性可扩展性可重用性可管理性Hibernate是一个优秀的持久化框架什么是持久化?
基于ASM的开发很复杂,需要了解JVM的底层编码。CGLIB以ASM为基础, 对ASM的功能进行了扩展和封装,提供了更友好的API,部分通用的模版和高级的功能实现。CGLIB的具体功能如下:(1)扩展ASM的Visitor模式。在ASM的Visitor模式的基础上利用ClassEmitter和CodeEmitter将Visitor事件封装为更符合Java开发者习惯的事件。(2)实现了Java的反射功能。CGLIB不仅可以替代java的反射功能,而且还提供了更强大的功能,例如CGLIB的Enhancer既可以强化子类,也可以扩充接口,与各种Callback配合可以实现许多功能。(3)Transform编程接口。利用Transform可以很容易的实现各种面向实际需要的Transformer,来执行类转化的Transform过程,为Hibernate提供了底层框架的支持。
HQL查询HQL(HibernateQueryLanguage):具有与sql语言类似的语法规范,只不过sql是针对于数据表字段进行查询,而HQL是针对持久化对象,它用来取得对象.HQL是完全面向对象的,具备继承,多态和关联等特性.除了JAVA类和属性外HQL对大小写不敏感HQL查询依赖于Query类,每个Query实例对应一个查询对象。
在最近发布的几个Hibernate版本中,出现了一种基于Java5注释的更为巧妙的新方法。借助新的HibernateAnnotation库,即可一次性地分配所有旧映射文件——一切都会按照您的想法来定义——注释直接嵌入到您的Java类中,并提供一种强大及灵活的方法来声明持久性映射。籍由自动代码完成和语法突出显示功能,最近发布的JavaIDE也为其提供了有力的支持。
在本文中,用一个真实世界的例子向您介绍两个最激动人心的企业新技术。Hibernate的是一个物件关系映射工具,而春天是一个AOP的框架和国际奥委会的容器。介绍了如何结合这两者,为企业应用程式构建一个事务持久层。在本文中,通过具体介绍使用休眠和春季在企业应用程式中构建一个事务持久层,您会认识到这些技术。
ORM(Object Relational Mapping)---是一种为了解决面向对象与关系型数据库存在的互不匹配的现象的技术。简单说:ORM是通过使用描述对象和数据库之间映射的元数据,将Java程序中的对象自动持久化到关系数据中。本质上就是将数据从一种形式转换到另外一种形式。
配置flex+bleazeds+spring+hibernate。
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了轻量级的对象封装,提供HQL查询语言,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。使用Hibernate,必须为配置映射文件ClassMapping File和Configuration File,现在市场上提供了诸多Hibernate代码生成工具,比如:XDoclet,以及Hibernate官方自带的sechmaExport工具。然而它们都有如下的缺点:仅提供一些基本的输入模版,用户仍需要时间进行配置和修改;没有提供自动的持久类以及InvokeBean的代码生成;不支持图形界面;不支持对HibernateTestCase的代码生成。
正如其他的ORM工具,Hibernate同样需要元数据来控制在不同数据表达形式之间的转化. 在Hibernate 2.x里,多数情况下表示映射关系的元数据保存在XML文本文件中. 还有一种方式就是Xdoclet,它可以在编译时利用Javadoc中的源码注释信息来进行预处理. 现在新的JDK标准(JDK1.5以上)也支持类似的注解功能,但相比之下很多工具对此提供了更强大更好用的支持. 以IntelliJ IDEA和Eclipse为例,这些IDE工具为JDK 5.0注解功能提供了自动完成和语法高亮功能. 注解被直接编译到字节码里,并 在运行时(对于Hibernate来讲就是启动的时候)通过反射读取这些注解, 因此外部XML文件就不再需要了。
Hibernate使用DatachedCriteria分页关联查询以及去除重复,近来项目中用到DatachedCriteria做分页,涉及到关联查询产生的重复记录问题。