Java中的框架
Struts HiberNate Spring SpringMvc SpringBoot
Struts2
Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互
HiberNate
1. 开源的对象关系映射框架
2. 对jdbc的封装的框架
3. 与pojo(JavaBean)建立映射关系
Spring
JavaBean的管理
Spring是分层的JavaSE/EE full-stack(一站式) 轻量级开源框架
分层
1. SUN提供的JavaEE的三层结构:web层、业务层(service)、数据访问层(dao)(持久层,集成层)
2. Struts2是web层基于MVC设计模式框架.
3. Hibernate是持久的一个ORM的框架.
一站式
1. Spring对web层提供的解决方案===>Spring Mvc
2. Spring对Service层提供的解决方案===>Spring
3. Spring对Dao层提供的解决方案===>Jdbc Template
Spring的核心
1. IOC(控制反转)
把对象的创建权交给Spring容器
2. AOP(面向切面编程)
是面向对象的功能延伸.不是替换面向对象,是用来解决OOP(面向对象编程)中一些问题.
Spring的优点
1.方便解耦 简化开发
把所有对象的创建交给Spring管理
2. 支持Aop编程
解决在OOP中遇到的一些问题
3.声明式事务的支持
4. 方便调试程序
在spring中有专门的调试模块Spring-Test
5.方便继承各种优秀的框架
Spring对各种主流的框架都提供了支持
6. Spring对一些比较难用的API都进行了封装,方便使用(邮件 远程调用....)
IOC和DI的区别
IOC:把对象的创建权交给Spring容器
DI:在创建对象时注入对象的属性
有三种注入方法
1.set方法和构造器,默认用无参数构造器来创建对象,即用set方法注入,name属性的名字和set后面的名字保持一致
2.静态工厂
3.动态工厂
Java企业级开发的演化
1.Servlet + Java Bean
2.Servlet + Java Bean +jsp
3.Struts2 +Spring +HiberNate (SSH)
4.Spring Mvc +Spring +mybatis(ibatis) (SSM)
5.Spring Boot(下一代框架 微服务框架)
常用的解决方案
1. web (Struts2 SpringMvc)
2.service(Spring)
3.dao(DBUtils HiberNate mybatis Jdbc Template)