Stus2
加载类
读取配置文件
派发请求
找到action
调用拦截器
进行业务逻辑
返回响应
找到响应,找到跳转的jsp
渲染
StringMvc
发送请求
中央控制器调用处理映射器 返回HanldExalChan对象
中央控制器调用处理适配器 返回一个ModelAndView对象 Hanld 实际上就是controller
中央控制器调用视图解析器处理后, 将model 和view分离
中央控制器将view渲染到视图上
Stus2和StringMvc的区别
级别不同:一个是方法<StringMvc> 一个是类<Stus2>
本质不同:一个是Servlet<StringMvc> 一个是Filter拦截器<Stus2>
Spring
Spring是一个容器,其核心是Bean;我操作Spring只做了俩件事, 创建Bean和管理Bean;
核心思想是ioc-Di和AOP
IOC-控制反转 由我们创建的对象,改为容器代替我们创建;读取配置文件
Di-依赖注入 注入依赖;
Aop-面向切面 作为oop的补充和说明,很好的将日志 权限 缓存 等问题
HiberNate
完全的ORM<关系映射>框架,
不需要写SQL 内置JPA
对我来说 缺点是SQL不可控
相对于mybits来说 重 上手难
Mybits
半ORM框架
需要在xml中写SQL
轻 学习成本低
对我来说,要写SQL,工作量高
在xml中写SQL不美观
集合
单列-Collection
List<有序,唯一,有索引>:
-ArrayList 底层是数组 增删慢 查询快 不同步
-LinkList 底层是链表 查询慢 增删快 不同步
-枚举 线程同步
Set<无序,重复,没索引>:
-HashSet 底层是哈希表 无序 高效 不同步
-LinkHashSet 底层是哈希表+链表 有序 高效
-TreeSet 底层是二叉树
双列-map
map<键值对>:
HashMap: 底层是哈希表,同步,效率高 不允许null建,或者null值;
HashTable: 底层是哈希表,不同步 效率高 可以允许null建,或者null值
AJAX
AJAX是一个异步的请求,Ajax的原理简单来说通过XmlHttpRequest对象来向服务器发异步请求,
从服务器获得数据,然后用javascript来操作DOM而更新页面
加载类
读取配置文件
派发请求
找到action
调用拦截器
进行业务逻辑
返回响应
找到响应,找到跳转的jsp
渲染
StringMvc
发送请求
中央控制器调用处理映射器 返回HanldExalChan对象
中央控制器调用处理适配器 返回一个ModelAndView对象 Hanld 实际上就是controller
中央控制器调用视图解析器处理后, 将model 和view分离
中央控制器将view渲染到视图上
Stus2和StringMvc的区别
级别不同:一个是方法<StringMvc> 一个是类<Stus2>
本质不同:一个是Servlet<StringMvc> 一个是Filter拦截器<Stus2>
Spring
Spring是一个容器,其核心是Bean;我操作Spring只做了俩件事, 创建Bean和管理Bean;
核心思想是ioc-Di和AOP
IOC-控制反转 由我们创建的对象,改为容器代替我们创建;读取配置文件
Di-依赖注入 注入依赖;
Aop-面向切面 作为oop的补充和说明,很好的将日志 权限 缓存 等问题
HiberNate
完全的ORM<关系映射>框架,
不需要写SQL 内置JPA
对我来说 缺点是SQL不可控
相对于mybits来说 重 上手难
Mybits
半ORM框架
需要在xml中写SQL
轻 学习成本低
对我来说,要写SQL,工作量高
在xml中写SQL不美观
集合
单列-Collection
List<有序,唯一,有索引>:
-ArrayList 底层是数组 增删慢 查询快 不同步
-LinkList 底层是链表 查询慢 增删快 不同步
-枚举 线程同步
Set<无序,重复,没索引>:
-HashSet 底层是哈希表 无序 高效 不同步
-LinkHashSet 底层是哈希表+链表 有序 高效
-TreeSet 底层是二叉树
双列-map
map<键值对>:
HashMap: 底层是哈希表,同步,效率高 不允许null建,或者null值;
HashTable: 底层是哈希表,不同步 效率高 可以允许null建,或者null值
AJAX
AJAX是一个异步的请求,Ajax的原理简单来说通过XmlHttpRequest对象来向服务器发异步请求,
从服务器获得数据,然后用javascript来操作DOM而更新页面