1、确定安装版本 先通过phpinfo()查看php的Compiler、Architecture、Thread Safety,其中Thread Safety如果是enabled,那么就是线程安全(ts),如果是disabled,则是线程不安全(nts),确定好以后,开始下载扩展。 2、下载redis ...
public static void main(String[] args) { //0第一种情况实际数字位数被占位符位数多的时候 //整数部分不动,小数部分四舍五入 String str="42.1521"; System.out.println(new DecimalFormat("0.0"). ...
分类:
编程语言 时间:
2019-12-28 21:18:45
阅读次数:
141
[toc] drf框架的封装风格 1. 原生Django View的源码复习 as_view源码 dispatch源码 2. ApiView的生命周期(源码) 重写的as_view源码 1 继承 类 重写了 和 方法 2 重写的 方法, 主体还是 的`as_view view csrf` 重写的di ...
JSTL JSP为我们提供了可以自定义标签库(Tag Library)的功能,用来替代代码脚本,Sun公司又定义了一套通用的标签库名为JSTL(JSP Standard Tag Library),里面定义很多我们开发中常用的方法 使用JSTL 1.先引入JSTL标签库的jar包类库到WEB-INF/ ...
分类:
Web程序 时间:
2019-12-27 09:58:52
阅读次数:
97
一、禁止使用root用户启动 | 访问控制 使用root权限去运行网络服务是比较有风险的(nginx和apache都是有独立的work用户,而redis没有)。redis crackit 漏洞就是利用root用户的权限来替换或者增加authorized_keys,来获取root登录权限的 使用roo ...
分类:
其他好文 时间:
2019-12-26 17:32:01
阅读次数:
225
1. 全部替换 我们知道 string.replace() 函数仅替换第一次出现的情况。 你可以通过在正则表达式的末尾添加 /g 来替换所有出现的内容。 var example = "potato potato"; console.log(example.replace(/pot/, "tom")) ...
分类:
编程语言 时间:
2019-12-26 09:25:49
阅读次数:
94
Vue2.0之后,官方不再继续维护vue-resource,尤雨溪大大推荐使用Axios用来替代Ajax。 Axios请求头中的Content-Type常见的有3种: 1.Content-Type:application/json 2.Content-Type:application/x-www-f ...
分类:
移动开发 时间:
2019-12-24 20:50:57
阅读次数:
170
前一篇文章《 "Python 中如何实现参数化测试?" 》中,我提到了在 Python 中实现参数化测试的几个库,并留下一个问题: 它们是如何做到把一个方法变成多个方法,并且将每个方法与相应的参数绑定起来的呢? 我们再提炼一下,原问题等于是: 在一个类中,如何使用装饰器把一个类方法变成多个类方法(或 ...
分类:
编程语言 时间:
2019-12-22 14:35:42
阅读次数:
82
开发一个基于注解的登录拦截器,遇到拦截器只能拦截controller不能拦截到具体的方法名,这样拦截器就完全没用,经过仔细摸索,DefaultAnnotationHandlerMapping和AnnotationMethodHandlerAdapter并不支持拦截方法,发现只有3.1版本后才支持,而 ...
分类:
编程语言 时间:
2019-12-21 13:19:30
阅读次数:
80
WebMvcConfigurationSupport是spring boot2.0以后用来替代WebMvcConfigurerAdapter,但是如果你直接用WebMvcConfigurationSupport替换掉WebMvcConfigurerAdap就会发现各种各样的错误。原因其实就是当我们使 ...
分类:
Web程序 时间:
2019-12-20 13:57:54
阅读次数:
146