全文参考:https://github.com/iuap-design/blog/issues/38、MDNclientHeight,只读clientHeight可以用公式CSSheight+CSSpadding-水平滚动条的高度(如果存在)来计算。如图,这样一个div,它的clientHeight为95,计算:50(height)+30(padding-top)+30(padding-bottom)-15(经测量滚动条高度就是15)=95clientTop,只读一个元素顶部边框的宽度(以像素表示)。嗯。。就只是border-top-width类似的属性还有一个clientLeft,顾...
继续阅读 >
分类:编程语言
2020
10-08
10-08
浅析PHP中json_encode与json_decode的区别
一、json_encode()对变量进行JSON编码语法:json_encode($value[,$options=0])注意: 1、$value为要编码的值,且该函数只对UTF8编码的数据有效; 2、options:由以下常量组成的二进制掩码:JSON_HEX_QUOT,JSON_HEX_TAG,JSON_HEX_AMP,JSON_HEX_APOS,JSON_NU...
继续阅读 >
2020
10-08
10-08
JavaScript实时更新当前的时间的示例代码
实现的效果如下:时间会实时更新具体的JS代码如下vardateStart;functionstart(){dateStart=newDate();//开始时间startTime();}functionstartTime(){set=window.setTimeout("startTime()",1000);vardt=newDate();varday=dt.getDay();varweeks=newArray("星期日","星期一","星期二","星期三","星期四","星期五","星期六");varweek=weeks[day];varyear=dt.getFullYear();//年varmonth=...
继续阅读 >
2020
10-08
10-08
解密 Linux 版本信息的方法
显示和解释有关Linux版本的信息比看起来要复杂一些。与引用一个简单的版本号不同,识别Linux版本有很多种方法。即使只是快速查看一下uname命令的输出,也可以告诉你一些信息。这些信息是什么,它告诉你什么?在本文中,我们将认真研究uname命令的输出以及其他一些命令和文件提供的版本说明。使用uname每当在Linux系统终端窗口中执行命令uname-a时,都会显示很多信息。那是因为这个小小的a告诉uname命令你想查看...
继续阅读 >
2020
10-08
10-08
浅谈python出错时traceback的解读
写Python代码的时候,当代码中出现错误,会在输出的时候打印Traceback 错误信息,很多初学者看到那一堆错误信息,往往都会处于懵逼状态,脑中总会冒出一句,这都是些啥玩意。如果你是第一次看到它,也许你不知道它在告诉你什么。虽然Python的Traceback 提示信息看着挺复杂,但是里面丰富的信息,可以帮助你诊断和修复代码中引发异常的原因,以及定位到具体哪个文件的哪行代码出现的错误,所以说学会看懂Tracebac...
继续阅读 >
2020
10-08
10-08
Django视图、传参和forms验证操作
简介视图主要内容:URLconf、HttpRequest对象、HttpResponse1)视图接受Web请求并且返回Web响应2)视图就是一个python函数,被定义在views.py中3)响应可以是一张网页的HTML内容,一个重定向,一个404错误等等4)在http请求中产生两个核心对象,所在位置是,django.http:http请求:HttpRequest对象http响应:HttpResponse对象这两个对象是由django帮我构造的URLconf相关概述•在settings.py文件中通过ROOT_URLCONF指定根级u...
继续阅读 >
2020
10-08
10-08
LINUX查看进程的4种方法(小结)
进程是在CPU及内存中运行的程序代码,而每个进程可以创建一个或多个进程(父子进程)。**查看进程方法:**第一种:psauxps命令用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。a:显示...
继续阅读 >
2020
10-08
10-08
Java之jdbc连接mysql数据库的方法步骤详解
Java:jdbc连接mysql数据库安装eclipse和mysql的步骤这里不赘述了。1.一定要下jar包要想实现连接数据库,要先下载mysql-connector-java-5.1.47(或者其他版本)的jar包。低版本的jar包不会出现时差问题的异常。建议在下载界面点右边的"LookingforpreviousGAversions?"下载低版本的。https://www.jb51.net/article/190860.htm我看的是这个教程。2.mysql前期准备我是参照菜鸟教程下载的mysql。https://www.runoob.com/mysql/...
继续阅读 >
2020
10-08
10-08
一文解决django 2.2与mysql兼容性问题
Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,视图V和模版T。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手DjangoReinhardt来命名的。2019年12月2日,Django3.0发布 。背景Django是一个优秀的Pythonweb框架,在使用Django2.2版本配置MySQL数据...
继续阅读 >
2020
10-08
10-08
SpringBoot内部外部配置文件加载顺序解析
内部配置加载顺序SpringBoot启动会扫描以下位置的application.properties或者application.yml文件作为Springboot的默认配置文件?file:./config/?file:./?classpath:/config/?classpath:/优先级由高到底,高优先级的配置会覆盖低优先级的配置;SpringBoot会从这四个位置全部加载主配置文件;互补配置;还可以通过spring.config.location来改变默认的配置文件位置项目打包好以后,我们可以使用命令行参数的形式,启动项目的时候来...
继续阅读 >
2020
10-08
10-08
django 模型字段设置默认值代码
我就废话不多说了,大家还是直接看代码吧~classSitService(models.Model):applicationname=models.CharField(max_length=50,primary_key=True)ip=models.CharField(max_length=50)port=models.IntegerField(default=22)#设置默认值为22path=models.CharField(max_length=50)补充知识:django设置默认值到SQL环境:django1.9.7背景介绍djangomigrate生成表结构时,默认是不处理default(即字段的default是在djan...
继续阅读 >
2020
10-08
10-08
jQuery 添加元素和删除元素的方法
添加新的HTML内容我们将学习用于添加新内容的四个jQuery方法:append()-在被选元素的结尾插入内容prepend()-在被选元素的开头插入内容after()-在被选元素之后插入内容before()-在被选元素之前插入内容jQueryappend()方法jQueryappend()方法在被选元素的结尾插入内容(仍然在该元素的内部)。$("p").append("追加文本");jQueryprepend()方法jQueryprepend()方法在被选元素的开头插入内容。$("p").pre...
继续阅读 >
2020
10-08
10-08
Maven install 报错"程序包不存在"问题的解决方法
概述在mvncleaninstall时,控制台各种报错,大概有:java:[8,52]程序包com.xxx不存在java:[98,27]找不到符号符号:类XXX位置:类XXX[ERROR]COMPILATIONERROR:Causedby:org.apache.maven.plugin.compiler.CompilationFailureException:Compilationfailure atorg.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:858) atorg.apache.maven.plugin.compiler.Co...
继续阅读 >
2020
10-08
10-08
C++中CopyFile和MoveFile函数使用区别的示例分析
1、函数定义CopyFile(A,B,FALSE);表示将文件A拷贝到B,如果B已经存在则覆盖(第三参数为TRUE时表示不覆盖)MoveFile(A,B);表示将文件A移动到B2.函数原型CopyFile:MoveFile:由函数原型可以看出,这两个函数的前两个输入参数都为LRCWSTR类型,如果我们定义的是char*,记得转换成LRCWSTR,否则会报错;另外,这两个函数都返回一个bool型变量,表示执行成功与否,当目标位置路径不存在时,会return03、Demo示例一:CopyFile:#in...
继续阅读 >
2020
10-08
10-08
JAVA序列化Serializable及Externalizable区别详解
序列化简介Java的对象序列化将那些实现Serializable接口的对象转换成一个字节序列,并能在之后将这个字节序列完全恢复为原来的对象。这就意味着Java对象在网络上的传输可以不依赖于当前计算机的操作系统,就可以将对象进行传递,这也是Java跨平台的一种体现。Java对象的序列化主要支持两种特性:1、Java的远程方法调用(RemoteMethodInvocationRMI);2、对于JavaBean来说,序列化也是必须的。要序列化一个对象,需要创...
继续阅读 >
2020
10-08
10-08
理解maven命令package、install、deploy的联系与区别
我们在用maven构建java项目时,最常用的打包命令有mvnpackage、mvninstall、deploy,这三个命令都可完成打jar包或war(当然也可以是其它形式的包)的功能,但这三个命令还是有区别的。下面通过分别执行这三个命令的输出结果,来分析各自所执行的maven的生命周期。mvncleanpackagemvncleaninstallmvncleandeploy(忽略最后的BUILDFAILURE)通过三个命令的输出我们可以看出三者的区别在于包函的maven生命的阶段和执行目标(g...
继续阅读 >
2020
10-08
10-08
vue如何在项目中调用腾讯云的滑动验证码
在项目中使用滑动验证,可以调用腾讯云的组件和接口(付费项目)导言首先看看官方的步骤教学:https://cloud.tencent.com/document/product/1110/36839其中,前端涉及到的是“步骤3:客户端接入”,里面介绍了两种接入方法:“快速接入”和“定制接入”。项目是原生HTML或者jQuery开发,那么可以使用“快速接入”。项目使用vue、react等框架开发,则需要使用“定制接入”。步骤1、新建项目对应appid在验证码控制台中注册A...
继续阅读 >
2020
10-08
10-08
JDK8并行流及串行流区别原理详解
由于处理器核心的增长及较低的硬件成本允许低成本的集群系统,致使如今并行编程无处不在,并行编程似乎是下一个大事件。Java8针对这一事实提供了新的streamAPI及简化了创建并行集合和数组的代码。让我们看一下它是怎么工作的。假设myList是List<Integer>类型的,其中包含500,000个Integer值。在Java8之前的时代中,对这些整数求和的方法是使用for循环完成的。for(inti:myList){result+=i;}从Java8开始,...
继续阅读 >
2020
10-08
10-08
浅析Java Scanner 类的用法
java.util.Scanner是Java5的新特征,我们可以通过Scanner类来获取用户的输入。下面是创建Scanner对象的基本语法:Scanners=newScanner(System.in);接下来我们演示一个最简单的数据输入,并通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext与hasNextLine判断是否还有输入的数据:使用next方法:importjava.util.Scanner;publicclassScannerDemo{publicst...
继续阅读 >
2020
10-08
10-08
django序列化时使用外键的真实值操作
展示:一般情况下序列化得到的外键的内容只是id:...{fields:{uat_date:"2015-07-25",statu:"CG",name:"慢赢优化",tester:[1],product_manager:1,module:[2,3],project:1,plan_version:1,publish_date:"2015-07-25",actual_version:1,type:"XQ",developer:[1]},model:"amazingTable.content",pk:1}...序列化时得到外键的真实值:...{fields:{uat_date:"...
继续阅读 >
2020
10-08
10-08
C、C++、Java到Python,编程入门学习什么语言比较好
摘要:回顾编程语言几十年来的兴衰起伏,似乎也折射了整个信息产业的变迁消亡,想要在技术的洪流里激流勇进,找准并学精一两门编程语言更加显得至关重要。最近,TIOBE更新了7月的编程语言榜单,常年霸榜的C、Java和Python依然蝉联前三位。万万没想到的是,R语言居然冲到了第八位,创下了史上最佳记录。而且后续随着业内对数据统计和挖掘需求的上涨,R语言热度颇有些势不可挡的架势。然而作为程序员吃饭的工具,编程语言之间也形成...
继续阅读 >
2020
10-08
10-08
java开发时各类工具的使用规范
工具类规范一个项目不可能没有工具类,工具类的初衷是良好的,代码重用,但到了后面工具类越来越乱,有些项目工具类有几十个,看的眼花缭乱,还有不少重复。如何编写出好的工具类,我有几点建议:隐藏实现就是要定义自己的工具类,尽量不要在业务代码里面直接调用第三方的工具类。这也是解耦的一种体现。如果我们不定义自己的工具类而是直接使用第三方的工具类有2个不好的地方:不同的人会使用不同的第三方工具库,会比较乱。...
继续阅读 >
2020
10-08
10-08
Django:使用filter的pk进行多值查询操作
由于想要做收藏夹的功能,所以希望能够一次性查询出所有id的对象,查看文档,找到了如下方法pk是primarykey的缩写,顾名思义pk_in就是primarykey在某一个范围内,具体操作(以自带的User为例):User.objects.filter(pk__in=[1,2,3])这样就可以去除id为1,2,3的User的对象了,很方便注意是两个下划线另外,还要pk__gt和pl_lt,都用于筛选范围的User.objects.filter(pk__gt=10)意味着将要得到pk(一般也就是说id)大于10的对象(...
继续阅读 >
2020
10-08
10-08
阿里资深技术专家:在各阶段中3年经验的java程序员应该具备哪些技术能力
3年工作经验的Java程序员应该具备哪些技术能力,这可能是Java程序员们比较关心的内容。我这里要说明一下,以下列举的内容不是都要会的东西,但是你掌握得越多,最终能得到的评价、拿到的薪水势必也越高。1、基本语法这包括static、final、transient等关键字的作用,foreach循环的原理等等。今天面试我问你static关键字有哪些作用,如果你答出static修饰变量、修饰方法我会认为你合格,答出静态块,我会认为你不错,答出静态内部类...
继续阅读 >