- 博客(32)
- 资源 (3)
- 收藏
- 关注
原创 spring-data-redis源码导读
PS: spring-data-redis在springboot2.0版本时有一次较大的逻辑功能改动,当前文章基于springboot2.1.13版本Spring缓存支持Spring定义了org.springframework.cache.CacheManager 和 org.springframework.cache.Cache 接口来统一不同缓存技术。其中CacheManager是Spring提供的各种缓存技术抽象接口,内部使用Cache接口进行缓存的增删改查操作,我们一般不会直接和C.
2022-03-11 12:36:43
1782
原创 java8-新的日期和时间API
在Java8之前对时间支持的库只有Date和Calender库。其中Date类中的很多方法都已经被废弃了,取而代之的是java.util.Calender类。然后Calender类仍然拥有Date类中的一些问题和设计缺陷。如,月份仍然是从0开始计算。为解决这些缺陷,Java8中提供了新的日期和时间API,如操纵、解析、打印输出日期-时间对象,使用不同的时区和年历。1、LocalDate...
2019-08-15 16:03:10
278
原创 重复读取inputStream
inputstream只能读取一次,再次读取则无法获取到内容。这是因为inputStream的内部有个pos指针,当读取的时候指针会不断的移动,当移动到末尾的时候,就无法再次读取了。问题解决:方法一: 使用ByteArrayOutputStream将字节缓存,每次读取都从ByteArrayOutputStream里面获取。 获取ByteArrayOutputStream...
2019-07-01 11:55:59
3650
原创 API文档管理-swagger2
使用流程如下:1)引入相应的maven包: <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <versi...
2019-04-09 11:02:46
489
原创 mybatis批量修改和查询
<trim>属性说明 1.prefix,suffix 表示在trim标签包裹的部分的前面或者后面添加内容 2.如果同时有prefixOverrides,suffixOverrides 表示会用prefix,suffix覆盖Overrides中的内容。 3.如果只有prefixOverrides,suffixOverrides 表示删除开头的或结尾的xxxOverides指定的内容。
2019-04-08 16:21:23
643
原创 lombok
目录lombok介绍在IDEA中安装插件引入maven依赖注解详情@Data@Getter/@Setter@NonNull@Cleanup@EqualsAndHashCode@ToString@AllArgsConstructor@NoArgsConstructor@RequiredArgsConstructorlombok介绍l...
2019-03-04 17:30:54
575
原创 apache-httpclient多文件上传支持Input
引入maven依赖 <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.3.6...
2019-02-13 18:20:20
513
原创 分布式id-雪花算法
Twitter的雪花算法SnowFlake,使用Java语言实现。SnowFlake算法产生的ID是一个64位的整型,结构如下(每一部分用“-”符号分隔):0 - 0000000000 0000000000 0000000000 0000000000 0 - 00000 - 00000 - 0000000000001位标识部分,在java中由于long的最高位是符号位,正数是0,负...
2019-02-12 14:37:44
885
原创 @controllerAdvice 统一处理异常
spring3.2版本提供了新注解@controllerAdvice,意为控制器增强。配合@ExceptionHandler注解可以统一处理异常注:需开启<mvc:annotation-drive> @ControllerAdvicepublic class DefaultExceptionHandler { protected Logger logger =...
2018-12-25 16:50:54
515
原创 hiberbate validation 自定义注解
Hibernate Validator 是 Bean Validation 的参考实现 。Hibernate Validator 提供了 JSR 303 规范中所有内置 constraint 的实现,除此之外还有一些附加的 constraint。1.maven中引入hibernate-validator对应的jar:<dependency> <groupId&g...
2018-12-24 15:19:37
699
原创 spring-cache
pringCache是SpringFramework3.1引入的新特性,提供了基于注解的缓存配置方法。作用当我们在调用一个缓存方法时会根据相关信息和返回结果作为一个键值对存放在缓存中,等到下次利用同样的参数来调用该方法时将不再执行该方法,而是直接从缓存中获取结果进行返回 配置1、pom.xml文件中添加依赖<dependency> <groupI...
2018-12-24 14:40:57
150
原创 Java对象合并,org.springframework.beans.BeanUtils
问题场景: 在实际开发中可能存在将两个对象合并为一个对象的需求,传统的方法当然是一个个get和set但是这样的代码很不整洁,我们可以基于反射去实现这一需求。所幸apache和spring都提供的有该方法。Spring:public static void copyProperties(Object source, Object target) throws BeansExcepti...
2018-11-28 17:53:16
6230
原创 idea运行tomcat js文件在浏览器中乱码
最近使用idea开发新功能结果发现js文件乱码了。更改了各种配置才终于解决了问题,在此记录下解决方案,希望能帮助各位老铁!1、 file->settings->appearence里面有个Name设置成支持中文的字 体2、ettings中的Eidtor->File Encodings里面设置字体编码格式,一般都是UTF-8(注:勾选Transparet可以让properties显...
2018-05-07 15:27:25
8365
6
转载 ajax异步请求
错误信息: XMLHttpRequest cannot load http://web.image.myqcloud.com/photos/v2/10008653/bhpocket/0/?sign=4FcLKd5B8…p4SkFVUEJtZ1omZT0xNDQ0NzExMDE5JnQ9MTQ0NDcwNzQxOSZyPTEzMDMyMDgzOTAmdT0wJmY9.No ‘Access-Contr
2017-10-25 09:47:57
735
原创 XSS拦截
web.xml配置: <filter> <filter-name>XssSqlFilter</filter-name> <filter-class>具体处理类</filter-class> </filter> <filter-mapping> <filter-name>XssSqlFilter</filter-name> <url-pattern>/*</u
2017-10-23 11:29:45
666
原创 解决微信图片无法显示问题。服务器下载图片,返回Image流
目前越来越多的网站做了图片防盗链,对我们实际开发造成了不小的影响 。特别是微信的素材库,一直得不到图片内容。前前后后用了很多方案,包括使用搜狗图片加载,传送门图片加载,QQ浏览器加载,但是终究不是自己的,而且越来越不稳定。 最后花了一个上午研究了一下,最终采用后端下载图片,前端显示的方案。1、使用HttpURLConnection得到inputStream。 参数为图片地址
2016-10-09 16:49:56
6856
转载 Mybatis 自定义SqlSessionFactoryBean扫描通配符typeAliasesPackage
typeAliasesPackage 默认只能扫描某一个路径下,或以逗号等分割的 几个路径下的内容,不支持通配符和正则,采用重写的方式解决package com.xxxx.xxx.util.common; import com.xxxx.xxx.util.LogUtil; import org.apache.commons.lang3.StringUtils; import
2016-08-12 17:47:44
14540
转载 MYSQL查询不区分大小写
MYSQL在默认的情况下查询是不区分大小写的,例如:mysql> create table t1( -> name varchar(10));Query OK, 0 rows affected (0.09 sec)mysql> insert into t1 values('you'),('You'),('YOU');Query OK, 3 rows affecte
2016-08-09 15:00:33
535
翻译 解除springmvc限制参数对象映射个数不能超过256个
springmvc默认只支持256个对象映射,加入以下代码即可解决: @InitBinder public void initListBinder(WebDataBinder binder) { // 设置需要参数的元素个数,默认为256 binder.setAutoGrowCollectionLimit(1000); }
2016-07-21 10:03:44
1829
原创 基于springmvc的异常处理
在实际的开发过程中,无论是业务还是数据库都有可能会发生异常。如果每个地方都单独去处理异常,系统的代码耦合度高,工作量大且不好统一,维护的工作量也很大。因此,我们将所有类型的异常处理从各处理过程解耦出来,这样既保证了相关处理过程的功能较单一,也实现了异常信息的统一处理和维护。本文主要讲述基于实现Spring的异常处理接口HandlerExceptionResolver 自定义自己的异常处理器。
2016-07-11 17:30:00
341
原创 springmvc 国际化
本文基于SpringMVC国际化。描述了如何实现Spring的国际化,在jsp页面中如何获取国际化信息,本文描述如何在java代码中获取国际化信息,同时国际化切换和返回信息语言切换。1、主要的jar包为: org.springframework spring-webmvc ${spring.version} org.springframework spring-cont
2016-07-11 11:34:08
1759
原创 Spring的PropertyPlaceholderConfigurer应用与集成项目properties文件管理
PropertyPlaceholderConfigurer类就是bean factory post-processor的一种,它的作用是一个资源属性的配置器,能够将BeanFactory的里定义的内容放在一个以.propertis后缀的文件中。因此我们可以继承该类,实现自己定制的properties文件管理。1、数据库的配置文件jdbc.properties存放数据库账号,密码及地址信息。这些
2016-07-05 17:46:36
559
转载 eclipse 配置
1、修改工作空间默认编码如果要使插件开发应用能有更好的国际化支持,能够最大程度的支持中文输出,则最好使 Java文件使用UTF-8编码。修改默认编码在菜单导航栏上Window-->Preferences 打开"首选项"对话框,左侧导航树,导航到 General-->Workspace2、eclipse设置字体大小在菜单导航栏上Wi
2016-07-01 17:03:09
399
原创 解决ajax请求跨域的两个方法
方案一:不更改后端代码。前端采用jsonp请求。$.ajax({ type : "get", async:false, url : "http://www.xxx.com/ajax.do", dataType : "jsonp", jsonp: "callbackparam",//服务端用于接收callback调用的function名的参数 jsonpCallback:"succe
2016-05-11 14:15:37
460
翻译 js实现复制到剪切板,兼容所有浏览器
HTML: 复制链接 PS : 用于存放数据的input不能够设置为hidden,同样不能设置display : noneJS://复制链接function copyfieldvalue(e, id){ var field = document.getElementById(id
2016-01-06 15:33:06
662
原创 junit集成maven。 No SecurityManager accessible to the calling code, either bound to the org.apache.shir
No SecurityManager accessible to the calling code, either bound to the org.apache.shir
2015-08-11 14:47:14
1895
转载 使用命令导入导出mysql
MySQL命令行导出数据库1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录如我输入的命令行:cd C:\Program Files\MySQL\MySQL Server 4.1\bin(或者直接将windows的环境变量path中添加该目录)2,导出数据库:mysqldump -u 用户名 -p 数据库名 > 导出的文件名如我输
2015-08-06 11:07:49
421
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人