
spring学习笔记
iteye_12702
这个作者很懒,什么都没留下…
展开
-
<1> spring学习导读
最近比较闲,把自己的笔记整理下,虽然都是些入门的东西,还是值得以后回味一下。先从spring开始,主要参考《spring in action(第二版)》和网络资料。Spring是一个开源框架,为简化企业级应用开发应运而生的。[i]注:框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架。...原创 2013-08-09 22:16:26 · 121 阅读 · 0 评论 -
<2> 基本bean装配
本篇只介绍基本的最常用的bean装配知识,高级装配在下篇简要梳理。在spring中,组件无需自己负责与其他组件的关联,取而代之的是,容器负责把协作组件的引用给予各个组件。创建系统组件之间协作关系的动作是DI的关键,通常被称之为装配。Spring容器是Spring框架的核心,容器可以创建组件,装配和配置组件,以及管理他们的生命周期(从new()到finalize())。Sprin...原创 2013-08-10 17:57:34 · 179 阅读 · 0 评论 -
<3> 高级bean装配
相对上篇,这次内容有些不太常用,但有些还是非常有用,不能忽略。掌握之后对理解spring的源码也很有好处。[b]一、父bean和子bean[/b]bean也可以继承,为此spring提供了两个属性:parent: 指明bean的id.它对于的作用就相当于java关键字extends(但功能又有所不同,后面会看到子bean可以和父bean具有不同的class类型).abstrac...原创 2013-08-12 10:02:10 · 132 阅读 · 0 评论 -
<4> 简记aop原理和使用
前面把IOC的主要内容都介绍完了,这篇就是另一个spring的核心:aop在软件中,有些行为对大多数模块说都是通用的。如登录、日志、性能统计、安全和事务管理都是重要的事情又是公共的功能,与业务模块功能需要配合一起工作,如果把这些公共功能与业务功能模块交织在一起编码,则到处散乱,对代码的维护,修改,响应变化都不方便。在程序开发中,散布于程序中多个地方的函数被称为“交叉事务”。应该把他们与...2013-08-12 20:27:37 · 152 阅读 · 0 评论 -
<Spring-Aspect> 切面类(@Aspect)首先必须是bean
[b]1. 问题描述[/b]今天发现老工程里有个日志切面但是总是也没有执行过。[b]2. 问题解决[/b]1)怀疑是execution表达式问题,先后改动了AspectJ表达式也不生效。2)在idea里打断点调试,tomcat启动后发现[color=red]断点红圈没有打勾[/color](这种情况就表示代码永远不会走进来)。最后一看,这个被标注了@Aspect的切...2015-07-20 14:08:16 · 2237 阅读 · 0 评论 -
<spring-aop> BeanNotOfRequiredTypeException 切面异常
[b]1. 问题描述[/b]往工程里添加切面,定义了,切的是实现了接口的类,这样的话使用jdk代理应该没啥问题。但是启动时报错:[code="java"]BeanNotOfRequiredTypeExceptionorg.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'x' must b...2015-07-24 17:59:53 · 636 阅读 · 1 评论 -
<spring-expected at least 1 matching bean> 缺少bean定义
[b]1. 问题描述[/b]...Error creating bean with name 'A': Injection of resource fields failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type...2016-03-04 10:37:28 · 1048 阅读 · 0 评论 -
<spring> 定时任务每次都执行两次的问题,慎用new ClassPathXmlApplicationContext()
[b]1.问题描述[/b]singleton的bean,spring配置定时任务新增一个定时任务后每次触发定时任务都是执行两次。[b]2.问题分析[/b]新增的定时任务类有点特殊,里面调用了另一个不受spring管理的对象,这个对象里又需要使用spring管理的单例bean,就在对象里使用了new ClassPathXmlApplicationContext()然后getBean(...2015-02-26 14:17:03 · 378 阅读 · 0 评论