学习spring必学的Java基础知识
发布于:2019-11-13   作者:admin   浏览:459次

  Spring框架指的都是SpringFramework,它是很多模块的集合,使用这些模块可以很方便地协助我们进行开发。这些模块是:核心容器、数据访问/集成,、Web、AOP(面向切面编程)、工具、消息和测试模块。比如:CoreContainer中的Core组件是Spring所有组件的核心,Beans组件和Context组件是实现IOC和依赖注入的基础,AOP组件用来实现面向切面编程。java培训机构的小编来为大家介绍一番咯。

学习spring必学的Java基础知识

  核心技术包括

  依赖注入(DI),AOP,事件(events),资源,i18n,验证,数据绑定,类型转换,SpEL。

  主要模块

  SpringCore:基础,可以说Spring其他所有的功能都需要依赖于该类库。主要提供IOC依赖注入功能。

  SpringAspects:该模块为与AspectJ的集成提供支持。

  SpringAOP:提供了面向方面的编程实现。

  SpringJDBC:Java数据库连接。

  SpringJMS:Java消息服务。

  SpringORM:用于支持Hibernate等ORM工具。

  SpringWeb:为创建Web应用程序提供支持。

  SpringTest:提供了对JUnit和TestNG测试的支持。

  IoC(InverseofControl:控制反转)是一种设计思想,就是将原本在程序中手动创建对象的控制权,交由Spring框架来管理。IoC在其他语言中也有应用,并非Spirng特有。IoC容器是Spring用来实现IoC的载体,IoC容器实际上就是个Map(key,value),Map中存放的是各种对象。

  现在通过注解来实现

  aop

  能够将那些与业务无关,却为业务模块所共同调用的逻辑或责任(例如事务处理、日志管理、权限控制等)封装起来,便于减少系统的重复代码,降低模块间的耦合度,并有利于未来的可拓展性和可维护性。

  bean的作用域

  singleton:唯一bean实例,Spring中的bean默认都是单例的。

  prototype:每次请求都会创建一个新的bean实例。

  request:每一次HTTP请求都会产生一个新的bean,该bean仅在当前HTTPrequest内有效。

  session:每一次HTTP请求都会产生一个新的bean,该bean仅在当前HTTPsession内有效。

  global-session:全局session作用域,仅仅在基于portlet的web应用中才有意义,Spring5已经没有了。Portlet是能够生成语义代码(例如:HTML)片段的小型JavaWeb插件。它们基于portlet容器,可以像servlet一样处理HTTP请求。但是,与servlet不同,每个portlet都有不同的会话

  springmvc

  SpringMVC可以帮助我们进行更简洁的Web层的开发,并且它天生与Spring框架集成。SpringMVC下我们一般把后端项目分为Service层(处理业务)、Dao层(数据库操作)、Entity层(实体类)、Controller层(控制层,返回数据给前台页面)。

  springmvc.工作原理

  SpringMVC的入口函数也就是前端控制器DispatcherServlet的作用是接收请求,响应结果。

  流程说明(重要):

  客户端(浏览器)发送请求,直接请求到DispatcherServlet。

  DispatcherServlet根据请求信息调用HandlerMapping,解析请求对应的Handler。

  解析到对应的Handler(也就是我们平常说的Controller控制器)后,开始由HandlerAdapter适配器处理。

  HandlerAdapter会根据Handler来调用真正的处理器开处理请求,并处理相应的业务逻辑。

  处理器处理完业务后,会返回一个ModelAndView对象,Model是返回的数据对象,View是个逻辑上的View。

  ViewResolver会根据逻辑View查找实际的View。

  DispaterServlet把返回的Model传给View(视图渲染)。

  把View返回给请求者(浏览器)