前言:
在本周的前一段时间,我们仍然完善之前写的项目,时隔五天,虽说小有进步,但仍还有诸多的不足之处需要改正,就比如MySql连表查询的操作,对于项目的整体框架不了解,导致项目写的代码有些乱,还有对于正则表达式也不会使用,其中的文件上传的类的导入包后的类也不了解其中原理,所以在以后的学习过程中不仅要学习新的内容,还要回顾之前的内容。这几天我也在进行Spring的框架的学习,如下也是我关于本次学习过程中的笔记以及一些心得体会。
Spring概述:
Spring 框架是一个分层的、面向切面的 Java 应用程序的一站式轻量级解决方案,它是 Spring 技术栈的核心和基础,是为了解决企业级应用开发的复杂性而创建的。
IOC与AOP是他的核心内容。
IOC | Inverse of Control 的简写,译为“控制反转”,指把创建对象过程交给 Spring 进行管理。 |
AOP | Aspect Oriented Programming 的简写,译为“面向切面编程”。 AOP 用来封装多个类的公共行为,将那些与业务无关,却为业务模块所共同调用的逻辑封装起来,减少系统的重复代码,降低模块间的耦合度。另外,AOP 还解决一些系统层面上的问题,比如日志、事务、权限等。 |
Bean管理就是两个操作:(1)Spring创建对象;(2)Spring注入属性。
当通过Spring容器创建一个Bean实例时,不仅可以完成Bean实例的实例化,还可以为Bean指定特定的作用域。Spring有如下五种作用域:
- singleton: 单例模式,在整个Spring IoC容器中,singleton作用域的Bean将只生成一个实例。
- prototype: 每次通过容器的getBean()方法获取prototype作用域的Bean时,都将产生一个新的Bean实例。
- request: 对于一次HTTP请求,request作用域的Bean将只生成一个实例,这意味着,在同一次HTTP请求内,程序每次请求该Bean,得到的总是同一个实例。只有在Web应用中使用Spring时,该作用域才真正有效。
- session:该作用域将 bean 的定义限制为 HTTP 会话。 只在web-aware Spring ApplicationContext的上下文中有效。
- global session: 每个全局的HTTP Session对应一个Bean实例。在典型的情况下,仅在使用portlet context的时候有效,同样只在Web应用中有效。
总结:
在本次Spring的学习过程中与之前相比导入了很多Spring的jar包,虽然这些东西不是很多,但更多的还是需要花费时间去加以理解,所以在后续学习过程应与实践相结合去理解。