你的 docker stop,它优雅吗?

2020-06-18
阅读 6 分钟
8.4k
我们平时在使用 Docker 的时候,一般会使用 ctrl+c 或者 docker stop 的方式关闭容器。但有时候我们可能会遇到 ctrl+c 不生效,或者 docker stop 之后要等待 10s 的情况,就像这样:

Spring Security 的权限验证

2020-06-13
阅读 5 分钟
2.8k
这是 AbstractSecurityInterceptor 的一个子类,并且实现了 Filter接口,负责调用父类的 beforeInvocation()、afterInvocatio() 和finallyInvocation() 方法以及一些 Servlet 相关的工作。真正处理权限验证的代码,其实在父类中。 它存在的意义就是为了能在 Filter中进行权限验证。

Spring Security 中的身份认证

2020-06-07
阅读 7 分钟
5.1k
本文介绍 Spring Security 的身份认证的内容,研究 Spring Security 自带的身份认证方式和添加自己的身份认证方式的方法。

Spring Security Servlet 概览

2020-05-31
阅读 6 分钟
2k
Spring Security 是 Spring 框架中用于实现 Security 相关需求的项目。我们可以通过使用这个框架来实现项目中的安全需求。

使用 Gradle 的 Java 插件构建 Java 项目

2020-02-24
阅读 5 分钟
3.5k
原文地址:[链接],内容没有差别。 在上一篇文章中,我们在没有使用任何插件的情况下,练习了使用 Gradle 构建 Java 项目,最后得到一个脆弱的构建脚本和不符合约定的目录结构。 对此,Gradle 使用了插件来解决这些问题。 插件 Gradle 中的插件,可以给我们带来很多好处,包括: 添加 Task 添加领域对象 约定优于配置的...

使用 Gradle 但不使用 Java 插件构建 Java 项目

2020-02-23
阅读 6 分钟
3.4k
原文地址:[链接],内容没有差别。 本文目标是探索在没有使用任何额外插件的情况下,如何使用 Gradle 构建一个 Java 项目,以此对比使用 Java 插件时得到的好处。 初始化项目 使用 Gradle Init 插件提供的 init task 来创建一个 Gradle 项目: {代码...} 运行完成后,我们将得到这些文件: {代码...} 接下来,我们将关注...

Spring 里那么多种 CORS 的配置方式,到底有什么区别

2019-06-15
阅读 14 分钟
27.2k
作为一个后端开发,我们经常遇到的一个问题就是需要配置 CORS,好让我们的前端能够访问到我们的 API,并且不让其他人访问。而在 Spring 中,我们见过很多种 CORS 的配置,很多资料都只是告诉我们可以这样配置、可以那样配置,但是这些配置有什么区别?

「Java 8 函数式编程」读书笔记——数据并行化

2017-02-20
阅读 2 分钟
3.2k
本书第六章的读书笔记,也是我这个系列的最后一篇读书笔记。后面7、8、9章分别讲的“测试、调试与重构”、“设计和架构的原则”以及“使用Lambda表达式编写并发程序”,因为笔记不好整理,就不写了,感兴趣的同学自己买书来看吧。

「Java 8 函数式编程」读书笔记——高级集合类和收集器

2017-02-10
阅读 4 分钟
3.9k
这种简写的语法被称为方法引用. 方法引用无需考虑参数, 因为一个方法引用可以在不同的情况下解析为不同的Lambda表达式, 这依赖于JVM的推断.

「Java 8 函数式编程」读书笔记——类库

2017-02-08
阅读 2 分钟
2.9k
本书第四章的读书笔记, 本章主要阐述: 如何使用Lambda表达式. 基本类型 考虑到装箱类型过于占用内存, JDK提供了针对基本类型的操作, 以达到优化的效果, 如mapToLong方法. 对基本类型做特殊处理的方法在命名上有明确规范: 如果返回类型为基本类型, 则在基本类型名称前面加To 如果参数类型是基本类型, 则不加前缀只需类型...

「Java 8 函数式编程」读书笔记——流

2017-02-06
阅读 2 分钟
2.2k
本文是「Java 8 函数式编程」第三章的读书笔记,章名为流。本章主要介绍了外部迭代与内部迭代以及常用的高阶函数。 外部迭代与内部迭代 外部迭代 过去我们要对一个List进行迭代时,往往会采用如下方式: {代码...} 而这种方法的原理,其实是先调用iterator方法,然后再迭代,等效于如下代码: {代码...} 这样的迭代方式...

「Java 8 函数式编程」读书笔记——lambda表达式

2017-02-05
阅读 2 分钟
3.7k
本文是「Java 8 函数式编程」第二章的读书笔记。 Lambda引入的变化 Lambda表达式,是一种紧凑的、传递行为的方式,从编程思想上来讲,就是代码即数据。 过去的Java中,存在大量的匿名内部类的使用,会新建一个匿名内部类传入调用的方法中。这种传统的方式,会造成冗余的、不易阅读的代码。 于是Lambda诞生了。Lambda的语...

服务器配置小记

2016-11-19
阅读 9 分钟
4.7k
最近一个项目要上线了,需要搭服务器,本来是交给同学搭的,结果遇到了大坑,还得自己来,今天把这些坑记一下. 服务器有好几台,都是CentOS6.X,两台6.8,一台6.4. 项目需要的环境是Java+Gradle+MySql+Redis+Nginx 在CentOS6.4上的折腾 关于Mysql的折腾 我通过MySql官网下载的yum源安装的MySql,在CentOS6.4的系统上执行 {代码......

Spring高级装配之运行时注入

2016-08-17
阅读 3 分钟
5.1k
原文地址:[链接] 运行时注入与硬编码注入是相对的。硬编码注入在编译时就已经确定了,运行时注入则可能需要一些外部的参数来解决。 Spring提供的两种在运行时求值的方式: 属性占位符(Property placeholder) Spring表达式语言(SpEL) 注入外部的值 使用@PropertySource注解可以引入.properties文件,使用其中的值。 {代...

Sort Solors 解题思路

2016-07-28
阅读 2 分钟
1.5k
Given an array with n objects colored red, white or blue, sort them so that objects of the same color are adjacent, with the colors in the order red, white and blue. Here, we will use the integers 0, 1, and 2 to represent the color red, white, and blue respectively. Note: You are not suppose to u...

利用nginx反向代理来避免ajax跨域请求

2016-06-07
阅读 2 分钟
9.8k
因为对前端不熟悉,以为用ajax就可以不需要callback,然而前端的同学说不跨域的情况下才不需要callback,让我在返回的json里加上。可是我刚刚学会了最基本的spring-mvc用法,根本不知道怎么加上callback