
Spring
文章平均质量分 83
huazaichang
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
spring的普通类中如何取session和request对像
在使用spring时,经常需要在普通类中获取session,request等对像.比如一些AOP拦截器类,在有使用struts2时,因为struts2有一个接口使用org.apache.struts2.ServletActionContext即可很方便的取到session对像.用法:ServletActionContext.getRequest().getSession();但在单独使转载 2014-04-15 21:59:24 · 1220 阅读 · 0 评论 -
【第六章】 AOP 之 6.5 AspectJ切入点语法详解 ——跟我学spring3
6.5.1 Spring AOP支持的AspectJ切入点指示符 切入点指示符用来指示切入点表达式目的,,在Spring AOP中目前只有执行方法这一个连接点,Spring AOP支持的AspectJ切入点指示符如下: execution:用于匹配方法执行的连接点; within:用于匹配指定类型内的方法执行;转载 2013-06-23 16:45:11 · 527 阅读 · 0 评论 -
【第五章】Spring表达式语言 之 5.4在Bean定义中使用EL—跟我学spring3
5.4.1 xml风格的配置 SpEL支持在Bean定义时注入,默认使用“#{SpEL表达式}”表示,其中“#root”根对象默认可以认为是ApplicationContext,只有ApplicationContext实现默认支持SpEL,获取根对象属性其实是获取容器中的Bean。 首先看下配置方式(chapter5/el1.xml)吧:转载 2013-06-23 16:42:04 · 526 阅读 · 0 评论 -
【第五章】Spring表达式语言 之 5.1 概述 5.2 SpEL基础 ——跟我学spring3
5.1 概述5.1.1 概述 Spring表达式语言全称为“Spring Expression Language”,缩写为“SpEL”,类似于Struts2x中使用的OGNL表达式语言,能在运行时构建复杂表达式、存取对象图属性、对象方法调用等等,并且能与Spring功能完美整合,如能用来配置Bean定义。 表达式语言给静态Java语言增加了动态功能。转载 2013-06-23 16:33:00 · 499 阅读 · 0 评论 -
【第十三章】 测试 之 13.1 概述 13.2 单元测试 13.3集成测试——跟我学spring3
13.1 概述13.1.1 测试软件测试的目的首先是为了保证软件功能的正确性,其次是为了保证软件的质量,软件测试相当复杂,已经超出本书所涉及的范围,本节将只介绍软件测试流程中前两个步骤:单元测试和集成测试。 Spring提供了专门的测试模块用于简化单元测试和集成测试,单元测试和集成测试一般由程序员实现。 13.2 单元测试 13.2.1 概述转载 2013-06-24 09:09:00 · 738 阅读 · 0 评论 -
【第十一章】 SSH集成开发积分商城 之 11.3 实现积分商城层 ——跟我学spring3
首页资讯 精华 论坛问答 博客 专栏 群组更多 ▼招聘搜索 您还未登录 !登录 注册 开涛的博客博客微博相册收藏留言关于我 【第十一章】 SSH集成开发积分商城 之 11.3 实现积分商城层 ——跟我学spring3博客分类:跟我学springsp转载 2013-06-24 08:56:55 · 981 阅读 · 0 评论 -
【第十一章】 SSH集成开发积分商城 之 11.1 概述 ——跟我学spring3
11.1 概述11.1.1 功能概述 本节将通过介绍一个积分商城系统来演示如何使用SSH集成进行开发。 积分商城一般是购物网站的子模块,提供一些礼品或商品用于奖励老用户或使用积分来折换成现金,如图11-1所示。 图11-1 购物网站与积分商城 积分商城功能点:后台管理 交易管理模块:转载 2013-06-24 08:55:49 · 692 阅读 · 0 评论 -
【第九章】 Spring的事务 之 9.1 数据库事务概述 9.2 事务管理器——跟我学spring3
9.1 数据库事务概述事务首先是一系列操作组成的工作单元,该工作单元内的操作是不可分割的,即要么所有操作都做,要么所有操作都不做,这就是事务。 事务必需满足ACID(原子性、一致性、隔离性和持久性)特性,缺一不可:原子性(Atomicity):即事务是不可分割的最小工作单元,事务内的操作要么全做,要么全不做;一致性(Consistency):在事务执行前数据库的数转载 2013-06-24 08:36:23 · 764 阅读 · 0 评论 -
【第七章】 对JDBC的支持 之 7.5 集成Spring JDBC及最佳实践 ——跟我学spring3
7.5 集成Spring JDBC及最佳实践 大多数情况下Spring JDBC都是与IOC容器一起使用。通过配置方式使用Spring JDBC。 而且大部分时间都是使用JdbcTemplate类(或SimpleJdbcTemplate和NamedParameterJdbcTemplate)进行开发,即可能80%时间使用JdbcTemplate类,而只有20转载 2013-06-24 08:16:47 · 606 阅读 · 0 评论 -
【第七章】 对JDBC的支持 之 7.4 Spring提供的其它帮助 ——跟我学spring3
7.4 Spring提供的其它帮助 7.4.1 SimpleJdbc方式 Spring JDBC抽象框架提供SimpleJdbcInsert和SimpleJdbcCall类,这两个类通过利用JDBC驱动提供的数据库元数据来简化JDBC操作。 1、SimpleJdbcInsert: 用于插入数据,根据数据库元数据进行插入数据,本类用于简化插入操作,提供三转载 2013-06-24 08:16:27 · 657 阅读 · 0 评论 -
【第七章】 对JDBC的支持 之 7.3 关系数据库操作对象化 ——跟我学spring3
7.3.1 概述 所谓关系数据库对象化其实就是用面向对象方式表示关系数据库操作,从而可以复用。Spring JDBC框架将数据库操作封装为一个RdbmsOperation,该对象是线程安全的、可复用的对象,是所有数据库对象的父类。而SqlOperation继承了RdbmsOperation,代表了数据库SQL操作,如select、update、call等,如图7-4所转载 2013-06-24 08:15:35 · 611 阅读 · 0 评论 -
【第六章】 AOP 之 6.9 代理机制 ——跟我学spring3
Spring AOP通过代理模式实现,目前支持两种代理:JDK动态代理、CGLIB代理来创建AOP代理,Spring建议优先使用JDK动态代理。JDK动态代理:使用java.lang.reflect.Proxy动态代理实现,即提取目标对象的接口,然后对接口创建AOP代理。CGLIB代理:CGLIB代理不仅能进行接口代理,也能进行类代理,CGLIB代理需要注意以下问题:转载 2013-06-23 16:46:28 · 514 阅读 · 0 评论 -
【第六章】 AOP 之 6.8 切面实例化模型 ——跟我学spring3
所谓切面实例化模型指何时实例化切面。 Spring AOP支持AspectJ的singleton、perthis、pertarget实例化模型(目前不支持percflow、percflowbelow 和pertypewithin)。singleton:即切面只会有一个实例;perthis:每个切入点表达式匹配的连接点对应的AOP对象都会创建一个新切面实例;pertarg转载 2013-06-23 16:46:11 · 445 阅读 · 0 评论 -
【第六章】 AOP 之 6.7 通知顺序 ——跟我学spring3
如果我们有多个通知想要在同一连接点执行,那执行顺序如何确定呢?Spring AOP使用AspectJ的优先级规则来确定通知执行顺序。总共有两种情况:同一切面中通知执行顺序、不同切面中的通知执行顺序。 首先让我们看下 1) 同一切面中通知执行顺序:如图6-6所示。 图6-6 同一切面中的通知执行顺序而如果在同一切面中定义两个相同类型通知(如转载 2013-06-23 16:45:50 · 571 阅读 · 0 评论 -
【第七章】 对JDBC的支持 之 7.1 概述 ——跟我学spring3
7.1 概述7.1.1 JDBC回顾 传统应用程序开发中,进行JDBC编程是相当痛苦的,如下所示: java代码:Java代码 //cn.javass.spring.chapter7. TraditionalJdbcTest @Test public void test() throws Exception {转载 2013-06-23 16:46:51 · 535 阅读 · 0 评论 -
【第八章】 对ORM的支持 之 8.1 概述 8.2 集成Hibernate——跟我学spring3
8.1 概述8.1.1 ORM框架 ORM全称对象关系映射(Object/Relation Mapping),指将Java对象状态自动映射到关系数据库中的数据上,从而提供透明化的持久化支持,即把一种形式转化为另一种形式。 对象与关系数据库之间是不匹配,我们把这种不匹配称为阻抗失配,主要表现在:关系数据库首先不支持面向对象技术如继承、多态,如何转载 2013-06-24 08:18:03 · 872 阅读 · 0 评论 -
Spring使用序列Sequence的两种方法
CREATE TABLE Booking ( id INTEGER NOT NULL, date_made DATE, reserved_until TIMESTAMP, price DECIMAL(15, 2) NOT NULL, Purchase_id INTEGER, PRIMARY KEY(id)) create sequence bookin原创 2013-07-18 17:27:20 · 1213 阅读 · 0 评论 -
【第十章】集成其它Web框架 之 10.1 概述 集成Struts1.x ——跟我学spring3
10.1 概述10.1.1 Spring和Web框架 Spring框架不仅提供了一套自己的Web框架实现,还支持集成第三方Web框架(如Struts1x、Struts2x)。 Spring实现的SpringMVC Web框架将在第十八章详细介绍。 由于现在有很大部分公司在使用第三方Web框架,对于并不熟悉Spr转载 2013-06-24 08:54:08 · 778 阅读 · 0 评论 -
【第八章】 对ORM的支持 之 8.4 集成JPA ——跟我学spring3
8.4 集成JPA JPA全称为Java持久性API(Java Persistence API),JPA是Java EE 5标准之一,是一个ORM规范,由厂商来实现该规范,目前有Hibernate、OpenJPA、TopLink、EclipseJPA等实现。 8.4.1 如何集成 Spring目前提供集成Hibernate、OpenJPA、Top转载 2013-06-24 08:32:23 · 965 阅读 · 0 评论 -
【第六章】 AOP 之 6.6 通知参数 ——跟我学spring3
前边章节已经介绍了声明通知,但如果想获取被被通知方法参数并传递给通知方法,该如何实现呢?接下来我们将介绍两种获取通知参数的方式。使用JoinPoint获取:Spring AOP提供使用org.aspectj.lang.JoinPoint类型获取连接点数据,任何通知方法的第一个参数都可以是JoinPoint(环绕通知是ProceedingJoinPoint,JoinPoint子类),当然第一转载 2013-06-23 16:45:29 · 753 阅读 · 0 评论 -
【第六章】 AOP 之 6.1 AOP基础 ——跟我学spring3
6.1.1 AOP是什么 考虑这样一个问题:需要对系统中的某些业务做日志记录,比如支付系统中的支付业务需要记录支付相关日志,对于支付系统可能相当复杂,比如可能有自己的支付系统,也可能引入第三方支付平台,面对这样的支付系统该如何解决呢?传统解决方案: 1)日志部分提前公共类LogUtils,定义“longPayBegin”转载 2013-06-23 16:42:29 · 514 阅读 · 0 评论 -
【第五章】Spring表达式语言 之 5.3 SpEL语法 ——跟我学spring3
5.3 SpEL语法5.3.1 基本表达式一、字面量表达式: SpEL支持的字面量包括:字符串、数字类型(int、long、float、double)、布尔类型、null类型。类型示例字符串String str1 = parser.parseExpression("'Hello World!'").转载 2013-06-23 16:33:52 · 525 阅读 · 0 评论 -
【第十二章】零配置 之 12.5 综合示例-积分商城 ——跟我学spring3
12.5 综合示例12.5.1 概述在第十一章中我们介绍了SSH集成,在进行SSH集成时都是通过基于XML配置文件配置每层的Bean,从而产生许多XML配置文件,本节将通过注解方式消除部分XML配置文件,实现所谓的零配置。 12.5.2 项目拷贝 1、拷贝【第十一章 SSH集成开发】中的“pointShop”项目将其命名为“pointShop2”;转载 2013-06-24 09:08:19 · 756 阅读 · 0 评论 -
【第十二章】零配置 之 12.3 注解实现Bean定义、12.4基于Java类定义Bean配置元数据 ——跟我学spring3
12.3 注解实现Bean定义12.3.1 概述前边介绍的Bean定义全是基于XML方式定义配置元数据,且在【12.2注解实现Bean依赖注入】一节中介绍了通过注解来减少配置数量,但并没有完全消除在XML配置文件中的Bean定义,因此有没有方式完全消除XML配置Bean定义呢? Spring提供通过扫描类路径中的特殊注解类来自动注册Bean定义。同注解驱动事务一样需转载 2013-06-24 09:05:57 · 1920 阅读 · 0 评论 -
【第十二章】零配置 之 12.1 概述 12.2 注解实现Bean依赖注入 ——跟我学spring3
12.1 概述12.1.1 什么是零配置 在SSH集成一章中大家注意到项目结构和包结构是不是很有规律,类库放到WEB-INF/lib文件夹下,jsp文件放到WEB-INF/jsp文件夹下,web.xml需要放到WEB-INF文件夹下等等,为什么要这么放呢?不这样放可以吗? 所谓零配置,并不是说一点配置都没有了,而是配置很少而已。通过约定来减转载 2013-06-24 09:04:32 · 840 阅读 · 0 评论 -
【第十一章】 SSH集成开发积分商城 之 11.2 实现通用层 ——跟我学spring3
11.2 实现通用层11.2.1 功能概述通过抽象通用的功能,从而复用,减少重复工作:对于一些通用的常量使用一个专门的常量类进行定义;对于视图分页,也应该抽象出来,如JSP做出JSP标签;通用的数据层代码,如通用的CRUD,减少重复劳动,节约时间;通用的业务逻辑层代码,如通用的CRUD,减少重复劳动,节约时间;通用的表现层代码,同样用于减少重复,并提供更好的代码结构规范。转载 2013-06-24 08:56:24 · 1302 阅读 · 0 评论 -
【第十章】集成其它Web框架 之 10.3 集成Struts2.x 集成JSF ——跟我学spring3
先进行通用配置, 【第十章】集成其它Web框架 之 10.1 概述 10.3 集成Struts2.x10.3.1 概述Struts2前身是WebWork,核心并没有改变,其实就是把WebWork改名为struts2,与Struts1一点关系没有。 Struts2中通过ObjectFactory接口实现创建及获取Action实例,类似于Spring的Io转载 2013-06-24 08:54:31 · 756 阅读 · 0 评论 -
【第九章】 Spring的事务 之 9.4 声明式事务 ——跟我学spring3
9.4 声明式事务9.4.1 声明式事务概述 从上节编程式实现事务管理可以深刻体会到编程式事务的痛苦,即使通过代理配置方式也是不小的工作量。 本节将介绍声明式事务支持,使用该方式后最大的获益是简单,事务管理不再是令人痛苦的,而且此方式属于无侵入式,对业务逻辑实现无影响。 接下来先来看看声明式事务如何实现吧。9.4.2 声明式转载 2013-06-24 08:53:19 · 581 阅读 · 0 评论 -
【第四章】 资源 之 4.3 访问Resource ——跟我学spring3
4.3.1 ResourceLoader接口 ResourceLoader接口用于返回Resource对象;其实现可以看作是一个生产Resource的工厂类。 java代码:Java代码 public interface ResourceLoader { Resource getResource(String loc转载 2013-06-23 13:11:13 · 729 阅读 · 0 评论 -
【第四章】 资源 之 4.2 内置Resource实现 ——跟我学spring3
4.2 内置Resource实现4.2.1 ByteArrayResource ByteArrayResource代表byte[]数组资源,对于“getInputStream”操作将返回一个ByteArrayInputStream。首先让我们看下使用ByteArrayResource如何处理byte数组资源: java代码:Java代转载 2013-06-23 13:10:39 · 581 阅读 · 0 评论 -
【第二章】 IoC 之 2.1 IoC基础 ——跟我学Spring3
2.1.1 IoC是什么Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想。在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。如何理解好Ioc呢?理解好Ioc的关键是要明确“谁控制谁,控制什么,为何是反转(有反转就应该有正转了),哪些方面反转了”,那我们来深入分析一下: ●谁控制谁转载 2013-06-21 21:10:17 · 528 阅读 · 0 评论 -
»Spring 之AOP AspectJ切入点语法详解(最全了,不需要再去其他地找了)
6.5 AspectJ切入点语法详解6.5.1 Spring AOP支持的AspectJ切入点指示符 切入点指示符用来指示切入点表达式目的,,在Spring AOP中目前只有执行方法这一个连接点,Spring AOP支持的AspectJ切入点指示符如下: execution:用于匹配方法执行的连接点; within:用于匹配指定类型内转载 2013-06-21 20:32:23 · 731 阅读 · 0 评论 -
Spring配置文件总结
1.基本配置:xml version="1.0" encoding="UTF-8"?>beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springfra转载 2013-06-20 22:08:42 · 414 阅读 · 0 评论 -
我对IoC/DI的理解
IoC IoC: Inversion of Control,控制反转, 控制权从应用程序转移到框架(如IoC容器),是框架共有特性 1、为什么需要IoC容器1.1、应用程序主动控制对象的实例化及依赖装配 Java代码 A a = new AImpl(); B b = new BImpl(); a.setB(b); A a转载 2013-06-20 16:14:06 · 560 阅读 · 0 评论 -
Spring定时任务配置详解 quartz cronExpression
cron的表达式被用来配置CronTrigger实例。cron的表达式是字符串,实际上是由七子表达式,描述个别细节的时间表。这些子表达式是分开的空白,代表: 1. Seconds 2. Minutes 3. Hours 4. Day-of-Month 5. Month 6.原创 2013-01-29 13:51:18 · 953 阅读 · 0 评论 -
Spring AOP配置(Annotation;Xml)
Spring实现动态代理配置是有两种配置文件:1、 xml文件方式;2、 annotation方式(使用AspectJ类库实现的。)一、 AOP配置annotation方式(一) 搭建annotation开发环境首先:需要在配置文件中加入@AspectJ标签自动帮我产生代理注意:Spring默认并没有加入aop的xsd文件,因为我们需要手动原创 2013-01-29 13:50:42 · 891 阅读 · 0 评论 -
Spring事务配置的五种方式
前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识。通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的。 总结如下: Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是原创 2013-01-29 13:50:40 · 265 阅读 · 0 评论 -
spring定时器的使用
之前有写过一篇spring3.0定时器的配置:http://blog.youkuaiyun.com/cl61917380/article/details/6265664spring3.0确实是要简单好多,不过很多项目都还没有升级到spring3.0所以对于2.5的配置也需要了解。我这里只说明spring的配置,如果不会整合的朋友可以查看我写的关于SSH或SSI整合的配置。下面说明详细的配置:appli原创 2013-01-29 13:51:16 · 322 阅读 · 0 评论 -
Spring声明式事务配置管理方法(二)
附四、Spring中的四种声明式事务的配置让我们言归正传吧。以下两个bean的配置是下面要用到的。beanid="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> propertyname="sessionFactory"> ref原创 2013-01-29 13:50:09 · 268 阅读 · 0 评论 -
Spring声明式事务配置管理方法(一)
事务配置首先在/WEB-INF/applicationContext.xml添加以下内容:bean id="transactionManager"class="org.springframework.orm.hibernate3.HibernateTransactionManager"> property name="sessionFactory">ref bean="myS原创 2013-01-29 13:50:07 · 414 阅读 · 0 评论