zoukankan      html  css  js  c++  java
  • 29.Spring-基础.md


    目录

    1.目的和作用

    解决对象的创建和以及对象依赖关系的!

    • Struts与Hibernate可以做什么事?
      Struts,
      Mvc中控制层解决方案
      可以进行请求数据自动封装、类型转换、文件上传、效验…
      Hibernate,
      持久层的解决方案;
      可以做到,
      把对象保存到数据库,
      从数据库中取出的是对象。
    • 传统的开发模式
      基于mvc模式进行项目开发;
      基于mvc的项目框架结构:
      Entity / dao / service / action
    
    // 1. 实体类
    class User{
    }
     
     
    //2. dao
    class  UserDao{
    .. 访问db
    }
     
    //3. service
    class  UserService{
    UserDao userDao = new UserDao();
    }
     
    //4. action
    class  UserAction{
    UserService userService = new UserService();
     
    ..
    拿到数据或结果
    
    }
    

    思考:

    1. 对象创建创建能否写死?
    2. 对象创建细节
      对象数量
      action 多个 【维护成员变量】
      service 一个 【不需要维护公共变量】
      dao 一个 【不需要维护公共变量】
      创建时间
      action 访问时候创建
      service 启动时候创建
      dao 启动时候创建
    3. 对象的依赖关系
      action 依赖 service
      service依赖 dao

    =======================================================
    总结:
    spring就是解决上面的问题的!

    简单来说,就是处理对象的创建的、以及对象的依赖关系!


    目录

    2.概念

    2.1框架的设计

    • 侵入式设计
      引入了框架,对现有的类的结构有影响;即需要实现或继承某些特定类。
      例如: Struts框架

    • 非侵入式设计

         引入了框架,对现有的类结构没有影响。
         例如:Hibernate框架 / Spring框架
      

    2.2控制反转

    nversion on Control , 控制反转 IOC
    对象的创建交给外部容器完成,这个就做控制反转.

         依赖注入,  dependency injection 
                   处理对象的依赖关系
    
         区别:
    

    控制反转, 解决对象创建的问题【对象创建交给别人】
    依赖注入,
    在创建完对象后, 对象的关系的处理就是依赖注入 【通过set方法依赖注入】

    2.3AOP

         面向切面编程。切面,简单来说来可以理解为一个类,由很多重复代码形成的类。
         切面举例:事务、日志、权限;
    

    目录

    3.

    3.1Spring六大模块

    1. Spring Core spring的核心功能: IOC容器, 解决对象创建及依赖关系

    2. Spring Web Spring对web模块的支持。
      2.1 可以与struts整合,让struts的action创建交给spring

      2.2 spring mvc模式

    3. Spring DAO Spring 对jdbc操作的支持 【JdbcTemplate模板工具类】

    4. Spring ORM spring对orm的支持:
      4.1 既可以与hibernate整合,【session】
      4.2也可以使用spring的对hibernate操作的封装

    5. Spring AOP 切面编程

    6. SpringEE spring 对javaEE其他模块的支持


    目录

  • 相关阅读:
    Hibernate实体类注解
    Struts2注解详解
    Spring注解大全
    Maven依赖机制
    Maven启动代理服务器
    SSH整合
    二进制求和 —— 从复杂方法到简单方法
    最大子序和 —— 动态规划解法
    括号匹配问题 —— Deque双端队列解法
    常见面试题 —— 两数之和(拒绝暴利法)
  • 原文地址:https://www.cnblogs.com/bugstar/p/8510155.html
Copyright © 2011-2022 走看看