转载来自:http://www.cnblogs.com 参数校验是我们程序开发中必不可少的过程.用户在前端页面上填写表单时,前端js程序会校验参数的合法性,当数据到了后端,为了防止恶意操作,保持程序的健壮性,后端同样需要对数据进行校验.后端参数校验最简单的做法是直接在业务方法里面进行判断,当判断成功之后再继续往下执行.但这样带给我们的是代码的耦合,冗余.当我们多个地方需要校验时,我们就需要在每一个地方调用校验程序,导致代码很冗余,且不美观. 那么如何优雅的对参数进行校验呢?JSR303就是为了解…
利用 Spring Boot Admin 进行项目监控管理 一.Spring Boot Admin 是什么 Spring Boot Admin (SBA) 是一个社区开源项目,用于管理和监视 Spring Boot 应用程序.应用程序通过 http 的方式注册到 Spring Boot 管理客户端,或者通过 Spring Cloud 的服务发现机制,然后针对 actuator 接口将数据通过 Vue.js 进行可视化管理. 对于我们来说,我们可以通过 Spring Boot Admin 浏览所有…
[转]C,C++开源项目中的100个Bugs http://tonybai.com/2013/04/10/100-bugs-in-c-cpp-opensource-projects/ 俄罗斯OOO Program Verification Systems公司用自己的静态源码分析产品PVS-Studio对一些知名的C/C++开源项目,诸如Apache Http Server.Chromium.Clang.CMake.MySQL等的源码进行了分析,找出了100个典型的Bugs. 个人觉得这份列表对C…
我这里的android studio的版本是2.2.3版本 一.现在大家都用android studio了,就有人问怎么使用jar包 其实使用jar包比较简单 直接吧jar放入工程的app目录下的libs中 像这样: 二.使用arr包 参考:Android studio 如何打.aar包,并应用 jar包即使包含了xml资源,在应用的时候也会报资源找不到的错误,为什么?因为在引用这个jar包的工程中,jar包中引用ID 指向的是当前项目的资源,目前也没有针对此的解决方法.aar包的出现,让打包资…
CNCF 的博客 发了一篇文章 <Update on CNCF and Open Source Project Velocity 2020>,中文翻译参见 2020年CNCF和开源项目开发速度, 这个数据在2017年发布过一次,这次是3年来的再次更新的数据,往后每6个月就会更新一次数据- open source project velocity data. 跟踪具有最高开发速度的项目是定义未来几年可能成功的有前途平台的有效方法,从数据中我看到了dotnet 是 前30个增长最快速度的开源项目中…
python项目使用jsonschema进行参数校验 最近想要给一个新的openstack项目加上参数校验,过完年回来准备开工的时候,发现其他人已经在做了,对应的patch是:https://review.openstack.org/#/c/422547/ 作者写的很棒,但是对比nova的实现还有一些不足,这里记一下学习笔记 参数校验这个功能,作者大致的实现思路很明确,通过装饰器进行,是这样 @check_input(参数) def post(): pass def check_input(参数…
github中fork分支和pullrequest的最佳实践 */--> code {color: #FF0000} pre.src {background-color: #002b36; color: #839496;} github中fork分支和pullrequest的最佳实践 最近在参与一个国外的github开源项目,遇到自己fork了源库,一段时间之后,源库已经更新了一些内容,这样,自己fork的版本就落后于源库了.那怎么才能与源库保持同步呢? youbute上一个教学视频讲得非常清楚…
异常处理是Java 开发中的一个重要部分.它是关乎每个应用的一个非功能性需求,是为了处理任何错误状况,比如资源不可访问,非法输入,空输入等等.Java提供了几个异常处理特性,以try,catch 和 finally 关键字的形式内建于语言自身之中.Java 编程语言也允许你创建新的异常,并通过使用 throw 和 throws关键字抛出它们.事实上,在Java编程中,Java的异常处理不单单是知道语法这么简单,它必须遵循标准的JDK库,和几个处理错误和异常的开源代码.这里我们将讨论一些关于异常处…
paip.提升性能--多核编程中的java .net php c++最佳实践  v2.0 cah 作者Attilax  艾龙,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blog.csdn.net/attilax //////////多核编程的方法:  1.等候jvm等直接支持多核  2.框架实现 OpenMP   3.使用并发api  (FutureTask.ExecutorService  ) 推荐  4.使用传统muilt thre…
这篇blog旨在帮助大家 梳理一下前面分析的那些开源代码中喜欢使用的一些类,这对我们真正理解这些项目是有极大好处的,以后遇到类似问题 我们就可以自己模仿他们也写 出类似的代码. 1.ExecutorService 这个类实际上就是一个接口 public interface ExecutorService extends Executor { 我们可以看看有哪些频繁使用的类 是实现了这个接口的,其实主要就是3个. /** * Creates a thread pool that reuses a…