![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring
飘渺时光
这个作者很懒,什么都没留下…
展开
-
Bean的命名 id属性和name属性以及作用域scope
一般情况下,装配一个Bean时,通过指定一个id属性作为Bean的名称 。id 属性在IoC容器中必须是唯一的 id 的命名要满足XML对ID属性命名规范 必须以字母开始,可以使用字母、数字、连字符、下划线、句话、冒号 。如果Bean的名称中含有特殊字符,就需要使用name属性 例如: <bean name="#person" class="cn.itcast.bean.Person...原创 2019-01-24 20:23:16 · 1092 阅读 · 0 评论 -
使用Spring AOP的基础,切入点使AOP进行拦截技术
AOP:不是由Spring定义.AOP联盟的组织定义.AOP联盟为通知Advice定义了org.aopalliance.aop.Interface.Advice Spring按照通知Advice在目标类方法的连接点位置,可以分为5类前置通知 org.springframework.aop.MethodBeforeAdvice 在目标方法执行前实施增强 后置通知 org.sprin...原创 2019-02-13 20:12:02 · 467 阅读 · 0 评论 -
CGLIB动态代理
CGLIB(Code Generation Library)是一个开源项目!是一个强大的,高性能,高质量的Code生成类库,它可以在运行期扩展Java类与实现Java接口。package cn.cglib.proxy;import java.lang.reflect.Method;import org.springframework.cglib.proxy.Enhancer;imp...原创 2019-02-13 15:06:43 · 202 阅读 · 0 评论 -
有关SPRING的事务传播特性
PROPAGATION_REQUIRED--支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。 PROPAGATION_SUPPORTS--支持当前事务,如果当前没有事务,就以非事务方式执行。 PROPAGATION_MANDATORY--支持当前事务,如果当前没有事务,就抛出异常。 PROPAGATION_REQUIRES_NEW--新建事务,如果当前存...原创 2019-02-11 21:07:49 · 161 阅读 · 0 评论 -
Bean的生命周期的11个步骤
Bean的生命周期的11个步骤:1.instantiate bean对象实例化2.populate properties 封装属性3.如果Bean实现BeanNameAware 执行 setBeanName4.如果Bean实现BeanFactoryAware 或者 ApplicationContextAware 设置工厂 setBeanFactory 或者上下文对象 setApp...原创 2019-02-11 17:23:50 · 481 阅读 · 0 评论 -
Spring的junit的集成测试
程序中有Junit环境. 导入一个jar包.spring与junit整合jar包. * spring-test-3.2.0.RELEASE.jar 测试代码:(这种方式自动注入,测试方便) package cn.test;import org.junit.Test;import org.junit.runner.RunWith;import org.springframe...原创 2019-02-11 17:00:48 · 378 阅读 · 0 评论 -
spring和web的整合
在Servlet的init方法中加载Spring配置文件? 当前这个Servlet可以使用,但是其他的Servlet的用不了了!!! 将加载的信息内容放到ServletContext中.ServletContext对象时全局的对象.服务器启动的时候创建的.在创建ServletContext的时候就加载Spring的环境. ServletContextListener:用于监听Servlet...原创 2019-02-11 16:53:46 · 203 阅读 · 0 评论 -
Spring的事务管理之编程式事务管理(手动编写代码完成事务管理.)
需要事务管理器:真正管理事务对象.* Spring提供了事务管理的模板(工具类.)第一步:注册事务管理器:。第二步:注册事务模板类:。第三步:在业务层注入模板类:(模板类管理事务)。第四步:在业务层代码上使用模板。<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springf...原创 2019-02-16 21:04:02 · 376 阅读 · 1 评论 -
IOC装配Bean(注解方式)
Spring的注解装配BeanSpring2.5 引入使用注解去定义Bean@Component 描述Spring框架中BeanSpring的框架中提供了与@Component注解等效的三个注解:@Repository 用于对DAO实现类进行标注@Service 用于对Service实现类进行标注@Controller 用于对Controller实现类进行标注****...原创 2019-01-30 16:11:00 · 192 阅读 · 0 评论 -
Spring编写DAO实现数据的增删改查
为了方便DAO中注入JdbcTemplate,Spring为每一个持久化技术都提供了支持类:ORM 持久化技术 支持类 JDBC org.springframework.jdbc.core.support.JdbcDaoSupport Hibernate 3.0 org.springframework.orm.hibernate3.support.HibernateD...原创 2019-02-15 20:45:54 · 820 阅读 · 0 评论 -
Spring的JdbcTemplate
Spring对持久层技术支持:JDBC : org.springframework.jdbc.core.JdbcTemplateHibernate3.0 : org.springframework.orm.hibernate3.HibernateTemplateIBatis(MyBatis) : org.springframework.orm.ibatis.SqlMapClientTe...原创 2019-02-15 18:01:16 · 157 阅读 · 0 评论 -
基于AspectJ的Xml配置方式设置通知
第一步:编写被增强的类:* ProductDao第二步:定义切面第三步:配置applicationContext.xmll前置通知:public void before(){System.out.println("前置通知...");}* 配置:<aop:config><!-- 定义切点: --><aop:pointcu...原创 2019-02-14 21:20:27 · 271 阅读 · 0 评论 -
基于AspectJ的注解和通知类型:
第一步:引入相应jar包.* aspectj依赖aop环境.* spring-aspects-3.2.0.RELEASE.jar* com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar第二步:编写被增强的类:InfoDao第三步:使用AspectJ注解形式:@Aspectpublic class MyAspect ...原创 2019-02-14 20:17:25 · 525 阅读 · 0 评论 -
Spring框架Bean的实例化的方式
1. <!-- 默认的是无参的构造方法 --> <bean id="bean1" class="cn.spring1.Bean1"></bean>2. <!-- 第二种是使用静态工厂实例化,中的类是写静态工厂的类名 --> <bean id="bean2" class="cn.spring原创 2019-01-22 20:14:47 · 243 阅读 · 0 评论 -
在使用spring的配置属性注入出现 cvc-complex-type.3.2.2: 元素 'constructor-arg' 中不允许出现属性 'name'
在使用spring的配置属性注入出现cvc-complex-type.3.2.2: 元素 'constructor-arg' 中不允许出现属性 'name' 由于没有指明版本号错误读了3.0以前的版本dao'导致错误...原创 2019-01-25 20:15:59 · 2568 阅读 · 0 评论 -
spring的自动代理的方式
自动创建代理(基于后处理Bean.在Bean创建的过程中完成的增强.生成Bean就是代理.)BeanNameAutoProxyCreator :按名称生成代理<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xm...原创 2019-02-14 15:37:42 · 380 阅读 · 0 评论