1、B/S架构的JavaEE开发设计模式,JavaEE架构分成三个层次即表现层、业务逻辑层、数据持久层;而这三层分别通过Struts、Spring、iBatis开源的框架紧密组合在一起的。

  1. Struts:主要关注的是Controller流程
  2. Spring:提供了Bean的配置基础,AOP的支持和抽象事务支持等,还可以与其他开源框架进行无缝结合,有一个显著的特点:在某个层面上如果不需要Spring的支持,就可以不使用,只使用它的某一部分的功能。【整体管理项目】{Spring框架的各个模块都是可以单独存在的,或者与其他一个或多个模块联合实现。}
  3. Hibernate:java开源代码的对象关系映射,对JDBC进行了轻量级的对象封装,用对象编程思维来操纵数据库【即:数据持久化】
  4. iBatis:使用xml映射文件在SQL层面上进行持久化操作,当将使用JDBC的细节全部隔离开来,在xml中统一管理。

2、MVC:     模型层----视图层-----控制层

    2.1视图:用户可以看到的界面,向用户展示着相关数据,且能够接受用户输入的数据,发送给控制器,不进行任何相关操作,可以向模型查询业务状态但不可以改变模型

    2.2模型:业务数据的处理层,同一个模型可以被多个视图重用,模型接收视图请求的数据,放回最终处理结果;【模型是MVC的最核心的部分】

    2.3控制层:起到一个传递的作用,不做任何的数据处理,然后将用户的请求传递给模型层进行处理,模型根据用户请求进行相应的业务逻辑处理。

3、Spring框架中重要的两个功能:IOC{控制反转}和AOP{面向对象编程}

  3.1 控制反转IOC

      容器(在Spring框架中是IOC容器)负责将这些联系在一起,典型场景中:容器创建了所有对象,并设置必要的属性将它们连接在一起,决定什么时间调用方法。

  3.2 面向对象编程AOP

      是一种编程技术,允许程序员对横切关注点或者横切典型的职责分界线的行为(例如日志和事务管理)进行模块化【AOP的功能完全集成到了Spring事务管理、日志和其他各种特性的上下文中】

4、iBatis框架

  4.1iBatis的组成:包含两类组件,即SQL Maps组件和DAO组件

    4.11  SQL Maps:不使用JDBC,不在程序中耦合java代码与sql语句,进而实现java对象和关系型数据库管理系统{DBMS}的增删改查{CRUD}操作;

        基于xml配置文件,使用简单xml配置文件将java Bean映射成SQL语句。其中输入输出参数可以是基本类型的包装类,或简单类(如:Integer,String等),或HashMap,也可以是复杂的类{直接是对象}

  

      

