黑马程序员技术交流社区

标题: 【石家庄校区】笔记 [打印本页]

作者: 李皓321    时间: 2018-5-27 16:20
标题: 【石家庄校区】笔记
MVC&事务


1,获得字节码对象的三中方法:
2,Java中的内省技术:
       概念:用来获得JavaBean的属性及属性的get或set方法.JavaBean:就是一个满足了特定格式的 Java类:
    *需要提供无参数的构造方法:
* 属性私有
* 对私有的属性提供public的get/set方法.
3,JSP + Servlet + JavaBean 称为MVC的设计模式.
MVC:
M:Model:模型层
V:View:视图层
C:Controller:控制层
4,属性由get/set方法决定
5,MYSQL数据库事务是默认提交的,Qracle数据库事务默认是不自动提交的。
  手动开启事务:
           start  transaction ---开启事务
  多条sql:
          commit/roolback
设置一个自动提交参数:
           show variables like ‘%commit%’;----查看与commit相关参数
          set autocommit=0;----将autocommit参数设置为OFF
6,事务的特性:
原子性:强调事务的不可分割性
一致性:强调的是事务的执行的前后,数据的完整性要保持一致
隔离性:一个事务的执行不应该受到其他事务的干扰
持久性:事务一旦结束(提交/回滚)数据就持久保存到了数据库
7,如果不考虑事务的隔离性就会引发一些安全性问题:
一类是读问题(重点)三种:
脏读:一个事务读到了另一个事务还没提交的数据
不可重复读:一个事务读到了另一个事务提交的update数据,导致在当前的事务中多次查询结果不一致
虚读/幻读:一个事务读到了另一个事务已经提交的insert的数据,导致在当前事务中多次查询结果不一致
二类是写问题:
引发两类丢失更新:
8,解决引发的读问题:
设置事务的隔离级别:
read uncommited : 未提交读,脏读不可重复读,虚读都有可能发生
read commited     :已提交读,避免脏读,但不可重复读,虚读有可能发生
repeatable     : 可重复读。避免脏读,不可重复读,但虚读有可能发生
aerializable:     串行化的,避免脏读,不可重复读,虚读的发生。
MYSQL隔离级别默认是 repeatable,
Oracle默认是read commited


9,EE开发的三层结构:
  客户端层:HTML,CSS,JS,(之前是Java  Applet)
  WEB层:Servlet+JSP
  业务层:EJB
  持久层:
异步AJax

异步AJax:
            原生的JS写法实现
            框架的
1,AJAX概述:
    2,XMLHttpRequest:


3,JQuery的AJAX:


xml/json

1,AJAX的响应的数据:
  文本,一段HTML的数据,XML,JSON
2,Json:
3,监听器Listener
    * ServletContextAttributeListener
    * HttpSessionAttributeListener
    * ServletRequestAttributeListener
    * HttpSessionBindingListener
    * HttpSessionActivationListener                                                                                                               









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