标签:isp 而且 sql 语句 framework 内容 自动化 半成品 编码 低耦合
使用框架构建项目,当确定使用哪个技术框架后,就已经有了一个 “半成品”,然后在这个半成品上填上内容,完成任务需求。
框架技术的优点:
(1)不用再考虑公共问题,框架已经帮我们做好了。
(2)可以专心于业务逻辑,保证核心业务逻辑的开发质量。
(3)结构统一,便于学习和维护。
(4)框架中集成了前人的经验,可以帮助新手写出稳定、性能优良而且结构优美的高质量程序。
框架(Framework)是一个提供了可重用的公共结构的半成品。它为我们构建新的应用程序提供了极大的便利。一方面提供了可以拿来就用的工具,更重要的是,提供了可重用的设计。
框架这个词最早出现在建筑领域,指的是在建造房屋前期构建的建筑骨架,对应用程序来说,“框架” 就是应用程序的骨架,开发者可以在这个骨架上加上自己的东西,搭建符合自己需求的应用系统。框架中凝结着前人的经验和智慧,使用框架,我们就站在了巨人的肩上。
Rickard Oberg(WebWork 的作者和 JBoss 的创始人之一) 说过:框架的强大之处不是源自它能让你做什么, 而是它不能让你做什么。 Rickard 强调了框架另一个层面的含义:框架使混乱的东西变结构化。莎士比亚说:一千个人眼中有一千个哈姆雷特。同样,如果没有框架的话,一千个人将写出一千种 Servlet+JavaBean+JSP 的代码,而框架保证了程序结构风格的统一。从企业的角度 说,降低了培训成本和软件的维护成本。框架在结构统一和创造力之间维持着一个合适的平衡。
Struts 2 以 WebWork 优秀的设计思想为核心,吸收了 Struts 框架的部分优点,提供了一个更加整洁的基于 MVC 设计模式实现的 Web 应用程序框架。它引入了几个新的框架特性:从逻辑中分离出横切关注点的拦截器,减少或者消除配置文件,贯穿整个框架的强大表达式语言,支持可变更和可重用的基于 MVC 模式的标签 API 等。Struts 2 充分利用了从其他 MVC 框架学到的经验和教训,使整个框架更加清晰、更加灵活。
Hibernate 是一个优秀的持久化框架,负责简化将对象数据保存到数据库中,或从数据库中读取数据并封装到对象的工作。 Hibernate 通过简单配置和编码即可替代 JDBC 烦琐的程序代码。 Hibernate 已经成为当前主流的数据库持久化框架,被广泛应用。
Spring 也是一个开源框架。它的目标是使现有的 JavaEE 技术更容易使用和促进良好的编程习惯。 它是一个轻量级的框架,渗透了 JavaEE 技术的方方面面。它主要作为依赖注入容器和 AOP 实现存在,还提供了声明式事务、对 DAO 层的支持等简化开发的功能。 Spring 还可以很方便地与 SpringMVC、Struts 2 、 MyBatis、 Hibernate 等框架集成,其中大名鼎鼎的 SSM 集成框架指的就是基于 SpringMVC + Spring + MyBatis 的技术框架,使用这个集成框架将使我们的应用程序更加健壮、稳固、轻巧和伏雅,这也是当前最流行的 Java 技术框架。
SpringMVC 是 Spring 框架提供的构建 Web 应用程序的全功能 MVC 模块,属于 SpringFramework 的后续产品,已经融合在 Spring Web Flow 里面,是结构最清晰的 MVC Model2 的实现。并且拥有高度的可配置性,支持多种视图技术。还可以进行定制化开发,相当灵活。此外,,Spring 整合 SpringMVC 可以说是无缝集成,是一个高性能的架构模式。现在越来越广泛地应用于互联网应用的开发中。
MyBatis 是一个优秀的数据持久层框架,在实体类和 SQL 语句之间建立映射关系,是一种半自动化的 ORM 实现。其封装性要低于 Hibernate,性能优秀,并且小巧、简单易学,现在应用也越来越广泛。
数据持久化是将内存中的数据模型转换为存储模型,以及将存储模型转换为内存中的数据模型的统称。例如,对数据表的增删改查、文件的存储、数据的读取等都是数据持久化操作。数据模型可以是任何数据结构或对象模型,存储模型可以是关系模型、XML、二进制流等。
Mybatis 框架简介
MyBatis 属于 DAO 层框架,使用 Mybatis 可以方便地完成持久化(增删改查)操作。
MyBatis 是一个开源的数据持久层框架。它内部封装了通过 JDBC 访问数据库的操作,支持普通的 SQL 查询、存储过程和高级映射,几乎消除了所有的 JDBC 代码和参数的手工设置以及结果集的检索。 MyBatis 作为持久层框架,其主要思想是将程序中的大量 SQL 语句剥离出来,配置在配置文件中,实现 SQL 的灵活配置。这样做的好处是将 SQL 与程序代码分离,可以在不修改程序代码的情况下,直接在配置文件中修改SQL。
MyBatis 的前身是 iBatis,本是 Apache 的一个开源项目,2010 年这个项目由 Apache Software Foundation 迁移到了 Google Code,并改名为 MyBatis。2013 年迁移到 Github。
MyBatis 官网:http://mybatis.org
Github:https://github.com/mybatis
什么是 ORM
ORM (Object/Relational Mapping) 即对象/关系映射,是一种数据持久化技术。它在对象模型和关系型数据库之间建立起对应关系,并且提供了一种机制,通过 JavaBean 对象去操作数据库表中的数据。 如下图所示。
在实际开发中,程序员使用面向对象的技术操作数据,而当存储数据时,使用的却是关系型数据库,这样造成了很多不便。ORM 在对象模型和关系数据库的表之间建立了一座桥梁。有了 ORM, 程序员就不需要再使用 SQL 语句操作数据库中的表,使用 API 直接操作 JavaBean 对象就可以实现数据的存储、查询、更改和删除等操作。 MyBatis 通过简单的 XML 或者注解进行配置和原始映射,将实体类和 SQL 语句之间建立映射关系,是一种半自动化的 ORM 实现。
Mybatis 是 ORM 解决方案
基于 ORM,MyBatis 在对象模型和关系数据库的表之间建立了一座桥梁,通过 MyBatis 建立 SQL 关系映射,以便捷地实现数据存储、查询、更改和删除等操作。
MyBatis 框架的优点
(1)与 JDBC 相比,减少了50%以上的代码量。
(2)MyBatis 是最简单的持久化框架,小巧并简单易学。
(3)MyBatis 相当灵活,不会对应用程序或者数据库的现有设计强加任何影响,SQL 写在 XML 里,从程序代码中彻底分离,降低耦合度,便于统一管理和优化,并可重用。
(4)提供 XML 标签,支持编写动态 SQL 语句。
(5)提供映射标签,支持对象与数据库的 ORM 字段关系映射。
MyBatis 框架的缺点
(1)SQL 语句编写工作量大,对开发人员编写 SQL 语句的功底有一定要求。
(2)SQL 语句依赖于数据库,导致数据库移植性差,不能随意更换数据库。
MyBatis 框架的适用场合
MyBatis 专注于 SQL 本身,是一个足够灵活的 DAO 层解决方案。对性能的要求很高,或者需求变化较多的项目,如互联网项目。
标签:isp 而且 sql 语句 framework 内容 自动化 半成品 编码 低耦合
原文地址:https://www.cnblogs.com/wxdestiny/p/9741185.html