竹山一叶

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  390 随笔 :: 0 文章 :: 0 评论 :: 192万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

02 2017 档案

摘要:基本用法不说了,网上例子很多,这里主要介绍下比较特殊情况下使用的方法。1. 分组有的时候,我们对一个实体类需要有多中验证方式,在不同的情况下使用不同验证方式,比如说对于一个实体类来的id来说,保存的时候是不需要的,对于更新时是必须的,可以如下配置:[java] view plain copypublic class UserModel { @NotNull(message = "{i... 阅读全文
posted @ 2017-02-15 17:42 竹山一叶 编辑

摘要:概述 Spring MVC支持Bean Validation,通过这个验证技术,可以通过注解方式,很方便的对输入参数进行验证,之前使用的校验方式,都是基于Bean对象的,但是在@RequestParam中,没有Bean对象,这样使得校验无法进行,可以通过使用@Validated注解,使得校验可以进行。校验bean对象 一般校验bean对象,为了可以自动的校验属性,可以通过两步解决:一、声明对象... 阅读全文
posted @ 2017-02-15 17:41 竹山一叶 编辑

摘要:在之前的《跟我学SpringMVC》中的《第七章 注解式控制器的数据验证、类型转换及格式化》中已经介绍过SpringMVC集成Bean Validation 1.0(JSR-303),目前Bean Validation最新版本是Bean Validation 1.1(JSR-349),新特性可以到官网查看,笔者最喜欢的两个特性是:跨参数验证(比如密码和确认密码的验证)和支持在消息中使用EL表达式,... 阅读全文
posted @ 2017-02-15 17:34 竹山一叶 编辑

摘要:数据验证在 Java 分层结构的应用开发中占据着重要位置。Java EE 6 提出了 Bean Validation 规范,使用注解的方式对 Java Bean 进行约束验证,不局限于某一层次或者某一编程模型,灵活易用。本文将向您系统的介绍该规范的各种特性。概述 Bean Validation 规范Bean 是 Java Bean 的缩写,在 Java 分层架构的实际应用中,从表示层到持久化层,每... 阅读全文
posted @ 2017-02-15 17:32 竹山一叶 编辑

摘要:JSR 303 – Bean Validation 是一个数据验证的规范,2009 年 11 月确定最终方案。2009 年 12 月 Java EE 6 发布,Bean Validation 作为一个重要特性被包含其中。本文将对 Bean Validation 的主要功能进行介绍,并通过一些示例来演示如何在 Java 开发过程正确的使用 Bean Validation。关于 Bean Valida... 阅读全文
posted @ 2017-02-15 14:12 竹山一叶 编辑

摘要:【SpringMVC学习11】SpringMVC中的拦截器Springmvc的处理器拦截器类似于Servlet 开发中的过滤器Filter,用于对处理器进行预处理和后处理。本文主要总结一下springmvc中拦截器是如何定义的,以及测试拦截器的执行情况和使用...【SpringMVC学习10】SpringMVC对RESTfull的支持RESTful架构,就是目前流行的一种互联网软件架构。它结构清晰... 阅读全文
posted @ 2017-02-15 11:33 竹山一叶 编辑

摘要:使用hibernate validator出现上面的错误, 需要注意:@NotNull 和 @NotEmpty 和@NotBlank 区别@NotEmpty 用在集合类上面@NotBlank 用在String上面@NotNull 用在基本类型上如果在基本类型上面用NotEmpty或者NotBlank 会出现上面的错来自为知笔记(Wiz) 阅读全文
posted @ 2017-02-14 17:17 竹山一叶 编辑

摘要:首先我们为什么需要做日志管理,在现实的上线中我们经常会遇到系统出现异常或者问题。这个时候就马上打开CRT或者SSH连上服务器拿日子来分析。受网络的各种限制。于是我们就想为什么不能直接在管理后台查看报错的信息呢。于是日志管理就出现了。 其次个人觉得做日志管理最好的是Aop,有的人也喜欢用拦截器。都可以,在此我重点介绍我的实现方式。 Aop有的人说拦截... 阅读全文
posted @ 2017-02-14 15:32 竹山一叶 编辑

摘要:1、Spring AOP支持的AspectJ切入点指示符切入点指示符用来指示切入点表达式目的,,在Spring AOP中目前只有执行方法这一个连接点,Spring AOP支持的AspectJ切入点指示符如下: execution:用于匹配方法执行的连接点; within:用于匹配指定类型内的方法执行; this:用于匹配当前AOP代理对象类型的执行方... 阅读全文
posted @ 2017-02-14 15:18 竹山一叶 编辑

摘要:参考了多篇文章都说明了use-default-filters参数的基本用途,但有些主要点没有说到,这里补充记录下: 这个只扫描com.jaamy包下的@Controller,不会扫描@Service、@Repository 这个不但扫描com.jaamy包下的@Controller,同时也会扫描@Service、@Repository,注意这里没有添加use-default-filters参数 ... 阅读全文
posted @ 2017-02-14 15:08 竹山一叶 编辑

摘要:1、[java] view plain copy 2、在context:component-scan可以添加use-default-filters,spring配置中的use-default-filters用来指示是否自动扫描带有@Component、@Repository、@Service和@Controller的类。默认为true,即默认扫描。3、如果想要过... 阅读全文
posted @ 2017-02-14 14:56 竹山一叶 编辑

摘要:问题如下方式可以成功扫描到@Controller注解的Bean,不会扫描@Service/@Repository的Bean。正确 Java代码 但是如下方式,不仅仅扫描@Controller,还扫描@Service/@Repository的Bean,可能造成一些问题 Java代码 这个尤其在springmvc+spring+hibe... 阅读全文
posted @ 2017-02-14 14:36 竹山一叶 编辑

摘要:typeAliasesPackage 默认只能扫描某一个路径下,或以逗号等分割的 几个路径下的内容,不支持通配符和正则,采用重写的方式解决[html] view plain copy print?package com.xxxx.xxx.util.common; import com.xxxx.xxx.util.LogUtil; import org.apache.common... 阅读全文
posted @ 2017-02-14 09:55 竹山一叶 编辑

摘要:最近公司项目打算模块化,其实一个原因也是为了能够整合公司多个业务的代码,比如一个资源xxx,两个业务中都有对这个资源的管理,虽然是一个资源,但是是完全不同的定义、完全不同的表、不同的处理逻辑。所以打算把类名弄成一样的,但是包名不一样。这里就遇到一个问题,就是在使用注解的时候,两个模块里的这个资源都叫xxxDao,这样在spring启动的时候就会报错。错误如下conflicts with exist... 阅读全文
posted @ 2017-02-13 17:57 竹山一叶 编辑

摘要:由于项目的需要spring的业务相关的bean不是写在xml文件中,因为项目是一个模块一个模块提交的,提交的时候不想修改xml文件,因此就用到了spring的注解Service。 例如: Java代码1 @Service("TestService") 2 public class TestService { 3 } 这等同于:1 spring会在classpa... 阅读全文
posted @ 2017-02-13 17:47 竹山一叶 编辑

摘要:---恢复内容开始--- 接上篇,上篇解析了DefaultBeanGenerator生成bean name的过程(http://www.cnblogs.com/jason0529/p/5272265.html ), 本篇我们继续解析另一类bean name生成方式。 spring定义bean有两种模式,配置文件(xml,properties)和注解。注:jpa的声明接口生成bean应该可以算第... 阅读全文
posted @ 2017-02-13 17:44 竹山一叶 编辑

摘要:我们知道在spring中每个bean都要有一个id或者name标示每个唯一的bean,在xml中定义一个bean可以指定其id和name值,但那些没有指定的,或者注解的spring的beanname怎么来的的?就是BeanNameGenerator接口实现的特性。 BeanNameGenerator接口位于 org.springframework.beans.factory.suppor... 阅读全文
posted @ 2017-02-13 17:40 竹山一叶 编辑

摘要:instanceof运算符 只被用于对象引用变量,检查左边的被测试对象 是不是 右边类或接口的 实例化。如果被测对象是null值,则测试结果总是false。 说明:自身实例或子类实例 instanceof 自身类 返回true 例: String s=new String("javaisland"); System.out.println(s instanceof String); ... 阅读全文
posted @ 2017-02-13 13:38 竹山一叶 编辑

摘要:Class.isAssignableFrom()是用来判断一个类Class1和另一个类Class2是否相同或是另一个类的子类或接口。 格式为: Class1.isAssignableFrom(Class2) 调用者和参数都是java.lang.Class类型。 而instanceof是用来判断一个对象实例是否是一个类或接口的或其子类子接口的实例。 格式是:o... 阅读全文
posted @ 2017-02-13 13:34 竹山一叶 编辑

摘要:Mybatis拦截器只能拦截四类对象,分别为:Executor、ParameterHandler、StatementHandler、ResultSetHandler,而SQL数据库的操作都是从Executor开始,因此要记录Mybatis数据库操作的耗时,需要拦截Executor类,代码实现如下:/** * 数据库操作性能拦截器,记录耗时 * @Intercepts定义Signature数... 阅读全文
posted @ 2017-02-10 17:23 竹山一叶 编辑

摘要:MyBatis拦截器介绍MyBatis提供了一种插件(plugin)的功能,虽然叫做插件,但其实这是拦截器功能。那么拦截器拦截MyBatis中的哪些内容呢?我们进入官网看一看:MyBatis 允许你在已映射语句执行过程中的某一点进行拦截调用。默认情况下,MyBatis 允许使用插件来拦截的方法调用包括:Executor (update, query, flushStatements, commit... 阅读全文
posted @ 2017-02-10 17:20 竹山一叶 编辑

摘要:IDEA下使用Maven的test命令乱码的时候,加上 -Dfile.encoding=GBK 就可以解决啦 如下图所示: 或者在Maven的pom.xml文件中增加: <properties> <argLine>-Dfile.encoding=UTF-8</argLine> </propertie 阅读全文
posted @ 2017-02-10 10:28 竹山一叶 编辑

摘要:转载自:http://my.oschina.net/SEyanlei/blog/188919 mybatis提供了EnumTypeHandler和EnumOrdinalTypeHandler完成枚举类型的转换,两者的功能已经基本满足了日常的使用。但是可能有这样的需求:由于某种原因,我们不想使用枚举的name和ordinal作为数据存储字段。mybatis的自定义转换类出现了。... 阅读全文
posted @ 2017-02-09 10:57 竹山一叶 编辑

摘要:一、简介 我们在用MyBatis里,很多时间有这样一个需求:bean里有个属性是枚举,在DB存储时我们想存的枚举的代号,从DB拿出来时想直接映射成目标枚举类型,也即代号字段与Java枚举类的相互类型转换。 当然,你可以为每个枚举写一个MyEnumTypeHandler,但问题是要为每个类都写一个TypeHandler,过于繁琐。 有了泛型,一个通用的TypeHandler直接搞定。二、源码源... 阅读全文
posted @ 2017-02-09 10:52 竹山一叶 编辑

摘要:引言typeHandlers阅读官方文档 typeHandlers 一节 {:target="_blank"}MyBatis 在预处理语句(PreparedStatement)中设置一个参数时,Java对象将通过ps.setInt、ps.setString、ps.setTimeStamp等方法转换成数据库需要的数据在从结果集(ResultSet)中取出一个值时,将使用rs.getInt、rs.ge... 阅读全文
posted @ 2017-02-09 10:20 竹山一叶 编辑

摘要:平时咱们写程序实体类内或多或少都会有枚举类型属性,方便嘛。但是mybatis里怎么处理他们的增删改查呢?要求:插入的时候,会用枚举的定义插入数据库,我们希望在数据库中看到的是数字或者其他东西;查询的时候,数据库的值可以自动转换为我们对应的枚举值。举例,我有一个这样的枚举类型:Java Code复制内容到剪贴板package cn.com.shuyangyang.domain; public ... 阅读全文
posted @ 2017-02-09 10:02 竹山一叶 编辑

摘要:最近在做d3js + angularjs项目中,经常遇到d3组件与angularjs模块间通信的问题,以及angularjs多个作用域之间互相通信的问题。关于angularjs的作用域概念及其继承模式,这里有一篇我觉得不错的文章,不了解的朋友可以先去看看。 本文主要谈angularjs多个作用域之间如何互相通信。我们经常遇到这样的需求:A作用域这里有一个值改变了,如何通知作用域B相应值去改变。为此... 阅读全文
posted @ 2017-02-08 16:39 竹山一叶 编辑

摘要:上一篇文章中我花了很多口舌去介绍angularjs是一个中型框架,面对大型应用时少不了第三方类库的配合。而我的核心议题是:如何以angularjs的思路使用其他类库,这里jquery是最好的例子了,谁让它争议最大。许多人一看到jquery就火冒三丈冲过来觉得这货是影响代码结构、打破angular way的纯洁的罪魁祸首,但事实是好的木匠总是会允许烂木头的存在,何况jquery并非烂木头。只要配合得... 阅读全文
posted @ 2017-02-08 16:38 竹山一叶 编辑

点击右上角即可分享
微信分享提示