Spring
文章平均质量分 80
追求上进的码农
这个作者很懒,什么都没留下…
展开
-
Spring学习笔记(1)----简单的实例
开始接触Spring了,写下笔记方便以后使用。 首先需要准备Spring包,可从官方网站上下载。 下载解压后,必须的两个包是spring.jar和commons-logging.jar。此外为了便于测试加入了JUnit包。 在Myeclipse中创建Java项目。 编写一个接口类,为了简单,只加入了一个方法。package com.szy.spring.inte原创 2014-09-18 15:22:27 · 489 阅读 · 0 评论 -
Spring学习笔记(5)----依赖注入的简单实现
Spring的核心机制是依赖注入。依赖注入让bean与bean之间以配置文件组织在一起,而不是以硬编码的方式耦合在一起。依赖注入(Dependency Injection)和控制反转(Inversion of Control)是同一个概念。具体含义是:当某个角色(可能是一个Java实例,调用者)需要另一个角色(另一个Java实例,被调用者)的协助时,在传统的程序设计过程中,通常由调用者来创建被调用原创 2014-09-18 15:22:48 · 498 阅读 · 0 评论 -
Spring学习笔记(3)----编码剖析Spring管理Bean的原理
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http:/原创 2014-09-18 15:22:37 · 464 阅读 · 0 评论 -
J2EE项目架构最佳实践
基于项目的最差实践,可以总结出一套项目架构的最佳实践原则以便今后的复用和改进。 原则1. 时间总是非常紧,需求总是在变化,技术问题总是层出不穷,千万不要认为软件工程的问题不会发生在规范的公司和项目。每次一定要根据自己所处的位置作出正确的评估,比如项目经理做评估要留出足够的时间buffer,开发人员应当正确评价自己的工作量,尽可能开始工作。 原则2. 项目架构原创 2014-09-18 15:24:58 · 549 阅读 · 0 评论 -
Spring学习笔记(16)----使用Spring配置文件实现AOP
前面介绍了使用注解的方式,下面介绍使用配置文件的方式实现AOP。使用配置方式,Interceptor类中不包含任何注解。package com.szy.spring;import org.aspectj.lang.ProceedingJoinPoint;public class Interceptor{ public void doBefore() { S原创 2014-09-18 15:24:15 · 552 阅读 · 0 评论 -
Spring学习笔记(12)----静态代理模式分析演示
代理模式分为静态代理和动态代理。静态代理就是我们自己定义的代理类,动态代理是程序在运行时生成的代理类。下面演示下静态代理类。首先我们要定义一个接口:package com.szy.spring;public interface UserManager{ public void addUser(String username,String password); publi原创 2014-09-18 15:23:37 · 431 阅读 · 0 评论 -
Spring学习笔记(4)----Bean节点信息配置
默认情况下,Spring的Ioc容器启动时会初始化bean,但是我们可以指定Bean节点的lazy-init="true",来延迟初始化bean。这时候,只有第一次获取bean才会初始化bean。如 如果想对所有的bean有应用延迟初始化,可以在跟节点beans设置default-lazy-init="true",如下: 此外,如果我们还想UserBean在实例化是调用初始化方法时原创 2014-09-18 15:22:43 · 935 阅读 · 0 评论 -
Spring学习笔记(15)----使用Spring的注解方式实现AOP
下面介绍使用Spring框架进行AOP编程。首先我们需要导入需要的jar包:1.aspectjrt.jar2.aspectjweaver.jar3.cglib-nodep-2.1_3.jar 在spring中有两种方式实现面向切面编程,一种是基于XML配置,另一种是使用注解份额方式,在实际开放中我们可以任选其中的一种即可。 首先介绍下使用注解方式进行AOP开发。原创 2014-09-18 15:24:09 · 393 阅读 · 0 评论 -
Spring学习笔记(8)----属性注入的方式
Spring中属性注入的方式有三种:1.使用属性setter方法注入2.使用构造器注入3.使用注解方式注入 使用属性setter方法注入使用属性setter方法注入就是给属性添加set()方法,在前面都是使用这种方法。package com.szy.spring.service;import com.szy.spring.dao.PersonDao;pu原创 2014-09-18 15:23:10 · 581 阅读 · 0 评论 -
Spring学习笔记(7)----装配各种集合类型的属性
前面已经介绍了如何给属性注入对象,下面介绍一下如何装配集合类型的属性 1.Set类型private Set sets=new HashSet();//我们需要给它添加set方法public Set getSets() { return sets; } public void setSets(Set sets) { this.sets = sets; }原创 2014-09-18 15:23:04 · 442 阅读 · 0 评论 -
Spring学习笔记(14)----使用CGLIB实现AOP功能
好久没学习spring了,今天接着学习。接着这上面的例子,在上面的例子中我们的UserManagerImpl类是实现了UserManager接口,如果UserManagerImpl没有实现任何接口要怎么办呢?应为创建代理对象时我们需要指定接口的。Proxy.newProxyInstance(targetObject.getClass().getClassLoader(),原创 2014-09-18 15:24:04 · 876 阅读 · 0 评论 -
Spring学习笔记(10)----公共属性的注入配置
假设我们定义了四个bean类,其代码分别如下:package com.szy.spring.bean;public class Bean1 { private Bean2 bean2; private Bean3 bean3; private Bean4 bean4; public Bean2 getBean2() { return bean2; }原创 2014-09-18 15:23:21 · 378 阅读 · 0 评论 -
Spring学习笔记(9)----让Spring自动扫描和管理Bean
package com.szy.spring.service;import org.springframework.stereotype.Service;import com.szy.spring.dao.PersonDao;@Service("service")public class UserServiceImpl implements UserService{原创 2014-09-18 15:23:16 · 454 阅读 · 0 评论 -
Spring学习笔记(18)----使用Spring配置文件实现事务管理
由于我们要拦截UserDAOImpl中的方法,因此我们需要在配置文件中配置信息,在配置文件中使用了AOP技术来拦截方法。 这样Spring就能对这个类进行事务管理。 下面我们测试下数据库操作是否在同一事务中执行。假设我们的delete方法如原创 2014-09-18 15:24:25 · 595 阅读 · 0 评论 -
Spring学习笔记(17)----使用Spring注解方式管理事务
使用Spring+JDBC集成步骤如下: *配置数据源,例如: *配置事务,配置事务时,需要在xml配置文件中引入用于声明事务的tx命名空间,事务的配置有两种方式:注解方式和基于XML配置的方式 下面演示下使用Spring注解原创 2014-09-18 15:24:20 · 380 阅读 · 0 评论 -
Spring学习笔记(11)----自定义属性编辑器
前面我们所定义的属性都是几本的属性,如果我们定义一个属性是Date类型,例如如下类中:package com.szy.spring.bean;import java.util.Date;public class Bean { private Date date; public Date getDate() { return date; } publ原创 2014-09-18 15:23:26 · 777 阅读 · 0 评论 -
Spring学习笔记(6)----编码剖析Spring依赖注入的原理
在Spring学习笔记(3)中剖析了Spring管理Bean的原理,下面解释下Spring依赖注入的原理在进行依赖注入时,我们的配置文件如下配置:<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmln原创 2014-09-18 15:22:59 · 510 阅读 · 0 评论 -
Sping学习笔记(2)----实例化Bean的三种方式
Spring的实例化Bean有三种方式: 使用类构造器直接实例化 使用静态工厂的方法实例化 使用实例工厂方法实例化 三种方式对应的配置如下<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"原创 2014-09-18 15:22:32 · 471 阅读 · 0 评论 -
Spring学习笔记(13)----动态代理模式分析演示
上一节演示的是静态代理模式,本节演示的是静态代理模式,既然是动态,那么就不存在UserManagerImplProxy类。使用动态代理我们需要声明一个类SecurityHandler,这个类要实现InvocationHandler接口。在类中定义一个产生动态代理的方法newProxy();同时把我们验证的代码放到这个类中。通过SecurityHandler,当我们调用方法时默认会调用Sec原创 2014-09-18 15:23:42 · 485 阅读 · 0 评论