
Spring
文章平均质量分 82
小飞鹤
这个作者很懒,什么都没留下…
展开
-
Spring事务配置的五种方式
Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分。 DataSource、TransactionManager这两部分只是会根据数据访问方式有所变化,比如使用Hibernate进行数据访问时,DataSource实际为SessionFactory,T原创 2014-06-23 13:53:36 · 1058 阅读 · 1 评论 -
Aop面向切面编程
什么是面向切面编程?在软件开发中,分布于应用中多处的功能被成为横切关注点。切面提供了取代继承和委托的另一种选择,而且在很多场景下更清晰简洁。在使用面向切面编程时,我们仍然在一个地方定义通用功能,但是我们可以通过声明的方式定义这个功能以及何种方式在何处应用,而无需修改受影响的类。横切关注点可以被模块化为特殊的类,这些类被成为切面。这样做有两个好处:首先,每个关注点现在都只集中于一处,转载 2015-06-01 13:14:41 · 1000 阅读 · 0 评论 -
Spring-data-jpa+Hibernate 各种缓存的配置
本文所有测试用代码在https://github.com/wwlleo0730/restjplat 的分支addDB上 目前在使用spring-data-jpa和hibernate4的时候,对于缓存关系不是很清楚,以及二级缓存和查询缓存的各种配置等等,于是就有了这篇初级的jpa+hibernate缓存配置使用的文章。 JPA和hibernate的缓存关系,以及系统demo环境说转载 2015-06-09 13:53:49 · 4751 阅读 · 0 评论 -
Spring IOC原理解读 面试必读
Spring IOC设计原理解析:本文乃学习整理参考而来一、 什么是Ioc/DI?二、 Spring IOC体系结构(1) BeanFactory(2) BeanDefinition三、 IoC容器的初始化1、 XmlBeanFactory(屌丝IOC)的整个流程2、 FileSystemXmlApplicationContext 的IO原创 2016-05-30 10:56:27 · 32350 阅读 · 3 评论 -
使用HandlerMethodArgumentResolver接口自定义Spring MVC的参数接受规则
1.自定义Spring MVC接受List参数SpringMVC3.1引入了HandlerMethodArgumentResolver接口,spring调用该接口实现Controller的参数装配。HandlerMethodArgumentResolver实现类中会调用DataBinder,Converter等。常用的该接口实现类有:ServletModelAttr原创 2016-05-30 13:43:38 · 6381 阅读 · 0 评论 -
深入解析 Spring MVC的配置文件
1.关于mvc annotation-driven 中出入参数和消息转换配置mvc:annotation-driven message-codes-resolver ="bean ref" validator="" conversion-service=""> mvc:return-value-handlers> bean>bean> mvc:r原创 2016-05-30 15:00:04 · 8132 阅读 · 1 评论 -
springmvc的ModelAttribute注解,在controller每个方法执行前被执行
先看一个没有使用@ModelAttribute的Controller方法.[java] view plain copy @RequestMapping("/save") public String save(User user) { user.setUsername("U love me"); userSer转载 2016-05-30 16:00:17 · 12025 阅读 · 0 评论 -
使用Guava+Spring实现异步回调操作,提高程序性能
1.关于异步回调 1.Java自带的Future-Callback 随着移动互联网的蓬勃发展,手机App层出不穷,其业务也随之变得错综复杂。针对于开发人员来说,可能之前的一个业务只需要调取一次第三方接口以获取数据,而如今随着需求的增加,该业务需调取多个不同的第三方接口。通常,我们处理方法是让代码同步顺序的去调取这些接口。显然,调取接口数量的增加必然会造原创 2016-08-15 14:43:41 · 11975 阅读 · 0 评论 -
Spring MVC 之类型转换 Converter
1.1 目录1.1 目录1.2 前言1.3 Converter 接口1.4 ConversionService 接口1.5 ConverterFactory 接口1.6 GenericConverter 接口1.6.1 概述1.6.2转载 2016-08-01 15:22:34 · 1979 阅读 · 0 评论 -
Spring BeanPostProcessor与动态加载数据源配置
前言: 本文旨在介绍Spring动态配置数据源的方式,即对一个DataSource的配置诸如jdbcUrl,user,password,driverClass都通过运行时指定,而非由xml静态配置定死。 Spring构造Context的参数一般只包含配置文件路径和类加载器,如果需要达到动态传入配置参数的目的,需要Spring在初始化数据源相关bean的时候能够对原有配置原创 2016-08-02 16:56:24 · 2043 阅读 · 1 评论 -
annotation-config, annotation-driven, compont-scan 区别
文开门见山,直接分别进行解释: 一、 隐式地向Spring容器中注册AutowiredAnnotationBeanPostProcessor、CommonAnnotationBeanPostProcessor、Persi...本文开门见山,直接分别进行解释: 一、 隐式地向Spring容器中注册AutowiredAnnotationBeanPostProcessor、Com转载 2016-08-08 10:03:13 · 1603 阅读 · 0 评论 -
Spring MVC 系统异常处理方式及性能对比
大部分公司所用的Spring框架版本是3.1版本以下,所以今天暂时总结3.1版本的Spring-MVC异常处理方式。一、Spring MVC处理异常有3种方式: (1)使用Spring-MVC提供的SimpleMappingExceptionResolver; (2)实现Spring的异常处理接口HandlerExceptionResolver 自定义自己的异常处理器; (3)使用转载 2016-08-20 17:59:46 · 1795 阅读 · 0 评论 -
Spring MVC 异步处理请求,提高程序性能
什么是异步模式 一个普通 Servlet 的主要工作流程大致如下: 以下3个步骤都在同一个线程中完成 --- 同步阻塞 --- 请求等待 首先,Servlet 接收到请求之后,可能需要对请求携带的数据进行原创 2016-08-20 17:12:21 · 21377 阅读 · 3 评论 -
Spring MVC 的http请求处理过程
Spring3.2请求处理大致过程处理过程初始化:DispatcherServlet.onRefresh()DispatcherServlet.initStrategies()DispatcherServlet.initHandlerMappings()处理请求:DispatcherServlet.doDispatch()Reques转载 2016-08-22 10:25:00 · 3473 阅读 · 0 评论 -
Spring中AOP实现的两种方式之JDK和cglib的动态代理
AOP的实现原理: 都是基于代理模式,都是生成一个大代理对象 静态AOP: AspectJ实现的AOP, 将切面代码直接编译到Java类文件中 --- 实现: JDK提供的动态代理技术 动态AOP: 将切面代码进行动态织入实现的AOP --- Spring的AOP为动态AOP原创 2016-08-31 20:03:04 · 6613 阅读 · 0 评论 -
Springmvc的handler method参数绑定常用的注解
转自:http://blog.longjiazuo.com/archives/11491、 简介:handler method参数绑定常用的注解,我们根据他们处理的Request的不同内容部分分为四类:(主要讲解常用类型)A、处理requet uri 部分(这里指uri template中variable,不含queryString部分)的注解:@PathVariabl转载 2016-10-12 16:18:16 · 2428 阅读 · 1 评论 -
Spring中的异步模式
原文转自:http://www.cnblogs.com/guogangj/p/5457959.html什么是异步模式要知道什么是异步模式,就先要知道什么是同步模式,先看最典型的同步模式:(图1)浏览器发起请求,Web服务器开一个线程处理,处理完把处理结果返回浏览器。好像没什么好说的了,绝大多数Web服务器都如此般处理。现在想想如果处理的过程中需要调用后端的一转载 2016-12-26 13:19:54 · 3680 阅读 · 0 评论 -
Spring原理之通过反射+配置文件生成对象池
1.Spring通过读取配置文件生成对象原理通过反射创建对象 2种方式: 1.使用Class对象的newInstance()创建该Class对象对应类的实例(要求改Class对应类有默认构造器) 2.先使用Class对象获取指定的Constructor对象,再调用Constructor对象的newInstance()方法创建该Clas原创 2017-02-17 16:08:18 · 3968 阅读 · 0 评论 -
Spring Aop总结
Spring AOP——Advice Spring AOP即Aspect-oriented programming,面向切面编程,是作为面向对象编程的一种补充,专门用于处理系统中分布于各个模块(不同方法)中的交叉关注点的问题。简单地说,就是一个拦截器(interceptor)拦截一些处理过程。例如,当一个method被执行,Spring AOP能够劫持正在运行的method,在meth原创 2015-05-08 10:10:09 · 981 阅读 · 0 评论 -
Spring Aop 原理
什么是AOPAOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定转载 2015-05-14 10:16:48 · 630 阅读 · 0 评论 -
Spring发送邮件的各种方法
Spring邮件抽象层的主要包为org.springframework.mail。它包括了发送电子邮件的主要接口MailSender,和值对象SimpleMailMessage,它封装了简单邮件的属性如from, to,cc, subject,text。 包里还包含一棵以MailException为根的checked Exception继承树,它们提供了对底层邮件系统异常的高级别抽象。 要获得原创 2014-07-01 13:22:48 · 1381 阅读 · 0 评论 -
关于Spring MVC注解 @Transactional 事务标签 @InitBinder 标签
主要用到了spring-aop-2.5.6.jar的AOP支持包! 之前我们在AccountService中加入了注解@Transactional标签,但是要想要真正发挥事务作用,还需要一些配置。 主要需要调整dao.xml文件 dao.xml-事务管理Xml代码 bean id="transactionManager"原创 2014-07-21 17:42:47 · 1120 阅读 · 0 评论 -
Spring整合HIbernate时,三种数据库连接池的配置和比较
现在常用的开源数据库连接池主要有c3p0、dbcp、proxool三种,其中:Spring 推荐使用dbcp;Hibernate 推荐使用c3p0和proxool; 1、 DBCP:ApacheDBCP(DataBase connection pool)数据库连接池。是Apache上原创 2014-06-30 16:22:00 · 4307 阅读 · 0 评论 -
Spring的注解详细总结
1.准备工作 (1)导入common-annotations.jar (2)导入schema文件 文件名为spring-context-2.5.xsd (3)在xml的beans节点中配置 Java代码 "1.0" encoding="UTF-8"?> ....... xmlns:context="http://www.springfram原创 2014-07-24 15:52:44 · 654 阅读 · 0 评论 -
Spring声明式事务管理详解
Spring声明式事务让我们从复杂的事务处理中得到解脱。使得我们再也无需要去处理获得连接、关闭连接、事务提交和回滚等这些操作。再也无需要我们在与事务相关的方法中处理大量的try…catch…finally代码。 我们在使用Spring声明式事务时,有一个非常重要的概念就是事务属性。事务属性通常由事务的传播行为,事务的隔离级别,事务的超时值和事务只读标志组成。我们在进行事务划分时,需要进行事务定原创 2014-07-24 16:50:10 · 639 阅读 · 0 评论 -
Hibernate+Spring彻底搞定Clob、Blob的存取
Hibernate+Spring彻底搞定Clob、Blob的存取 摘要:本文通过一个实例讲述如何通过Spring2+Hibernate3来快捷操作数据库中的Lob字段。 环境:Oracle10g、Srping2、Hibernate3、JUint4 说明:由于时间紧迫,没有详细写出思路。运行一下例子就明白了。 一、创建实体并添加Xdoclet的Hibernate标签 Java代码 收藏代码/** *原创 2014-07-24 16:55:23 · 2061 阅读 · 0 评论 -
Spring+HIbernate通用层Dao和Service实现
因为DAO层基本的就是CRUD操作,变化不是很大,要是有变化的那就是查询。而确实没有必要为每一个实体写一个完整的DAO,但是没有还不行,那就“抽取”出来吧。而Service依赖与DAO层,有时就是简单调用一下,也确实没有必要每个都写。总之,不爱写多个,那就写一个通用的,而其他的继承或实现这个通用的可以了。还是用代码说话吧。Java代码 package or原创 2014-07-28 13:34:20 · 2827 阅读 · 0 评论 -
Hibernate4+Spring3实现声明式事务管理
概述:还像往常一样先了解下基础知识:Hibernate是一个开源的ORM框架,能自动为对象生成相应SQL并透明的持久化对象到数据库,我们首先来了解一下什么是“ORM”。ORM全称对象关系映射(Object/Relation Mapping),指将Java对象状态自动映射到关系数据库中的数据上,从而提供透明化的持久化支持,即把一种形式转化为另一种形式。对象与关系数据库之间是不匹配,我原创 2014-07-28 13:38:16 · 2205 阅读 · 0 评论 -
Spring 的@Scheduled注解实现定时任务执行和调度
Spring 的@Scheduled注解实现定时任务执行和调度首先要配置我们的spring.xml --- 即spring的主配置文件(有的项目中叫做applicationContext.xml或context.xml)xmlns 多加下面的内容、[html] view plaincopyxmlns:task="http原创 2014-06-16 17:21:00 · 3676 阅读 · 1 评论 -
简易Spring
IoC概念 控制反转(Inversion of Control)是一个重要的面向对象编程的法则来削减计算机程序的耦合问题。 它还有一个名字叫做依赖注入(Dependency Injection)。IoC不是什么技术,它是一种设计模式。实例演示 为了更好的说明IoC,我为大家举一个简单的例子,如有这样一个描述:某公司新成立了一个项目组,项目组有原创 2014-06-23 10:44:08 · 1007 阅读 · 0 评论 -
Spring数据绑定大全
刚开始用spring mvc 做web开发时,经常会不知道如何合适绑定页面数据.用惯struts2的朋友更认为spring mvc 绑定数据不如struts2方便(本人最开始也是这么认为),经过一段时间的应用和测试,总结出以下几种情况,希望对刚接触spring mvc 的朋友有所帮助.示例程序下载查看spring源码可以看出spring支持转换的数据类型已经很多了.转载 2014-08-27 10:29:58 · 716 阅读 · 0 评论 -
Spring+Hibernate+Jersey整合
导入需要的jar包项目结构Spring配置[html] view plaincopyxml version="1.0" encoding="UTF-8"?> beans xmlns="http://www.springframework.org/schema/beans" xmlns:x原创 2014-08-27 10:29:14 · 1635 阅读 · 0 评论 -
Hibernate使用Ehcahe利用注解方式缓存
合理的缓存应用可以极大地提高系统性能,最简单的是在应用层面做缓存(越高层面做缓存,效果往往越好),直接将数据缓存到服务器中,以全局map方式存储。在使用的时候直接从缓存的map中取,而不用连接数据库,从而提升性能。这种方式简单易行,但是map常驻服务器内存,并且在数据变更(增删改)的时候要手动更新map。 还有一种方式比较通用,就是使用Hibernate二级缓存(Session原创 2014-09-24 17:01:59 · 2191 阅读 · 0 评论 -
spring mvc 图片上传,图片压缩、跨域解决、 按天生成目录 ,删除,限制为图片代码等相关配置
spring mvc 图片上传,跨域解决 按天生成目录 ,删除,限制为图片代码,等相关配置[html] view plaincopyfs.root=data/ #fs.root=/home/dev/fs/ #fs.root=D:/fs/ #fs.domains=182=http://172.16.100.182:18080,lo转载 2014-09-29 09:45:30 · 2091 阅读 · 1 评论 -
搭建SpringMVC+Hibernate4+Spring3+Ajax+Maven项目
首先新建一个Maven项目,百度一下会有很多实例,这里就不介绍了,直接奔主题。如题:这里使用的是Hibernate4和Spring3,使用的JPA和Spring注解,然后JDK版本是1.7下面这张图片演示的是整个项目的结构图。------------------------------------------------------- ---------转载 2015-03-17 10:08:34 · 1371 阅读 · 0 评论 -
Ehcache整合Spring实例
缓存热点数据是提高访问效率的重要手段之一,下面我用encache演示下如何做service层的数据缓存先写个方法拦截器,当然要先继承MethodInterceptor,encache的标识key我是将参数序列成json字符 可能强制部分会影响性能,建议判断null后再一次判断cache.get(key)是否为null,同步的第一人的操作已经执行完毕,那eleme转载 2015-03-11 11:28:11 · 653 阅读 · 0 评论 -
Spring和Quartz实现的定时任务调度
Cronexpression表达式:: 字段 允许值 允许的特殊字符 秒 0-59 , - * / 分 0-59 , - * / 小时 0-23 , - * / 日期 1-31 , - * ? / L W C 月份 1-12 或者 JAN-DEC , - * / 星期 1-7 或者 SUN-SAT , - * ? / L C # 年(可选) 留空, 1970-2原创 2014-07-21 17:47:39 · 3277 阅读 · 0 评论 -
解决Spring中ResponseBody返回中文乱码问题
使用HttpMessageConverter接口的相关实现类。我们先看配置文件中的配置信息。 text/pla原创 2017-09-25 15:14:07 · 1352 阅读 · 0 评论