黑马程序员技术交流社区

标题: [Java]SSM框架要点 [打印本页]

作者: 蔡徐坤    时间: 2019-6-21 14:01
标题: [Java]SSM框架要点
SSM框架要点

- IOC:控制反转
  - xml方式创建和注入bean
    - bean标签
    - 方式:
      - 无参构造
      - 工厂方式[+]
    - <bean id ="xxx" class="全路径类名">
    - 注入:
      - set方法,有参构造
      - <property name="username" ref=""  value=""
      - <scope>
  - 注解的方式创建和注入bean
    - 创建bean
      - @Component
      - @Service
      - @Contoller
      - @Repository
    - 注入:
      - @AutoWired
      - @Qualifier
      - @Resource(name="")
      - @Value
    - 其他注解
      - @Scope
      - @PostConstruct
      - @PreDestroy
    - 新注解
      - @Bean 引入第三方Bean
      - @Configuration
      - @PropertySource
      - @Import
      - @ComponentScan
    - 扫描包
- AOP:面向切面编程
  - 要素:切点,增强方法,织入,切面
  - 增强方法:
    - 前置
    - 后置
    - 环绕
    - 异常
  - xml的方式完成aop开发
    - 编写目标方法
    - 编写增强方法,切面类
    - 配置织入关系
    - <aop:config>
      - aspect refId="切面类"
        - before method="切面类的before方法"
        - 切点表达式
  - 注解方式完成aop开发
    - @Aspect
    - 在方法上配置:@Before(切点表达式) @AfterReturning
  - 声明式事务:
    - xml:
      - <advisor> </advisor>
      - advice="事务增强" 切点表达式
      - 配置事务增强
        - <tx:advice>
          - 事务事务管理器
          - 属性
      - 配置事务管理器
        - dataSource
    - 注解:
      - @Transactional(设置属性)
      - 在方法或者类上修饰
      - 配置事务管理器
      - 开启事务注解驱动:
        - 指定事务管理器

### SpringMVC复习

- 概念:
- 执行流程:
  - 浏览器->tomcat->DispatherServlet
  - DispatherServlet ->handlerMapping
  - DispatherServlet ->hanlderAdapter
  - DispatherServlet ->viewResovler
  - DispatherServlet ->渲染视图返回到浏览器
- spring 与web集成
  - 配置监听器:ServletContext
  - 配置全局参数:applicationContext
- 配置springmvc步骤:
  - 配置DispatherServlet
    - 加载spring-mvc.xml
  - 编写conroller
    - 指定映射路径:@RequestMapping("路径")
  - 编写jsp
- spring-mvc.xml需要配置:
  - 扫描contoller
  - 配置视图解析器,前缀后缀
- web.xml配置:
  - 过滤器
  - 配置DispatherServlet
  - 配置监听器:ServletContext
  - 配置全局参数:applicationContext
- 请求与响应:
  - 请求:
    - key&value格式(默认)
      - 基本类型
      - 数组类型
      - pojo类型
      - 集合类型(封装到一个vo)
    - json格式
      - @RequestBody
      - pojo类型
      - 集合类型
    - 文件格式
      - 客户端三要素
      - 配置文件上传解析器
      - 用MultiPartFile对象接收
  - 响应:
    - 页面跳转(默认)
      - 返回字符串
      - 返回ModelAndView
    - 回写数据
      - @ResponseBody
      - 返回字符串
      - 返回集合和对象
        - 配置mvc注解驱动
    - restFul风格的请求
      - get
      - post
      - delete
      - put
      - 可以在url中传递参数
        - /user/1
        - /user/{id}
        - @PathVariable("id")
- 拦截器
  - 应用场景:用户验证
  - 配置步骤:
    - 编写一个类实现HandlerIntecepter接口
    - 在spring-mvc.xml中配置拦截器
      - intecepters
        - mapping path="/**"
  - 方法:
    - preHandle
    - postHandle
    - AfterCompolitionHandle
- 异常处理:
  - 作用:
  - 方法:
    - 简单的,springmvc提供
      - 在spring-mvc.xml中配置异常处理
    - 自定义的
    - 配置步骤:
      - 编写自定义异常处理器实现HandlerException接口
      - 在spring-mvc.xml中配置异常处理

### Mybatis复习

- 概念:

- 映射文件:

  - namespace
  - 基本的CRUD的标签
    - parameterType
    - resultType
  - 动态SQL标签:
    - if,where,foreach,sql,include

- 核心配置文件:

  - properties:
  - environments
  - mappers
  - TypeAliases
  - TypeHandler
  - pulugins
    - pageHelper

- 多表操作:

  - 一对一
    - ResultMap
    - association
  - 一对多
    - ResultMap
    - collection
  - 多对多(sql语句多了一张中间表)
    - ResultMap
    - collection

- 注解开发

  - @select
  - @insert
  - @delete
  - @update
  - @Results==ReulstMap标签
  - @Result==result,id标签
  - @one(select=全路径方法名)
  - @many(select=全路径方法名)
  - 注意:注解的多表操作,选需要执行两次sql

- spring与mybatis整合

  - 把sqlSessionFactory交给Spring容器管理
    - dataSource
    - configLocation:加载sqlMapConfig.xml
  - 添加mapper接口所在的包的扫描
  - @AutoWired 直接注入userMapper接口

  


作者: 小仙女爱学习    时间: 2019-6-21 14:35
蔡徐坤你好厉害




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2