SSI框架【Struts、Spring、iBatis、Hibernate】的更多相关文章

  1. Maven环境下搭建SSH框架之Spring整合Hibernate

    © 版权声明:本文为博主原创文章,转载请注明出处 1.搭建环境 Spring:4.3.8.RELEASE Hibernate:5.1.7.Final MySQL:5.7.17 注意:其他版本在某些特性 ...

  2. ibatis 开发中的经验 (三)Struts+Spring+Ibatis 开发环境搭建

             ibatis项目中用到了一些基本配置,须要和spring集成,看了看这些配置大部分同hibernate中是一样的,也比較好理解.仅仅是须要他们的配置中每个类的含义,还有当中的一些细节 ...

  3. SSH框架之Spring+Struts2+Hibernate整合篇

    回顾 -Hibernate框架 ORM: 对象关系映射.把数据库表和JavaBean通过映射的配置文件映射起来, 操作JavaBean对象,通过映射的配置文件生成SQL语句,自动执行.操作数据库. 1 ...

  4. SSH程序框架之Spring与HIbernate整合

    spring整合hibernate 有两种方式 1.注解方式 2.xml方式实现 Spring整合Hibernate有什么好处? 1.由IOC容器来管理Hibernate的SessionFactory ...

  5. Spring学习8-用MyEclipse搭建SSH框架 Struts Spring Hibernate

    1.new一个web project. 2.右键项目,为项目添加Struts支持. 点击Finish.src目录下多了struts.xml配置文件. 3.使用MyEclipse DataBase Ex ...

  6. ssh框架中spring整合hibernate的配置文件模板(带详细注释)

    applicationContext.xml的配置文件模板 <?xml version="1.0" encoding="UTF-8"?> <b ...

  7. 使用struts+spring+hibernate组装web应用

    这篇文章将讨论怎样组合几个着名的框架去做到松耦合的目的,怎样建立你的构架,怎样让你的各个应用层保持一致.富于挑战的是:组合这些框架使得每一层都以一种松耦合的方式彼此沟通,而与底层的技术无关.这篇文章将 ...

  8. SSH(Spring Struts2 Hibernate)框架整合(注解版)

    案例描述:使用SSH整合框架实现部门的添加功能 工程: Maven 数据库:Oracle 框架:Spring Struts2  Hibernate 案例架构: 1.依赖jar包 pom.xml < ...

  9. Maven搭建简单的SPring+SpringMVC+Hibernate框架

    公司的项目用到的框架是Spring+SpringMVC+Hibernate 以前没有用过,所以要系统的学习一下,首先要学会怎么搭建 第一步  创建一个Maven的web项目  创建方法以前的博客中有提 ...

  10. velocity+spring mvc+spring ioc+ibatis初试感觉(与struts+spring+hibernate比较)

    velocity+spring mvc+spring ioc+ibatis框架是我现在公司要求采用的,原因是因为阿里巴巴和淘宝在使用这样的框架,而我公司现在还主要是以向阿里巴巴和淘宝输送外派人员为 主 ...

随机推荐

  1. 闲着没事写点啥之springmvc梳理

    用户通过浏览器向服务器发送请求,请求被springmvc的前端控制器dispatcherservlet拦截. dispatcherservlet拦截到请求后,会调用handlermapping处理器映 ...

  2. 缓存promise技术不错哦

    1. pageManager.js const promiseList = {}; module.exports = { putData: function(pageName,data){ promi ...

  3. spring动态调用方法

    有的时候为了程序的灵活性,需要根据参数动态的调用方法.代码框架大致spring为主,下面是具体代码: 接口: 实现类(实现类中有一个从spring容器中取的对象) 这是最初我直接用反射去调用的代码: ...

  4. Django【第5篇】:Django之ORM数据库操作

    django之ORM数据库操作 一.ORM介绍 映射关系: 表名 -------------------->类名 字段-------------------->属性 表记录-------- ...

  5. pyautogui页面点击和键盘输入

    以下程序实现了在编辑框处点击,然后用键盘输入的功能 import pyautogui import time time.sleep(10) currentMouseX, currentMouseY = ...

  6. 基于http方式搭建YUM源服务器

    基于http方式搭建YUM源服务器 (2012-09-21 11:59:14) 转载▼ 标签: yum linux lnmp lamp http 分类: Linux 为了方便公司80多台Linux服务 ...

  7. DNS域名解析系统

    1.DNS的组成 DNS系统是为解析域名为IP地址而存在的,它是由域名空间.资源记录.名称服务器和解析器组成. 域名空间是包含一个树状结构,用于存储资源记录的空间. 资源记录是与域名相关的数据,如IP ...

  8. HRESULT: 0x80040228

    When run the arcgis engine codes in the console application, may come to the exception: HRESULT: 0x8 ...

  9. facebook第三方登陆实践

    未完,待续... 1.注册 到Facebook官网注册开发者账号,创建应用(开发者平台 https://developers.facebook.com),如果尚未注册账号的请注册账号并进行登录) 注册 ...

  10. c++复习——类(2)

    1.this指针 this指针是一个指向对象的指针.  this指针是一个隐含于成员函数中的对象指针.  this指针是一个指向正在调用成员函数的对象的指针.  类的静态成员函数没有this指针 ...