之前做过不少spring想过知识点内容的摘录,

Spring框架的特点、模块组成、优缺点

spring相关的bean管理想过知识点及依赖注入方式

今天说下近端时间中项目中遇到的相关印象比较深的知识点

1.spring事务管理:要在对应spring配置文件中配置要应用aop切面事务管理的包或具体的类,一般多是对service包下面的具体实现类应用事务管理,但要注意此时不能函数中捕获对应的数据库操作异常,否则spring不知道事事务是否执行成功无法做回滚操作。同时注意在应用事务的类中spring对象为代理类型,无法直接转为实际子类型对象(实际代理对象类型可转为对应实现类的父类型)。

2.spring的bean管理,项目中用到的bean对象一般都是单例模式,它的好处是对象中一些熟悉不用重复性获取,比如一个Bean类中定义了一个list保存所有组织节点,而这个Bean类对象b同时被A1、A2、A3的3个类对象所引用,相当于它们都是引用同一个Bean对象b,这样b对象的list只需要初始化一次后就可以多次在A1、A2、A3的对象中使用而无需重复初始化。

3.spring实质上就是将一些最初由代码处理的逻辑转换为通过配置文件处理,减少了代码的维护成本,但增加了配置文件维护成本,不过可以减少项目出现问题时重新打包编译的次数。项目出现问题时一般从根源开始检查spring想过的配置文件来解决。

Spring使用小结2的更多相关文章

  1. Spring归纳小结(山东数漫江湖)

    前言 如果说有什么框架是Java程序员必然会学习.使用到的,那么Spring肯定是其中之一.本篇博客,将根据博主在日常工作中对Spring的使用做一个系统的归纳小结. Spring的一些概念和思想 S ...

  2. Spring MVC小结

    Spring MVC项目搭建 添加依赖 (省略) Spring MVC配置类 @Configuration @EnableWebMvc @ComponentScan("com.sjx.spr ...

  3. Spring AOP小结

    一. AOP介绍 AOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善.OOP ...

  4. Spring IoC小结

    一. IoC是什么 Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想.在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象 ...

  5. Spring JdbcTemplate小结

    提供了JdbcTemplate 来封装数据库jdbc操作细节: 包括: 数据库连接[打开/关闭] ,异常转义 ,SQL执行 ,查询结果的转换 使用模板方式封装 jdbc数据库操作-固定流程的动作,提供 ...

  6. Spring MVC小结1

    由于最近刚开始学Spring MVC,所以来讲一下自己的理解. 首先进行环境配置: 1.jdk 2.myeclipse 3.tomcat 4.maven 配置maven的时候出现了一个小的问题,JAV ...

  7. Spring RestTemplate 小结

    关于RestTemplate 首先,你可以把它理解为一个发起请求并接收响应的工具类(功能类似浏览器). 其次,它其实是一个壳,具体还是通过调用别的接口来实现(如jdk自带的连接,或者HttpClien ...

  8. 关于Spring Test 小结

    1.>public class CustomerPackagePrealertControllerTest  extends WebSpringBaseTest{} 2.> @WebApp ...

  9. Spring知识点小结汇总

    Spring部分 1.谈谈你对spring IOC和DI的理解,它们有什么区别? IoC Inverse of Control 反转控制的概念,就是将原本在程序中手动创建UserService对象的控 ...

随机推荐

  1. JVM基础和调优(三)

    主要讲解垃圾回收的算法 上面我们已经了解到了,JVM的体系的结构,这次我们来说一下垃圾回收的算法. 1. 最开始的想法,或者说垃圾回收的最容易想到的就是:引用计数(reference count) 我 ...

  2. cf492B Vanya and Lanterns

    B. Vanya and Lanterns time limit per test 1 second memory limit per test 256 megabytes input standar ...

  3. Redmine是用Ruby开发的基于web的项目管理软件,是用ROR框架开发的一套跨平台项目管理系统

  4. poj2429:因数分解+搜索

    题意:给定gcd(a,b)和lcm(a,b) 求使得a+b最小的 a,b 思路:结合算数基本定理中 gcd lcm的质因子表示形式 把lcm(a,b)质因数分解 以后 通过dfs找到 a+b最小的a ...

  5. Raid1源代码分析--初始化流程

    初始化流程代码量比较少,也比较简单.主要是run函数.(我阅读的代码的linux内核版本是2.6.32.61) 四.初始化流程分析 run函数顾名思义,很简单这就是在RAID1开始运行时调用,进行一些 ...

  6. 【每天一个Linux命令】19. 创建文件夹目录命令mkdir

    命令用途 mkdir 命令用来创建指定的名称的目录 使用说明 1.  创建目录的用户在当前目录中具有写权限 2. 指定的目录名不能是当前目录中已有的目录. 命令实例 0. 帮助文件 bixiaopen ...

  7. python3-day4(re正则表达式,冒泡)

    一.正则表达式常用 1.re.match:只尝试从字符串的查找,后面不作查找. 例子: import re text="aabcdefg123123" m=re.match('a' ...

  8. NetAnalyzer笔记 之 四. C#版的抓包软件

    [创建时间:2015-09-10 22:37:04] NetAnalyzer下载地址 不好意思啊,NetAnalyzer停更有点长了,今天继续填坑^&^ NetAnalyzer实现结构 在上一 ...

  9. 使用C++11实现无锁stack(lock-free stack)

    前几篇文章,我们讨论了如何使用mutex保护数据及使用使用condition variable在多线程中进行同步.然而,使用mutex将会导致一下问题: 等待互斥锁会消耗宝贵的时间 — 有时候是很多时 ...

  10. js方法调用

    <!DOCTYPE html> <html> <head> <title>测试</title> </head> <body ...