quartz 框架
什么是 Quartz 作业调度库?
Quartz是一个功能丰富的开源作业调度库,几乎可以集成到任何Java应用程序中——从最小的独立应用程序到最大的电子商务系统。Quartz可以用于创建简单或复杂的调度,以执行数十个、数百个甚至数万个作业;作业的任务被定义为标准的Java组件,这些组件几乎可以执行您为它们编写的任何任务。Quartz Scheduler包含许多企业级特性,比如对JTA事务和集群的支持。
什么是 Quartz 作业调度库?
Quartz是一个功能丰富的开源作业调度库,几乎可以集成到任何Java应用程序中——从最小的独立应用程序到最大的电子商务系统。Quartz可以用于创建简单或复杂的调度,以执行数十个、数百个甚至数万个作业;作业的任务被定义为标准的Java组件,这些组件几乎可以执行您为它们编写的任何任务。Quartz Scheduler包含许多企业级特性,比如对JTA事务和集群的支持。
JDK >= 1.8
MySQL >= 5.7
Maven >= 3.0
Struts2 是 Struts 的下一代产品。它在 Struts 和 WebWork 的技术基础上进行了合并,产生了全新的 Struts2 框架。Struts2 修复了大量错误和漏洞,并且体系结构和第一代 Struts 存在巨大差别(因为其实 Struts2 主要是由 WebWork 衍生而来),我们接下来的 Struts 开发课程也以 Struts2 为基础。
Struts2 的体系结构大致如下图所示:
上图是 Struts2 的体系结构。一个请求在 Struts2 框架中的处理大概会经过以下几个步骤:
Hibernate 是一个开源框架,与 Struts 这种 MVC(Model-View-Controller) 框架不同的是,Hibernate 是一种 ORM(Object/Relational Mapping) 框架。
ORM 意为对象关系映射,因此 Hibernate 会在 Java 对象和关系数据库之间建立某种映射,以达到存取 Java 对象的目的,是实现持久化存储(将内存中的数据存储在关系型的数据库、磁盘文件、XML 数据文件中等等)的一种解决方案。
Hibernate 不仅管理 Java 类到数据库表的映射(包括从 Java 数据类型到 SQL 数据类型的映射),还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用 SQL 和 JDBC 处理数据的时间。这正是它的设计目标,即将软件开发人员从大量相同的数据持久层相关编程工作中解放出来。
4.1.1 SessionFactory 对象
SessionFactory 接口负责初始化 Hibernate。它充当数据存储源的代理,并负责创建 Session 对象。这里用到了工厂模式。需要注意的是 SessionFactory 并不是轻量级的,因为一般情况下,一个项目通常只需要一个 SessionFactory 就够,当需要操作多个数据库时,可以为每个数据库指定一个 SessionFactory。