Spring
文章平均质量分 82
zfsn7722483
这个作者很懒,什么都没留下…
展开
-
spring security 配置文件小结(1)
# 一 、方式一:用户名密码都在配置文件中。 # <?xml version="1.0" encoding="UTF-8"?> # <beans:beans xmlns="http://www.springframework.org/schema/security" # xmlns:beans="http://www.springframework.or...原创 2009-10-29 18:26:45 · 83 阅读 · 0 评论 -
spring声明式事务
Spring中几种常见的事务配置,是Aop和Ioc的充分体现以下两个bean的配置是下面要用到的。<!-- 定义事务管理器(声明式的事务) --><bean id="transactionManager"class="org.springframework.orm.hibernate3.HibernateTransactionManager"><property na...原创 2010-05-11 14:26:43 · 83 阅读 · 0 评论 -
spring事务配置方法(BeanNameAutoProxyCreator)
采用这种配置策略,完全可以避免增量式配置,所有的事务代理由系统自动创建。容器中的目标bean自动消失,避免需要使用嵌套bean来保证目标bean不可被访问。这种配置方式依赖于Spring提供的bean后处理器,该后处理器用于为每个bean自动创建代理,此处的代理不仅可以是事务代理,也可以是任意的代理,只需要有合适的拦截器即可。这些是AOP框架的概念,笔者在此处不对AOP进行深入介绍。读者只需了解这...原创 2010-05-11 15:05:14 · 585 阅读 · 0 评论 -
spring事务配置方法(TransactionProxyFactoryBean继承)
大部分情况下,每个事务代理的事务属性大同小异,事务代理的实现类都是TransactionProxyFactoryBean,事务代理bean都必须注入事务管理器。对于这种情况,Spring提供了bean与bean之间的继承,可以简化配置。将大部分的通用配置,配置成事务模板,而实际的事务代理bean,则继承事务模板。这种配置方式可以减少部分配置代码,下面是采用继承的配置文件:Xml代码...原创 2010-05-11 15:07:26 · 148 阅读 · 0 评论 -
spring事务配置方法(TransactionProxyFactoryBean)
采用这种方式的配置时候,配置文件的增加非常快,每个bean有需要两个bean配置,一个目标,另外还需要使用TransactionProxyFactoryBean配置一个代理bean。这是一种最原始的配置方式,下面是使用TransactionProxyFactoryBean的配置文件:Xml代码<?xml version="1.0" encoding="gb2312"?>...原创 2010-05-11 15:10:56 · 236 阅读 · 0 评论 -
spring事务配置方法(BeanNameAutoProxyCreator)
采用这种配置策略,完全可以避免增量式配置,所有的事务代理由系统自动创建。容器中的目标bean自动消失,避免需要使用嵌套bean来保证目标bean不可被访问。这种配置方式依赖于Spring提供的bean后处理器,该后处理器用于为每个bean自动创建代理,此处的代理不仅可以是事务代理,也可以是任意的代理,只需要有合适的拦截器即可。这些是AOP框架的概念,笔者在此处不对AOP进行深入介绍。读者只需了解这...原创 2010-05-11 15:18:02 · 89 阅读 · 0 评论 -
反射实现 AOP 动态代理模式(1)
其实AOP的意思就是面向切面编程.OO注重的是我们解决问题的方法(封装成Method),而AOP注重的是许多解决解决问题的方法中的共同点,是对OO思想的一种补充!还是拿人家经常举的一个例子讲解一下吧:比如说,我们现在要开发的一个应用里面有很多的业务方法,但是,我们现在要对这个方法的执行做全面监控,或部分监控.也许我们就会在要一些方法前去加上一条日志记录,我们写个例子看看我们最简单的解决方案我们先写...原创 2010-08-05 12:37:08 · 103 阅读 · 0 评论 -
反射实现 AOP 动态代理模式(2)
上面类中出现的Logger类和Level枚举还是和上一上例子的实现是一样的.这里就不贴出代码了.让我们写一个Test类去测试一下.代码如下:Test.java 1package sinosoft.dj.aop.proxyaop; 2 3public class Test { 4 public static void main(String[] args) { 5 IHel...原创 2010-08-05 12:40:59 · 93 阅读 · 0 评论 -
在Struts中基于Spring的AOP MethodInterceptor(拦截器)的权限验证
本程序是关于"某考试系统"中的aop应用.说实话,aop在spring应该算是个难点,它主是起到了"代理"的作 用,aop会为你调用的方法的对象生成代理,这个代理是继承调用 MethodInterceptor这个拦截器的对象的,所以,具备原有对象的所有方法与特性.AOP不神秘,它就是EJB的进化,只是EJB需要显式的实现接 口,而AOP不用,它会自动帮你生成代理,来做很多事情,AOP,我觉得它在处...原创 2010-08-13 13:34:24 · 111 阅读 · 0 评论 -
使用 Spring 2.5 注释驱动的 IoC 功能(1)
概述注释配置相对于 XML 配置具有很多的优势:它可以充分利用 Java 的反射机制获取类结构信息,这些信息可以有效减少配置的工作。如使用 JPA 注释配置 ORM 映射时,我们就不需要指定 PO 的属性名、类型等信息,如果关系表字段和 PO 属性名、类型都一致,您甚至无需编写任务属性映射信息——因为这些信息都可以通过 Java 反射机制获取。 注释和 Java 代码位于一个文件中,而 X...原创 2010-06-25 16:36:09 · 104 阅读 · 0 评论 -
使用 Spring 2.5 注释驱动的 IoC 功能(2)
使用 JSR-250 的注释Spring 不但支持自己定义的 @Autowired 的注释,还支持几个由 JSR-250 规范定义的注释,它们分别是 @Resource、@PostConstruct 以及 @PreDestroy。@Resource@Resource 的作用相当于 @Autowired,只不过 @Autowired 按 byType 自动注入,面 @Resource 默...原创 2010-06-25 16:37:27 · 93 阅读 · 0 评论 -
Spring AOP 入门实例
AOP 面向切面,可以让我们在不修改业务代码的前提下,在业务代码执行前后进行执行相应的模块,这样,我们就可以把诸如日志的功能模块合核心业务模块分隔开来,以往的的日志做法都是由核心模块主动的调用日志记录功能,耦合性很强,使用AOP技术,可以将日志模块作为切面,插入到核心业务前执行,核心业务并不主动的调用日志记录功能本例中使用GreetingHelloworldImpl代表核心业务模块,使用Log...2010-05-01 19:18:11 · 82 阅读 · 0 评论 -
使用动态代理实现简单AOP
Spring默认使用JDK动态代理来实现AOP,如果业务对象没有实现接口,默认使用CGLIB代理,面向接口编程是一个良好得习惯,尽量不要面向具体类首先,有个Dog接口package AOP.SimapleAOP;public interface Dog ...{ public void info(); public void run();} 然后给出这个接口...2010-05-01 19:02:33 · 77 阅读 · 0 评论 -
spring security 配置文件小结(2)
# 六、为了使用MD5对密码加密,我们需要修改一下配置文件。 # 任何一个正式的企业应用中,都不会在数据库中使用明文来保存密码的,我们在之前的章节中都是为了方便起见没有对数据库中的用户密码进行加密,这在实际应用中是极为幼稚的做法。可以想象一下,只要有人进入数据库就可以看到所有人的密码,这是一件多么恐怖的事情,为此我们至少要对密码进行加密,这样即使数据库被攻破,也可以保证用户密码的安全。 ...原创 2009-10-29 18:30:17 · 134 阅读 · 0 评论 -
Spring完全整合DWR
DWR的优势在项目中很容易体现出来,近乎完美的封装,超级简单的配置,在现在的Web项目中不使用DWR不是明智的举动。 给人直观的感觉就是可以在JSP页面中直接调用Service Bean中的方法,并且将返回值返回到页面,页面中可以直接使用。 如果项目中同时使用到了Spring和DWR,就必须对两者进行整合,原因很简单,因为DWR负责进行远程创建对象,在DWR进行远程创建的过程中...原创 2009-10-29 18:32:03 · 156 阅读 · 0 评论 -
Spring ~IOC Annotations
1.1 零配置使用场合 IOC Annotations 可以实现零配置,但也因为不用在applicationContext.xml中定义了,也就缺乏了灵活的,不修改代码的IOC手段,也无法做一些属性值的配置。 所以,IOC annotation 常用于Service,Dao,Controller 这些依赖关系比较固定,约定俗成大于配置的地方。 而XML 配置文件则用...原创 2009-10-29 18:49:56 · 95 阅读 · 0 评论 -
Spring中的Quartz配置
Quartz是一个强大的企业级任务调度框架,Spring中继承并简化了Quartz,下面就看看在Spring中怎样配置Quartz。首先我们来写一个被调度的类: package job;public class QuartzJob { public void work() { System.out.println("Quartz的任务调度!!!"...2009-11-07 10:16:49 · 98 阅读 · 0 评论 -
使用Spring发邮件
关于Spring的邮件发送的功能演示:(我把程序中一些敏感的地方替换成了其他的文字,直接调试肯定不行,只是给大家一个参考) 需要用到的jar包是 spring-context.jar mail.jar spring-core.jar activation.jar commons-logging.jar 这些是程序必须要用到的包。 1:简单邮件 简单邮件中是可以实现...原创 2009-11-07 14:15:47 · 75 阅读 · 0 评论 -
Quartz在Spring中动态设置cronExpression
什么是动态定时任务:是由客户制定生成的,服务端只知道该去执行什么任务,但任务的定时是不确定的(是由客户制定)。 这样总不能修改配置文件每定制个定时任务就增加一个trigger吧,即便允许客户修改配置文件,但总需要重新启动web服务啊,研究了下Quartz在Spring中的动态定时,发现<bean id="cronTrigger" class="org.springframewor...原创 2009-11-20 15:26:44 · 88 阅读 · 0 评论 -
几种加载Spring的配置文件的方式
package com.liu.test;public class BeanFile { private String beanFile = "多种方式加载Bean的配置文件"; public void setBeanFile(String beanFile) { this.beanFile = beanFile; } pub...2010-05-01 16:49:09 · 90 阅读 · 0 评论 -
使用Spring方法注入协调不同步的bean
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"><beans> <bean i2010-05-01 18:00:53 · 107 阅读 · 0 评论 -
Spring的BeanFactory
一、Spring装配Bean的过程 1. 实例化; 2. 设置属性值; 3. 如果实现了BeanNameAware接口,调用setBeanName设置Bean的ID或者Name; 4. 如果实现BeanFactoryAware接口,调用setBeanFactory 设置BeanFactory; 5. 如果实现ApplicationContextAware,调用setApplicationConte...2010-05-01 18:17:51 · 83 阅读 · 0 评论 -
Sping acegi 配置文件
applicationContext-acegi-security.xml<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">&a2010-05-01 18:23:36 · 108 阅读 · 0 评论 -
Spring事务配置的五种方式
前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识。通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的。 总结如下: Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的...原创 2010-06-25 16:51:59 · 77 阅读 · 0 评论