spring
文章平均质量分 78
wjxbj
这个作者很懒,什么都没留下…
展开
-
Spring项目前端显示的时间差8小时分析
在开发中,有时听到其它项目的同事说前端展示的时间差了8小时,是由于时区的问题,因为中国恰好是GMT+8,比格林尼治时间早了8小时。但奇怪的是,为什么我们项目就没有碰到过呢?于是,特别写了一个简单的例子,确认了一下我们的确实没有问题,并咨询了其它项目组同事是怎么出现的,特在此记录一下。一.写一个简单的demo,还原各种场景 定义Controller@RequestM...2018-04-22 22:11:34 · 2498 阅读 · 1 评论 -
学习Spring必学的Java基础知识(6)—ThreadLocal
文章来源:http://www.iteye.com/topic/1123824,整理在我的博客有两个目的:一个是原文确实很不错,通俗易懂,督促自已将博主的这一系列关于Spring文章都学完;另一个原因是为免原文被博主删除,在此记录,方便以后查找阅读。 我们知道Spring通过各种模板类降低了开发者使用各种数据持久技术的难度。这些模板类都是线程安全的,也就...原创 2014-12-10 22:45:00 · 99 阅读 · 0 评论 -
学习Spring必学的Java基础知识(5)—注解
文章来源:http://www.iteye.com/topic/1123823,整理在我的博客有两个目的:一个是原文确实很不错,通俗易懂,督促自已将博主的这一系列关于Spring文章都学完;另一个原因是为免原文被博主删除,在此记录,方便以后查找阅读。 有必要对JDK 5.0新增的注解(Annotation)技术进行简单的学习,因为Spring 支持@As...原创 2014-12-09 23:38:06 · 132 阅读 · 0 评论 -
学习Spring必学的Java基础知识(3)—PropertyEditor
文章来源:http://www.iteye.com/topic/1123628,整理在我的博客有两个目的:一个是原文确实很不错,通俗易懂,督促自已将博主的这一系列关于Spring文章都学完;另一个原因是为免原文被博主删除,在此记录,方便以后查找阅读。 在Spring配置文件里,我们往往通过字面值为Bean各种类型的属性提供设置值:不管是double类型还...原创 2014-12-08 12:45:38 · 119 阅读 · 0 评论 -
学习Spring必学的Java基础知识(2)—动态代理
文章来源:http://www.iteye.com/topic/1123293,整理在我的博客有两个目的:一个是原文确实很不错,通俗易懂,督促自已将博主的这一系列关于Spring文章都学完;另一个原因是为免原文被博主删除,在此记录,方便以后查找阅读。 Spring AOP使用动态代理技术在运行期织入增强的代码,为了揭示Spring AOP底层的工作机理,...原创 2014-12-05 23:55:10 · 141 阅读 · 0 评论 -
学习Spring必学的Java基础知识(1)—反射
文章来源:http://www.iteye.com/topic/1123081,整理在我的博客有两个目的:一个是原文确实很不错,通俗易懂,督促自已将博主的这一系列关于Spring文章都学完;另一个原因是为免原文被博主删除,在此记录,方便以后查找阅读。 Java语言允许通过程序化的方式间接对Class进行操作,Class文件由类装载器装载后,...2014-12-05 23:31:51 · 101 阅读 · 0 评论 -
spring容器初始化bean和销毁bean之前进行一些操作的方法
关于在spring 容器初始化 bean 和销毁前所做的操作定义方式有三种: 第一种,通过在xml中定义init-method和destory-method方法 第二种,通过bean实现InitializingBean和 DisposableBean接口 第三种,通过Spring @PostConstruct和@PreDestroy方法...2017-05-14 15:37:03 · 243 阅读 · 0 评论 -
Spring基于线程池的定时任务线挰异常实践
结论:Spring基于线程池的定时任务,线挰异常或内存溢出导致线程挂了,还会新启线程继续工作。实例重现:springMVC.properties#the thread pool config thread.corePoolSize=3thread.maxPoolSize=8thread.keepAliveSeconds=6thread.queueCap...2017-04-11 23:20:03 · 152 阅读 · 0 评论 -
使用DefaultAdvisorAutoProxyCreator实现spring的自动代理
DefaultAdvisorAutoProxyCreator这个类功能更为强大,这个类的奇妙之处是他实现了BeanProcessor接口,当ApplicationContext读如所有的Bean配置信息后,这个类将扫描上下文,寻找所有的Advistor(一个Advisor是一个切入点和一个通知的组成),将这些Advisor应用到所有符合切入点的Bean中。工程结构图:...原创 2015-12-11 01:01:36 · 207 阅读 · 0 评论 -
Ehcache整合Spring使用页面、对象缓存
一.概述 Ehcache在很多项目中都出现过,用法也比较简单。一般的加些配置就可以了,而且Ehcache可以对页面、对象、数据进行缓存,同时支持集群/分布式缓存。如果整合Spring、Hibernate也非常的简单,Spring对Ehcache的支持也非常好。EHCache支持内存和磁盘的缓存,支持LRU、LFU和FIFO多种淘汰算法,支持分布式的Cache,可以作为Hibe...2015-12-10 21:03:45 · 146 阅读 · 0 评论 -
spring容器注入一个接口的两个实现类
spring容器中能拥有两个同种类型的bean吗?我有两个dao类同时实现一个接口,这两个接口注入时报了异常如下。org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type [com.xxx.xxx.xxx.integration.dao.IDAO] is d...2015-12-09 20:46:51 · 704 阅读 · 0 评论 -
学习Spring必学的Java基础知识(7)—事务基础知识
文章来源:http://www.iteye.com/topic/1124043,整理在我的博客有两个目的:一个是原文确实很不错,通俗易懂,督促自已将博主的这一系列关于Spring文章都学完;另一个原因是为免原文被博主删除,在此记录,方便以后查找阅读。 Spring虽然提供了灵活方便的事务管理功能,但这些功能都是基于底层数据库本身的事务处理机制工作的。要深...原创 2014-12-10 22:53:20 · 94 阅读 · 0 评论 -
学习Spring必学的Java基础知识(8)—国际化信息
文章来源:http://www.iteye.com/topic/1124044,整理在我的博客有两个目的:一个是原文确实很不错,通俗易懂,督促自已将博主的这一系列关于Spring文章都学完;另一个原因是为免原文被博主删除,在此记录,方便以后查找阅读。...原创 2014-12-11 22:57:01 · 105 阅读 · 0 评论 -
学习Spring必学的Java基础知识(9)—HTTP报文
文章来源:http://www.iteye.com/topic/1124408,整理在我的博客有两个目的:一个是原文确实很不错,通俗易懂,督促自已将博主的这一系列关于Spring文章都学完;另一个原因是为免原文被博主删除,在此记录,方便以后查找阅读。...原创 2014-12-11 22:58:54 · 127 阅读 · 0 评论 -
Spring中Ordered接口简介
一.前言 Spring中提供了一个Ordered接口。Ordered接口,顾名思义,就是用来排序的。 Spring是一个大量使用策略设计模式的框架,这意味着有很多相同接口的实现类,那么必定会有优先级的问题。 于是,Spring就提供了Ordered这个接口,来处理相同接口实现类的优先级问题。 二.Ordered接口介绍 ...原创 2017-02-06 20:07:59 · 231 阅读 · 0 评论 -
Spring的classpath通配符加载配置文件
1.classpath:app-Beans.xml 说明:无通配符,必须完全匹配 2.classpath:App?-Beans.xml 说明:匹配一个字符,例如 App1-Beans.xml 、 App2-Beans.xml 3.classpath:user/*/Base-Beans.xml 说明:匹配零个或多个字符串(只针对...原创 2017-02-04 00:14:30 · 112 阅读 · 0 评论 -
Spring在应用中获得Bean的方法
一.使用ApplicationContext获得Bean 首先新建一个类,该类必须实现ApplicationContextAware接口,改接口有一个方法,public void setApplicationContext(ApplicationContext applicationContext)throws BeansException,也就是说框架会自动调用这个方法返回...原创 2017-02-03 22:25:14 · 333 阅读 · 0 评论 -
Spring Bean重复执行两次(实例被构造两次)问题分析
在《Spring Bean重复执行两次(实例被构造两次)问题分析》一文中,我们知道web.xml两处配置文件正常需分开。如下所示:<?xml version="1.0" encoding="UTF-8"?><web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="htt原创 2017-07-14 00:43:10 · 1441 阅读 · 0 评论 -
Spring定时任务中使用ThreadLocal的坑
在项目中,发现Spring的定时任务中用ThreadLocal来保存上下文信息,且上下文信息中有一个属性在后面入库时是做为主键值。总觉得这里应该有问题,因为没有去看过Spring的定时任务的具体实现,也不知定时任务用没用线程池以及如何使用的,但如何用了线程池(且我觉得从性能和常理推测来看应该是要用的),用ThreadLocal保存上下文信息,并在后续使用(且使用完没有做remove),那么...2017-06-19 21:21:06 · 1284 阅读 · 0 评论 -
Semaphore控制高并发下载导致内存溢出问题
在项目实际应用中,由于下载文件内容都比较大,如果同时有很多用户同时在下载,JVM的内存就会升的很高,甚至崩溃。为了避免很多用户同时下载,特引入Semaphore控制一次最多有配置个线程能进入实际下载的代码,即而控制JVM内存不会升的很高而导致崩溃。import java.io.FileInputStream;import java.io.IOException;im...2016-03-07 21:17:15 · 435 阅读 · 0 评论 -
Freemarker中List的定位
对一个列表的遍历,如果要对第一个已经最后一个元素做特殊的处理如何的判断呢?<#list books as book> <#if book_index = 0>...</#if><!--判断是否是第一个元素--> <#if !book_has_next>...</#if>...2016-02-19 19:47:43 · 200 阅读 · 0 评论 -
用HttpClient来模拟浏览器的GET,POST
一般的情况下我们都是使用IE或者Navigator浏览器来访问一个WEB服务器,用来浏览页面查看信息或者提交一些数据等等。所访问的这些页面有的仅仅是一些普通的页面,有的需要用户登录后方可使用,或者需要认证以及是一些通过加密方式传输,例如HTTPS。目前我们使用的浏览器处理这些情况都不会构成问题。不过你可能在某些时候需要通过程序来访问这样的一些页面,比如从别人的网页中"偷"一些数...原创 2014-12-17 15:44:45 · 857 阅读 · 0 评论 -
Java发送http请求(get 与post方法请求)
PostRequest.javapackage com.bijian.study;import java.io.BufferedReader;import java.io.DataOutputStream;import java.io.IOException;import java.io.InputStreamReader;import java.net.HttpU...2014-12-16 19:55:24 · 782 阅读 · 0 评论 -
Spring MVC实例
Spring MVC作为SpringFrameWork的产品,自诞生之日,就受到广泛开发者的关注,如今Spring MVC在Java中的发展可谓是蒸蒸日上,下面详细描述下搭建运行一个Spring MVC的实例。 项目结构如下:一.在WEB-INF/web.xml,配置Spring MVC转发<?xml version="1.0" encoding="...原创 2014-12-15 21:41:42 · 95 阅读 · 0 评论 -
SpringMVC入门实例
先加入SpringMVC的jar包,这个官网上有,下载下来放到lib文件夹下。项目的文件目录如图所示:web.xml<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http:...原创 2014-12-15 21:22:22 · 72 阅读 · 0 评论 -
Freemarker操作字符串
一.工程结构二.代码1.TemplateStringDemo.javapackage com.bijian.study;import java.io.File;import java.util.HashMap;import java.util.Map;import java.util.Properties;import org.springframe...原创 2015-11-27 19:41:07 · 681 阅读 · 0 评论 -
freeMarker入门学习
freeMarker入门实例就是最好的入门资料,如下即为入门的工程实例。一.工程结构二.代码1.TemplateDemo.javapackage com.bijian.study;import java.io.File;import java.util.ArrayList;import java.util.HashMap;import j...2015-11-27 19:32:22 · 208 阅读 · 0 评论 -
Spring调SDK包报java.lang.NoSuchFieldError错误
在工作中调另一个系统的SDK包,出现如下java.lang.NoSuchFieldError错误。org.springframework.web.util.NestedServletException: Handler processing failed; nested exception is java.lang.NoSuchFieldError: context a...原创 2015-07-01 23:42:05 · 375 阅读 · 0 评论 -
Spring MVC启动时初始化的几个常用方法
SpringMVC的应用中,要实现类似的功能,主要是通过实现下面这些接口(任选一,至少一个即可)一.ApplicationContextAware接口package org.springframework.context; import org.springframework.beans.BeansException;import org.springfra...原创 2016-05-08 22:59:35 · 408 阅读 · 0 评论 -
Spring中抛出异常时,既要要返回错误信息,还要做事务回滚
情况一:如果没有在程序中手动捕获异常,如下代码事务会回滚@Transactional(rollbackFor = { Exception.class }) public void test() throws Exception { doDbStuff1(); doDbStuff2();//假如这个操作数据库的方法会抛出异常,方法doDbStuff1()...2016-04-15 19:19:21 · 2526 阅读 · 1 评论 -
Spring事务传播行为详解
在service类前加上@Transactional,声明这个service所有方法需要事务管理。每一个业务方法开始时都会打开一个事务。 Spring默认情况下会对运行期例外(RunTimeException)进行事务回滚。这个例外是unchecked,如果遇到checked意外就不回滚。 如何改变默认规则: 1.让chec...原创 2014-03-30 19:49:59 · 229 阅读 · 0 评论 -
Spring事务传播机制入门
一.事务的传播属性(Propagation) 1.REQUIRED,这个是默认的属性 Support a current transaction, create a new one if none exists. 如果存在一个事务,则支持当前事务。如果没有事务则开启一个新的事务。 被设置成这个级别时,会为每一个被调用的方法创建一个逻辑事务域。如果前面的方法已经创建了事务,那么后面的方法支持...原创 2014-03-30 19:49:35 · 128 阅读 · 0 评论 -
spring3中新增的@value注解
今天在开发过程中,发现在@Controller层的类,无法像Servicen层的类那样直接通过@Value("${fileUpload.fileName}")方式注入配置值到对象中。 原因是因为在xml中有如下配置,将配置有@Controller注解的Action类(包名有action)排除掉了。<context:component-scan b...原创 2014-02-28 14:38:17 · 120 阅读 · 0 评论 -
Spring中@Autowired标签与@Resource标签的区别
Spring不但支持自己定义的@Autowired注解,还支持由JSR-250规范定义的几个注解,如:@Resource、 @PostConstruct及@PreDestroy。 1. @Autowired @Autowired是Spring 提供的,需导入 Package:org.springframework.beans.factory.annotation.Autow...原创 2014-02-28 13:49:07 · 116 阅读 · 0 评论 -
spring InitializingBean接口
spring的事务的TransactionTemplate,其源码如下:public class TransactionTemplate extends DefaultTransactionDefinition implements TransactionOperations, InitializingBean{ ...}TransactionTemplate继承了Defaul...原创 2013-05-14 23:05:44 · 61 阅读 · 0 评论 -
Spring基础实例(依赖注入和控制反转)
前提条件:在http://www.springsource.org/download网站上下载Spring框架,并将spring.jar、log4j-1.2.15.jar、commons-logging.jar加载至工程1.武器接口package com.bijian.spring.base3;public interface Weapon { void k...原创 2013-03-16 09:08:13 · 63 阅读 · 0 评论 -
Spring注入有继承关系的类(2)
被注入类的父类有相应的属性,Spring可以直接注入相应的属性,如下所例:1.AClass类package com.bijian.spring.test4;public class AClass { private String a; private String b; public String getA() { re...原创 2013-03-16 09:05:59 · 216 阅读 · 0 评论 -
Spring注入有继承关系的类(1)
一个类一个类的注入1.AClass类package com.bijian.spring.test2;public class AClass { String a; String b; public String getA() { return a; } public void setA(String a)...原创 2013-03-16 09:05:16 · 395 阅读 · 0 评论 -
Spring AOP详解
最近项目中遇到了以下几点需求,仔细思考之后,觉得采用AOP来解决。一方面是为了以更加灵活的方式来解决问题,另一方面是借此机会深入学习Spring AOP相关的内容。例如,以下需求不用AOP肯定也能解决,至于是否牵强附会,仁者见仁智者见智。1.对部分函数的调用进行日志记录,用于观察特定问题在运行过程中的函数调用情况2.监控部分重要函数,若抛出指定的异常,需要以短信或邮件方式通...原创 2014-10-13 18:49:14 · 73 阅读 · 0 评论 -
Spring Aop Schema实现
本例使用的是Spring2.51.Aop配置文件spring-aop.xml<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/200...原创 2014-10-13 22:39:11 · 74 阅读 · 0 评论