OGX%E@mx0

IBATIS:最大的优点是可以有效的控制sql发送的数目,提高数据层的执行效率!它需要程序员自己去写sql语句,不象hibernate那样是完全面向对象的,自动化的,ibatis是半自动化的,通过表和对象的映射以及手工书写的sql语句,能够实现比hibernate等更高的查询效率。

Ibatis只是封装了数据访问层,替我们做了部分的对象关系映射。但代价是必须要写xml配置文件,相对于Hibernate还要写很多sql。Hibernate通过工具直接从数据库模式生成实体类和基本的配置文件,而且大部分情况下不需要我们写sql,会较大的提升开发效率。但这些也有很多的局限性,尤其是对环境的要求较高(数据库设计,对象设计,团队的协作等)。 个人感觉Ibatis对项目比较有意义的地方在于它小巧灵活,可扩展,封装了数据访问层(事务,缓存,异常,日志),并提供了DAO框架支持。

利用Ibatis我们可以做到代码和sql的分离,只要sql能够解决的问题,Ibatis就能帮我们较容易的解决,同时也使我们的项目对某一框架的依赖性变小(因为Ibatis是非侵入性的)。这将极大的降低项目风险,减少解决复杂问题的时间,使项目的维护变得简单。

Ibatis对于应用的修改,调试,扩充和维护将会变得容易自然。修改时,我们主要修改的是代表模型的实体对象,xml配置文件中的sql,和/或配置文件的ResultMap(很多时候是不需要的)。同时,sql和代码分离,我们不用在代码的StringBuffer的append方法之间寻找需要修改的sql。配置文件中的sql便利了我们的调试和对sql的评审及以后的sql重用。

3.structs1架构图

Struts是Apache基金会Jakarta项目组的一个Open Source项目,它采用MVC模式,能够很好地帮助Java开发者利用J2EE开发Web应用。和其他的java架构一样,Struts也是面向对象设计,将MVC模式"分离显示逻辑和业务逻辑"的能力发挥得淋漓尽致。Structs框架的核心是一个弹性的控制层,基于如Java Servlets,JavaBeans,ResourceBundles与XML等标准技术,以及Jakarta Commons的一些类库。Struts有一组相互协作的类(组件)、Serlvet以及jsp tag lib组成。基于struts构架的web应用程序基本上符合JSP Model2的设计标准,可以说是一个传统MVC设计模式的一种变化类型。

Struts有其自己的控制器(Controller),同时整合了其他的一些技术去实现模型层(Model)和视图层(View)。在模型层,Struts可以很容易的与数据访问技术相结合,如JDBC / EJB,以及其它第三方类库,如Hibernate / iBATIS,或者Object Relational Bridge(对象关系桥)。在视图层,Struts能够与JSP,包括JSTL与JSF,以及Velocity模板,XSLT与其它表示层技术。

Struts为每个专业的Web应用程序做背后的支撑,帮助为你的应用创建一个扩展的开发环境。

 Client browser(客户浏览器)

来自客户浏览器的每个HTTP请求创建一个事件。Web容器将用一个HTTP响应作出响应。

 Controller(控制器)

控制器接收来自浏览器的请求,并决定将这个请求发往何处。就Struts而言,控制器是以servlet实现的一个命令设计模式。struts-config.xml文件配置控制器。

 业务逻辑

业务逻辑更新模型的状态,并帮助控制应用程序的流程。就Struts而言,这是通过作为实际业务逻辑“瘦”包装的Action类完成的。

 Model(模型)的状态

模型表示应用程序的状态。业务对象更新应用程序的状态。ActionForm. bean在会话级或请求级表示模型的状态,而不是在持久级。JSP文件使用JSP标记读取来自ActionForm. bean的信息。

 View(视图)

视图就是一个JSP文件。其中没有流程逻辑,没有业务逻辑,也没有模型信息–只有标记。标记是使Struts有别于其他框架(如Velocity)的因素之一

4.structs2架构图

Struts 2相对于Struts 1.X,将实现用户业务逻辑(Action)同Servlet API分离开,这种分离机制,是采用了拦截器或者拦截器栈(拦截器链)。拦截器是Struts 2的核心内容之一。

【一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义】浏览器打开:qq.cn.hn/FTf 免费领取

Struts 2内建了多个拦截器和拦截器栈(由多个拦截器形成的拦截器链),将用户的Web请求进行拦截处理,从而提供了更加丰富的功能,例如数据类型转换、国际化、文件上传等。

5.Hibernate架构图

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来 操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命 意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这五个核心接口分别加以介绍。

