<mvc:annotation-driven />讲解
摘要:是一种简写形式,完全可以手动配置替代这种简写形式,简写形式可以让初学者快速应用默认配置方案。会自动注册DefaultAnnotationHandlerMapping与AnnotationMethodHandlerAdapter两个bean,是spring MVC为@Controllers分发请求所必须的。并提供了:数据绑定支持,@NumberFormatannotation支持,@DateTimeFormat支持,@Valid支持,读写XML的支持(JAXB),读写JSON的支持(Jackson)。我们处理响应ajax请求时,就使用到了对json的支持。对action写JUnit单元测试时,要
阅读全文
posted @
2013-11-27 13:22
Ruthless
阅读(914)
推荐(0) 编辑
c3p0、dbcp和proxool比较
摘要:现在常用的开源数据连接池主要有c3p0、dbcp和proxool三种,其中: hibernate开发组推荐使用c3p0; spring开发组推荐使用dbcp(dbcp连接池有weblogic连接池同样的问题,就是强行关闭连接或数据库重启后,无法reconnect,告诉连接被重置,这个设置可以解决); hibernate in action推荐使用c3p0和proxool; dbcp所需jar:commons-dbcp.jar、commons-pool.jarc3p0所需jar:c3p0-0.9.2.1.jar mchange-commons-java-0.2.3.4.jarapplicatio
阅读全文
posted @
2013-11-26 16:49
Ruthless
阅读(20737)
推荐(1) 编辑
Spring的事务到底该给Dao配置还是给Service配置?
摘要:Spring事务为业务逻辑进行事务管理,保证业务逻辑上数据的原子性。事务得根据项目性质来细分:事务可以设置到三个层面(dao层、service层和web层)。 第一:web层事务,这一般是针对那些安全性要求较高的系统来说的。例如电子商务网站。粒度小,一般系统用不着这么细。 第二:service层事务,这是一常见的事务划分, 将事务设置在业务逻辑上,只要业务逻辑出错或异常就事务回滚。粒度较小,一般推荐这种方式。第三:数据持久层数据务,也就是常说的数据库事务。这种事务在安全性方面要求低。就是给一个简单的增删改之类的操作增加事务操作。粒度大给Service层配置事务,因为一个Service层方法操作
阅读全文
posted @
2013-11-25 16:47
Ruthless
阅读(10758)
推荐(0) 编辑
Spring PropertyPlaceholderConfigurer占位符用法
摘要:1、PropertyPlaceholderConfigurer是一个bean工厂后置处理器的实现,也就是BeanFactoryPostProcessor接口的一个实现。PropertyPlaceholderConfigurer可以将上下文(配置文件)中的属性值放在另一个单独的标准java Properties文件中去。在XML文件中用${key}替换指定的properties文件中的值。这样的话,只需要对properties文件进行修改,而不用对xml配置文件进行修改。2、在Spring中,使用PropertyPlaceholderConfigurer可以在XML配置文件中加入外部属性文件,当
阅读全文
posted @
2013-11-25 14:26
Ruthless
阅读(6270)
推荐(0) 编辑
Spring <context:annotation-config />讲解
摘要:在基于主机方式配置Spring的配置文件中,你可能会见到这样一条配置,他的作用是向Spring容器注册AutowiredAnnotationBeanPostProcessor、CommonAnnotationBeanPostProcessor、PersistenceAnnotationBeanPostProcessor以及RequiredAnnotationBeanPostProcessor这4个BeanPostProcessor。注册这4个BeanPostProcessor的作用,就是为了你的系统能够识别相应的注解。例如:如果你想使用@Autowired注解,那么就必须事先在Spring容器
阅读全文
posted @
2013-11-25 14:02
Ruthless
阅读(1394)
推荐(0) 编辑
DispatcherServlet讲解
摘要:1.1.1、DispatcherServlet作用DispatcherServlet是前端控制器设计模式的实现,提供Spring Web MVC的集中访问点,而且负责职责的分派,而且与Spring IOC容器无缝集成,从而可以获得Spring的所有好处。 DispatcherServlet主要用作职责调度工作,本身主要用于控制流程,主要职责如下:1、文件上传解析,如果请求类型是multipart将通过MultipartResolver进行文件上传解析;2、通过HandlerMapping,将请求映射到处理器(返回一个HandlerExecutionChain,它包括一个处理器、多个Handle
阅读全文
posted @
2013-11-25 10:17
Ruthless
阅读(2515)
推荐(0) 编辑
Spring3.1新特性
摘要:一、Spring2.5之前,我们都是通过实现Controller接口或其他实现来定义我们的处理器类。 二、Spring2.5引入注解式处理器支持,通过@Controller 和 @RequestMapping注解定义我们的处理器类。并且提供了一组强大的注解:需要通过处理器映射DefaultAnnotationHandlerMapping和处理器适配器AnnotationMethodHandlerAdapter来开启支持@Controller 和 @RequestMapping注解的处理器。 @Controller:用于标识是处理器类;@RequestMapping:请求到处理器功能方法的映射规
阅读全文
posted @
2013-11-22 16:54
Ruthless
阅读(9537)
推荐(0) 编辑
Spring MVC入门
摘要:1.1、Spring Web MVC是什么Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring Web MVC也是要简化我们日常Web开发的。 1.2、Spring Web MVC能帮我们做什么√让我们能非常简单的设计出干净的Web层和薄薄的Web层;√进行更简洁的Web层的开发;√天生与Spring框架集成(如IoC容器、AOP等);√提供强大的约定大于配置的契约式编程支持;√能简单的进行Web层的
阅读全文
posted @
2013-11-22 15:30
Ruthless
阅读(5350)
推荐(1) 编辑
封装jQuery Validate扩展验证方法
摘要:一、封装自定义验证方法-validate-methods.js/***************************************************************** jQuery Validate扩展验证方法 (linjq) ...
阅读全文
posted @
2013-11-20 15:08
Ruthless
阅读(47414)
推荐(12) 编辑
jQuery Validate验证框架详解
摘要:jQuery校验官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation一、导入js库注:返回web项目的根路径。二、默认校验规则(1)、required:true 必输字段(2)、remote:"remote-valid.jsp" 使用ajax方法调用remote-valid.jsp验证输入值(3)、email:true 必须输入正确格式的电子邮件(4)、url:true 必须输入正确格式的网址(5)、date:t...
阅读全文
posted @
2013-11-19 17:17
Ruthless
阅读(401014)
推荐(37) 编辑
史上最全JS表单验证封装类
摘要:/***************************************************************** 表单校验工具类 (linjq) *****************************************************************/ /** * 判断整数num是否等于0 * * @param num * @return * @author jiqinlin */function isIntEqZero(num){ return num==0;}/** * 判断整数num...
阅读全文
posted @
2013-11-18 17:50
Ruthless
阅读(6548)
推荐(4) 编辑
史上最全Java表单验证封装类
摘要:package com.tongrong.utils;import java.util.Collection;import java.util.Map;import java.util.regex.Matcher;import java.util.regex.Pattern;import org.apache.commons.lang.StringUtils;/** * Java表单验证工具类 * * @author jiqinlin * */@SuppressWarnings("unchecked")public class RegexUtil { public stat
阅读全文
posted @
2013-11-18 14:27
Ruthless
阅读(13337)
推荐(1) 编辑
MyEclipse安装Freemarker插件
摘要:以下是安装Freemarker插件并设置MyEclipse使用该插件的步骤:1、下载Freemarker插件打开http://sourceforge.net/projects/freemarker-ide/files/下载最新版本,目前本人下载时最新版本是freemarker-ide-0.9.14.zip2、解压,将hudson.freemarker_ide_0.9.14文件夹放入eclipse下的plugins文件夹。发现hudson.freemarker_ide_0.9.14下的freemarker-2.3.6.jar包是比较早的版本,用新的freemarker-2.3.19.jar替换之
阅读全文
posted @
2013-11-17 00:31
Ruthless
阅读(8101)
推荐(0) 编辑
判断List、Map、Set是否为空及效率比较
摘要://如果object为null,则设置为defaultValueObjectUtils.defaultIfNull(object, defaultValue);//判断集合是否为nullList list=new ArrayList();System.out.println(list.isEmpty()); //trueSystem.out.println(list.size()); //0Set set=new HashSet();System.out.println(set.isEmpty()); //trueSystem.out.println(set.size()); //0Map m
阅读全文
posted @
2013-11-15 15:51
Ruthless
阅读(97785)
推荐(0) 编辑
RandomStringUtils工具类
摘要://产生5位长度的随机字符串,中文环境下是乱码RandomStringUtils.random(5);//使用指定的字符生成5位长度的随机字符串RandomStringUtils.random(5, new char[]{'a','b','c','d','e','f', '1', '2', '3'});//生成指定长度的字母和数字的随机组合字符串RandomStringUtils.randomAlphanumeric(5);//生成随机数字字符串Ran
阅读全文
posted @
2013-11-15 14:52
Ruthless
阅读(29400)
推荐(0) 编辑
StringUtils工具类用法
摘要:/*1.字符串以prefix开始*/StringUtils.startsWith("sssdf","");//结果是:trueStringUtils.startsWith("sssdf","");//结果是:trueStringUtils.startsWith("sssdf","s");//结果是:trueStringUtils.startsWith("sssdf","ss");//结果是:trueStringUtils.startsW
阅读全文
posted @
2013-11-15 14:29
Ruthless
阅读(41449)
推荐(5) 编辑
NumberUtils、ArrayUtils和RandomUtils工具类用法
摘要:一、NumberUtils工具类/*1.NumberUtils.isNumber():判断字符串是否是数字*/NumberUtils.isNumber("5.96");//结果是trueNumberUtils.isNumber("s5");//结果是falseNumberUtils.isNumber("0000000000596");//结果是true/*2.NumberUtils.isDigits():判断字符串中是否全为数字*/NumberUtils.isDigits("0000000000.596");//f
阅读全文
posted @
2013-11-14 19:14
Ruthless
阅读(14638)
推荐(0) 编辑
struts2 action重定向action中文乱码处理
摘要:比如:Action方法productCategorySave()变量message,传递给Action方法productCategoryAdd(),当变量message为中文变量时,要进行编码设置,不然会报中文乱码。一、Action方法productCategorySave() /** * 商品分类保存 * * @return */ @Action("productCategorySave") public String productCategorySave() { laf.setMessage("信息。"); ...
阅读全文
posted @
2013-11-11 17:06
Ruthless
阅读(2749)
推荐(0) 编辑
Spring DI的配置使用
摘要:1.1.1 依赖和依赖注入Spring IOC容器的依赖有两层含义:Bean依赖容器和容器注入Bean的依赖资源:a、Bean依赖容器:也就是说Bean要依赖于容器,这里的依赖是指容器负责创建Bean并管理Bean的生命周期,正是由于由容器来控制创建Bean并注入依赖,也就是控制权被反转了,这也正是IOC名字的由来,此处的有依赖是指Bean和容器之间的依赖关系。b、容器注入Bean的依赖资源:容器负责注入Bean的依赖资源,依赖资源可以是Bean、外部文件、常量数据等,在Java中都反映为对象,并且由容器负责组装Bean之间的依赖关系,此处的依赖是指Bean之间的依赖关系,可以认为是传统类与类
阅读全文
posted @
2013-11-10 18:00
Ruthless
阅读(5586)
推荐(0) 编辑
泛化、实现、依赖和关联的区别
摘要:传统应用程序设计中所说的依赖一般指“类之间的关系”,那先让我们复习一下类之间的关系:a、实现表示类对接口的实现。UML图中实现使用一条带有空心三角箭头的虚线指向接口,如下:b、泛化表示类与类之间的继承关系、接口与接口之间的继承关系。UML图中实现使用一条带有空心三角箭头的实线指向基类,如下:c、依赖表现为函数中的参数(use a),是类与类之间的连接,表示一个类依赖于另一个类的定义,其中一个类的变化将影响另外一个类。例如如果A依赖于B,则B体现为局部变量,方法的参数、或静态方法的调用。如电视(TV)依赖于频道(channel)常见的依赖关系如下:(1)类B以参数的形式传入类A的方法。(2)类B
阅读全文
posted @
2013-11-09 11:19
Ruthless
阅读(30475)
推荐(6) 编辑
BigDecimal用法详解
摘要:一、简介Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更大或者更小的数进行运算和处理。float和double只能用来做科学计算或者是工程计算,在商业计算中要用java.math.BigDecimal。BigDecimal所创建的是对象,我们不能使用传统的+、-、*、/等算术运算符直接对其对象进行数学运算,而必须调用其相对应的方法。方法中的参数也必须是BigDecimal的对象。构造器是类的特殊方法,专门用来创建对象,特别是带有参数的对象。二、构造器描述 Big
阅读全文
posted @
2013-11-08 11:08
Ruthless
阅读(168783)
推荐(8) 编辑
Spring IOC的配置使用
摘要:1.1.1 XML配置的结构一般配置文件结构如下: 1、标签主要用来进行Bean定义;2、alias用于定义Bean别名的;3、import用于导入其他配置文件的Bean定义,这是为了加载多个配置文件,当然也可以把这些配置文件构造为一个数组(new String[] {“config1.xml”, config2.xml})传给ApplicationContext实现进行加载多个配置文件,那一个更适合由用户决定;这两种方式都是通过调用Bean Definition Reader 读取Bean定义,内部实现没有任何区别。标签可以放在下的任何位置,没有顺序关系...
阅读全文
posted @
2013-11-05 12:25
Ruthless
阅读(13572)
推荐(0) 编辑
Spring IOC容器基本原理
摘要:2.2.1 IOC容器的概念IOC容器就是具有依赖注入功能的容器,IOC容器负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。应用程序无需直接在代码中new相关的对象,应用程序由IOC容器进行组装。在Spring中BeanFactory是IOC容器的实际代表者。Spring IOC容器如何知道哪些是它管理的对象呢?这就需要配置文件,Spring IOC容器通过读取配置文件中的配置元数据,通过元数据对应用中的各个对象进行实例化及装配。一般使用基于xml配置文件进行配置元数据,而且Spring与配置文件完全解耦的,可以使用其他任何可能的方式进行配置元数据,比如注解、基于java文件的、
阅读全文
posted @
2013-11-04 17:42
Ruthless
阅读(81113)
推荐(12) 编辑
Spring IOC基础
摘要:2.1.1 IOC是什么IOC—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想。在Java开发中,IOC意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。如何理解好IOC呢?理解好IOC的关键是要明确“谁控制谁,控制什么,为何是反转(有...
阅读全文
posted @
2013-11-04 17:18
Ruthless
阅读(2473)
推荐(2) 编辑
Spring基础
摘要:1.2.1 Spring架构图核心容器:包括Core、Beans、Context、EL模块。●Core模块:封装了框架依赖的最底层部分,包括资源访问、类型转换及一些常用工具类。●Beans模块:提供了框架的基础部分,包括反转控制和依赖注入。其中Bean Factory是容器核心,本质是“工厂设计模式”的实现,而且无需编程实现“单例设计模式”,单例完全由容器控制,而且提倡面向接口编程,而非面向实现编程;所有应用程序对象及对象间关系由框架管理,从而真正把你从程序逻辑中把维护对象之间的依赖关系提取出来,所有这些依赖关系都由BeanFactory来维护。●Context模块:以Core和Beans为基
阅读全文
posted @
2013-11-03 23:25
Ruthless
阅读(1941)
推荐(1) 编辑
Spring概述
摘要:1.1.1 Spring是什么Spring是一个开源的轻量级Java SE(Java 标准版本)/Java EE(Java 企业版本)开发应用框架,其目的是用于简化企业级应用程序开发。应用程序是由一组相互协作的对象组成。而在传统应用程序开发中,一个完整的应用是由一组相互协作的对象组成。所以开发一个应用除了要开发业务逻辑之外,最多的是关注如何使这些对象协作来完成所需功能,而且要低耦合、高内聚。业务逻辑开发是不可避免的,那如果有个框架出来帮我们来创建对象及管理这些对象之间的依赖关系。可能有人说了,比如“抽象工厂、工厂方法设计模式”不也可以帮我们创建对象,“生成器模式”帮我们处理对象间的依赖关系,不
阅读全文
posted @
2013-11-03 18:29
Ruthless
阅读(1527)
推荐(2) 编辑
win7+jdk环境变量配置
摘要:进行java开发,首先要安装jdk,安装了jdk后还要进行环境变量配置:1、下载jdk(http://java.sun.com/javase/downloads/index.jsp),我下载的版本是:jdk-6u12-windows-i586-p.exe2、安装jdk-6u12-windows-i586-p.exe,我安装在D:\dev\Java\jdk1.6.0_12\目录下3、配置环境变量:右击“我的电脑”-->"高级"-->"环境变量"1)在系统变量里新建JAVA_HOME变量,变量值为:D:\dev\Java\jdk1.6.0_12\
阅读全文
posted @
2013-11-02 00:40
Ruthless
阅读(26019)
推荐(1) 编辑