主页

CORS JavaScript 跨域方案 Java 实现

JSONP 方案 实现 在 Controller 中,直接返回 com.fasterxml.jackson.databind.util.JSONPObject 对象,前端代码中便可使用 JSONP 的方案接受。 @RequestMapping(value = "/test")
 @ResponseBody public Object test(@RequestParam(required = false,name = "callback") String callback) { // 程序需要返回的数据 Map<String,String> result = new HashMap<>(); result.put("result",...

阅读更多

Gradle 打包实现生产环境与测试环境配置分离

Gradle 打包实现生产环境与测试环境配置分离 前篇:Maven 打包实现生产环境与测试环境配置分离 前篇是使用 Maven 进行的包管理,这次我们使用 Gradle 进行 Java Web Server 的包管理的配置。 配置 Gradle 配置文件 build.gradle 中配置相关的 resources 配置文件的目录。不同的资源文件放置在 src/main/filters/$env 目录下,其中 $env 目录为环境名,例如:dev、test、product 等等。且定义了默认环境为 dev 环境。 def env = System.getProperty("profile") ?: "dev" sourceSets { main { r...

阅读更多

Spring Cache use Guava

前篇:Spring Cache 缓存注解实现 需求 现在缓存需要指定的过期策略,比如某段时间后过期或者多久没有使用过后过期。 开始 同样的,spring 配置中文件中,需要启用 cache 相关的注解。 <cache:annotation-driven/> TestCache 示例: public class TestCache {
 @Cacheable(value = "testCache") 
 public String get(String name) { 
 return System.currentTimeMillis() + ""; 
 } 
} 并注册该缓存的 Bean。 <bean id="t...

阅读更多

LetsEncrypt SSL 证书签发(Nginx)

概述 官方文档参考: let’s encrypt getting started 域名认证过程有自动认证与手动认证,自动认证会启动一个监听 80 端口的程序来完成自动认证。手动认证使用参数 --webroot 来进行使用网站访问手动认证,认证时,会访问网址 /.well-known/acme-challenge/xxxxxxxx。 每次签发的证书有 90 天的有效期,所以我们还得在每个月去重新签发一个新的证书。 本文的操作是基于系统 CentOS 6.7 操作进行。 准备工作 在取得官方代码前,得先查看系统环境中是否安装全所需要的工具软件。 Git yum -y install git python 2.7 检查 /usr/bin/python -...

阅读更多

转 使用 Java 8 中的 Stream

来源: Think And COde Stream是Java 8 提供的高效操作集合类(Collection)数据的 API。 从 Iterator 到 Stream 有一个字符串的 list,要统计其中长度大于 7 的字符串的数量,用迭代来实现: List<String> wordList = Arrays.asList("regular", "expression", "specified", "as", "a", "string", "must"); int countByIterator = 0; for (String word: wordList) { if (word.length() > 7) { countB...

阅读更多