JAVA各种系统架构图及其简介,分布式中间件技术实战相关推荐

  1. 各种系统架构图及其简介

    各种系统架构图及其简介 )z @3vvG,W5p'[n0 转载请保留出处,不胜人生一场醉汇总. 以下文字和架构图均在本人相关系统设计和架构方案中有所应用. 2ht4T[i}6_0 原文出处:http: ...

  2. Java企业级应用架构设计中的分布式结构

    Java企业级应用架构设计中的分布式结构 2010-12-24 13:54:12|  分类:默认分类 |  标签:|字号大中小 订阅 Java企业级应用架构设计是每个Java开发者不必学的知识,本文将 ...

  3. Android系统架构图及简单的系统架构介绍

    2019独角兽企业重金招聘Python工程师标准>>> ndroid的系统架构和其操作系统一样,采用了分层的架构.从架构图看,android分为四个层,从高层到低层分别是应用程序层. ...

  4. java 分布式 redis缓存技术_JAVA架构师系列课程分布式缓存技术Redis权威指南,资源教程下载...

    课程名称 JAVA架构师系列课程分布式缓存技术Redis权威指南,资源教程下载 课程目标 本课程从0基础开始,对redis的方方面面进行细粒度的讲解:包括基础操作.高级命令.各种集群模式.动态增减节点 ...

  5. 重走Android路 之 Android系统架构图以及开发工具了解

    LZ-Says:热腾腾的一天那,貌似今天帝都达到了高温,热腾腾,我滴天...各位老铁注意防暑,多喝水~~~ 前言 昨天更新了一篇启程文,地址如下: 重走Android路 之 今日正式启程:https: ...

  6. android系统架构图及各层介绍

    此技术文档主要是从基础了解Android系统架构,便于对以后开发形成一些基本应用架构. Android的系统架构采用了分层架构的思想,如图1所示.从上层到底层共包括四层,分别是应用程序程序层.应用框架 ...

  7. 系统架构图编写(概要设计)

    系统架构图编写(概要设计) 应用架构图.技术架构图.业务架构图定义以及到底怎么画好架构图? 常见的数据库架构设计方案? 业务架构的定义.特性和方法 架构图之间的关系 业务架构图 业务架构,是IT架构的 ...

  8. 软考高级系统架构设计师:论分布式存储系统架构设计

    软考高级系统架构设计师:论分布式存储系统架构设计 一.集群存储技术 二.分布式文件系统 三.网络存储系统 四.P2P网络存储技术 五.提高分布式存储系统可靠性方法 简要说明在分布式存储系统架构设计中所 ...

  9. 一个关于“系统架构图怎么画?”的问题

    值得一看,请移步(没必要重复张贴了): 软件工程之系统架构图和系统架构描述 系统架构图怎么画?

  10. 系统架构图怎么画_基于ROS的移动机器人上层系统架构分析

    看过网上不少博客,介绍ROS系统架构的,基本上都是在介绍ROS自身系统架构,很少有介绍特定机器人的系统架构的.个人觉得,入门一个系统,首先需要从整体开始把握,而不必在意细节,整体把握好了,细节自然水到 ...

最新文章

  1. MySQL设值自动修改时间
  2. 使用Spring框架的好处
  3. Study Linux --- Shell Script
  4. intellij idea_IntelliJ IDEA内部设计
  5. Reactjs 踏坑指南1: 一些概念
  6. 小兔子(PAT乙级练习题)
  7. primefaces_Primefaces选项卡,TabMenu,TabView,TagCloud
  8. mac电脑安装mysql客户端
  9. Adobe illustrator如何修改默认字体
  10. Java去掉红色印章,基于RGB和HSV实现红色公章删除
  11. 调用高德API实现数据可视化
  12. 操作系统-软件架构设计
  13. 浙大计算机学院郭庆,团队介绍
  14. 数学中考计算机的应用,信息技术在初中数学教学中的应用
  15. 数字化原住民|ONES 人物
  16. 人生里的酸甜苦辣,缺了哪样都是遗憾
  17. WinCE6.0HIVE注册表
  18. PSP愤怒的小鸟 游戏ISO文件和完美通关全三星存档和金手指
  19. Go 语言如何从 Channel 读取资料
  20. cisco ssl vpn设备和outlook owa渗透测试

热门文章

  1. 华为鸿蒙系统os新机,鸿蒙OS今日面世,华为将出新机搭载新系统入市场
  2. ubuntu串口调试工具RS485
  3. HTML5响应式手机模板:H5网站设计——政府街道社区wap微信官网模板(11个页面) HTML+CSS+JavaScript 手机模板wap 手机网站模板 企业手机网站模板
  4. 下载XAMPP并安装和使用(Mac环境)
  5. 【Python】第七篇:模块化编程及第三方模块的安装
  6. X230 安装 EI Capitan 10.11.5 驱动篇
  7. 用计算机计算勾股定理,勾股定理公式计算器(勾股定理计算工具)V2018.1.0 官方版...
  8. ES6阮一峰读书笔记第二章变量的解构赋值
  9. Spring AOP原理详解及实例
  10. C# 判别系统版本以及Win10的识别办法