前端HTML框架(frameset)用法详细解析 Frameset定义W3C是这样定义frameset框架的,通过使用框架,你可以在同一个浏览器窗口中显示不止一个页面。每份HTML文档称为一个框架,并且每个框架都独立于其他的框架。注意,这是HTML框架,不是前端框架,与node.js,vue.js等不同。垂直切割属性为cols。例如:属性值的个数就代表视窗的个数,像这里是两个数,那么就有两个视窗,如果有三个,那么就有三个视窗。值得...
Python基础学习之多任务-协程详细讲解 前言学习Python的小伙伴对于他的多任务一定不会陌生,那么多任务中的协程又有几个小伙伴们知道呢?在本文将重点剖析协程这个知识点。正文一、协程简介 协程 协程,又称微线程,纤程。英文名Coroutine。 协程是python个中另外一种实现多任务的方式,只不过比线程更小占用更小执行单元(理解为需要的资源)。 为啥说它是一个执行单元,因为它自带CPU上下文。这样只要在合适的时机,...
大数据HIVE之DDL操作详细解析 前言在学习大数据开发的小伙伴们都知道在HIVE在整个大数据开发中的重要性,他可以称之为大数据中的数据仓库,那么其中的DDL操作各位小伙伴们又熟悉多少呢?在本文将就这个问题做一个详细的讲解。 正文Hive的DDL操作DDL:data definittion language 数据定义语言 主要是定义或改变表的结构、数据类型、表之间的链接和约束等初始化操作DML:data man...
Python开发之编辑器汇总 前言 在Python开发中编辑器相信各位小伙伴们都不陌生,但是都哪些编辑器比较好用呢?在本文将汇总四种最好用的编辑器,跟随小编一起来看看都有哪四种吧。正文 1、Sublime Text 这是一个轻量级的代码编辑器,跨平台,支持几十种编程语言,包括Python,Java,C/C++等,小巧灵活,运行轻快,支持代码高亮、自动补全、语法提示,插件扩展丰富,是一个很不错的代码编辑器,配置相...
2019年最新大数据Hbase详细解析 前言 大数据领域在2019年似乎上了另一个台阶,像云计算,人工智能,物联网等都离不开大数据,在本文将着重讲解大数据中的Hbase,希望各位小伙伴能够将这个只是点掌握牢固。正文一、hbase与列式存储 hbase最早起源于谷歌的一篇BigTable的论文,它是由java编写的、开源的一个nosql数据库,同时它也是一个列式存储的、支持分布式(基于hdfs)的数据库。什么是列式存储呢?简...
2019年最新大数据HIVE定义及数据类型详解 前言一转眼进入了2019年的4月份,学习大数据的小伙伴们肯定很辛苦吧,在大数据开发中HIVE在其中占了很大的比重,可以说是整个大数据仓的核心,在本文将详细介绍HIVE这个模块,废话不多说跟随小编一起来学习吧。正文一、Hive概述1.Hive简介 Hive数据仓库软件有助于使用SQL读取、编写和管理驻留在分布式存储中的大型数据集。提供了命令行工具和JDBC驱动程序以将用户连接到Hive...
PHP通过Laravel巧妙实现超大文件上传 前言在PHP开发中有的时候会遇到需要上传比较大的文件到服务器,在这相信很多小伙伴们都会抓头,不知道怎么解决,在这里小编将讲解怎么通过Laravel来实现这个功能。正文我们知道,在以前,文件上传采用的是直接传整个文件的方式,这种方式对付一些小文件是没有问题的。而当需要上传大文件时,此种方式不仅操作繁琐,需要修改web服务器和后端语言的配置,而且会大量占用服务器的内存,导致服务器内存吃紧,严重...
PHP面向对象详细解析 前言 学习PHP的小朋友们都知道,PHP在中小型企业的应用是非常广泛包括建站、小程序、CRM与OA等,那么作为基础中的基础,PHP面向对象你又掌握了多少呢?在这将就这个问题做一个详细的讲解。正文一、定义类 使用关键字class定义二、实例化对象 使用关键字new实例化对象三、类成员的添加和访问 (1)类成员:属性、方法、常量 (2)添加成员需要使用修饰符 public、p...
PHP抽象类abstract详细解析 前言 在PHP开发中抽象类abstract相信各位学习PHP的的小伙伴们都不会陌生,他的用法可以说是多种多样,下面随小编一起来看一看吧。正文 1.abstract定义为抽象的类不能被实例化; 2.它里面至少有一个方法是被声明为抽象的,那么这个类就必须被声明为抽象的; 3.被定义为抽象的方法只是声明了其调用方式(参数),不能定义其具体的功能实现; 4.子类继承一个抽象类的时候...
用Python语言巧妙的实现进度条 前言 对于开发或者运维来说,使用Python去完成一些跑批任务,或者做一些监控事件是非常正常的情况。那么如何有效的监控任务的进度,除了在任务中加上log外,还能不能有另一种方式来了解任务进展到哪一步了呢? 这就是今天我们来了解的内容,进度条。正文标准输出 首先说一下在操作系统中,都有哪些控制符: \r: 将光标移动到当前行的首位而不换行; :将光标移动到下一行,并不...
2019年最新Python爬取腾讯招聘网信息代码解析 前言 初学Python的小伙们在入门的时候感觉这门语言有很大的难度,但是他的用处是非常广泛的,在这里将通过实例代码讲解如何通过Python语言实现对于腾讯招聘网站信息的抓取废话不多说,各位小伙伴们一起来学习学习吧。正文代码实例:import requestsfrom bs4 import BeautifulSoupfrom math import ceilheader = {‘U...
大数据Hadoop系列之MapReduce详细解析 前言 在大数据的学习中,很多小伙伴们对于Hadoop中的MapReduce的学习很是吃力,找不到学习的窍门,在本文就MapReduce做一个详细的讲解,帮助各位小伙伴们,更快的掌握MapReduce。正文 由于在学习过程中对MapReduce有很大的困惑,所以这篇文章主要是针对MR的运行机制进行理解记录,主要结合网上几篇博客以及视频的讲解内容进行一个知识的梳理。1、MapReduce...
2019年最新PHP访问数据缓存处理详细解析 前言在PHP开发中服务器端的缓存数据处理可以说是其中的重中之重,但是很多的小伙伴们对此掌握的并不是很牢靠,在这里将重点解析PHP开发中服务器的缓存数据处理,跟着小编一起来学习一下吧。正文 利用Redis或Memcache作为MySQL的缓存,采用是ThinkPHP框架。方法一采用ThinkPHP的S方法$savedata[‘uid’]=session(‘uid’);savedata...
Python入门详细教程 第一章:Python语言的介绍 在这章中,我了解到了计算机的概念、Python的发展史以及Python语言的版本之间的区别,并自己安装了Python的编辑器。通过安装Python编辑器,我认识到安装软件也可以在官网上安装。第二章:Python语句的语法、基本函数以及turtle库的使用 在第二章中介绍了Python的语句的组成及常用的几个函数。1.语句 1、Python程序的框...
Python开发之控制流代码详细解析 前言 在Python开发中控制流很多的地方都会用到,那么作为初学者的你又掌握了多少呢?下面跟随小编通过下面的实例源码来学习吧。正文 配置环境:python 3.6 python编辑器:pycharm代码如下: #!/usr/bin/env python #-- coding: utf-8 -- # 控制流: # 1、布尔值:只有两种值:Ture 和 False A ...
2019年最新Python程序优化汇总 1.引论 建议1:理解Pythonic概念—-详见Python中的《Python之禅》 建议2:编写Pythonic代码 避免不规范代码,比如只用大小写区分变量、使用容易混淆的变量名、害怕过长变量名等。有时候长的变量名会使代码更加具有可读性。 深入学习Python相关知识,比如语言特性、库特性等,比如Python演变过程等。深入学习一两个业内公认的Pythonic的代码库,比如F...
2019年最新Python爬取腾讯招聘网信息代码解析 前言 初学Python的小伙们在入门的时候感觉这门语言有很大的难度,但是他的用处是非常广泛的,在这里将通过实例代码讲解如何通过Python语言实现对于腾讯招聘网站信息的抓取废话不多说,各位小伙伴们一起来学习学习吧。正文代码实例:import requestsfrom bs4 import BeautifulSoupfrom math import ceilheader = {‘U...
Python日常学习之Socket详细解析 前言 在Python学习中Socket相信大家都不会陌生,因为是是一个接口通道,里面不仅封装了IP地址还有端口协议等,下面本文就Socket做一个比较详细的讲解,废话不多说我们开始吧。正文socket基础 什么是socket? - socket为接口通道,内部封装了IP地址、端口、协议等信息;我们可以看作是以前的通过电话机拨号上网的年代,socket即为电话线。 socket...
2019年最新Python爬取腾讯招聘网信息代码解析 前言 初学Python的小伙们在入门的时候感觉这门语言有很大的难度,但是他的用处是非常广泛的,在这里将通过实例代码讲解如何通过Python语言实现对于腾讯招聘网站信息的抓取废话不多说,各位小伙伴们一起来学习学习吧。正文代码实例:import requestsfrom bs4 import BeautifulSoupfrom math import ceilheader = {‘U...
Python开发之控制流代码详细解析 前言 在Python开发中控制流很多的地方都会用到,那么作为初学者的你又掌握了多少呢?下面跟随小编通过下面的实例源码来学习吧。正文 配置环境:python 3.6 python编辑器:pycharm代码如下: #!/usr/bin/env python #-- coding: utf-8 -- # 控制流: # 1、布尔值:只有两种值:Ture 和 False A ...
2019年最新spark常用命令汇总 前言在大数据开发中Spark是专为大规模数据处理而设计的高速引擎,可以说在大数据开发中占据着举足轻重的地位,下面就Spark的一些常用命令做了一下汇总。正文 1. 加速跑 spark-sql --name uername --num-executors 21 --driver-memory 8G --executor-memory 8G 2. 上传数据 建表 create...
HTML5中webSocket方法详细解析 webSocket是什么 webSocket是HTML5新出的一种协议,底层是基于TCP/IP协议的。跟http没有关系,只是复用了http握手通道,用来升级协议。 webSocket的作用 轮询:客户端以一定的时间间隔向服务端发出请求,以频繁请求的方式来保持客户端和服务器端的同步。 缺点: 浏览器需要不断的向服务器发出请求,然而HTTP请求可能包含较长的头部,其中真正有...
如何用PHP完整的开发一个网站? 1、PHPer应具备的知识(1)PHP知识:熟练掌握基础函数,PHP语句(条件、循环),数组(排序、读取),函数(内部 构造),运算(数学 逻辑),面向对象(继承 接口 封装 多态静态属性)等。了解Cookie或者Session一种机制了解一种模板操作机制和使用手头收藏一些好的常用类或方法,能提高我们的开发的速度。如:分页、上传、字符过滤、数据库操作、生成HTML、文件操作等。(2)...
PHP与ajax 是如何实现文件上传的? html 代码1 2 3 4 5 项目使用的是pbootCMS 所以地址可忽略 enctype="multipart/form-data"因为设计到文件上传必须在from 表单中添加该属性js代码 1 function abs(){2 var fileArray = document.getElementById(‘tables’).files[0];3 ...
PHP开发巧妙解决高并发与大流量的问题 一 高并发的概念 在互联网时代,并发,高并发通常是指并发访问。也就是在某个时间点,有多少个访问同时到来,用PHP语言就能够巧妙ode解决这个问题,下面一起来看看吧。二 高并发架构相关概念 1、QPS (每秒查询率) : 每秒钟请求或者查询的数量,在互联网领域,指每秒响应请求数(指HTTP请求) 2、PV(Page View):综合浏览量,即页面浏览量或者点击量,一个访客在24小...
php中TS和NTS都有哪些区别? 在PHP开发中ts(Thread-Safety)即线程安全,多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完,其他线程才可使用。 不会出现数据不一致或者数据污染php以ISAPI方式加载的时候选择这个版本.,php以ISAPI方式加载的时候选择这个版本. nts(None-Thread Safe)即非线程安全,就是不提供数据...
Python多线程定义及用法详细解析 Python多线程 多线程类似于同时执行多个不同程序,多线程运行有如下优点: 1、使用线程可以把占据长时间的程序中的任务放到后台去处理。 2、用户界面可以更加吸引人,比如用户点击了一个按钮去触发某些事件的处理,可以弹出一个进度条来显示处理的进度 3、程序的运行速度可能加快 4、在一些等待的任务实现上如用户输入、文件读写和网络收发数据等,线程就比较有用了。在这种情况下我们可以释...
用Python语言巧妙的实现进度条 前言 对于开发或者运维来说,使用Python去完成一些跑批任务,或者做一些监控事件是非常正常的情况。那么如何有效的监控任务的进度,除了在任务中加上log外,还能不能有另一种方式来了解任务进展到哪一步了呢? 这就是今天我们来了解的内容,进度条。正文标准输出 首先说一下在操作系统中,都有哪些控制符: \r: 将光标移动到当前行的首位而不换行; :将光标移动到下一行,并...
PHP环境部署伪静态教程 前言 在用PHP语言开发网站的时候,伪静态是一个绕不过去的一道坎,在PHP中设置伪静态对于老手来说是手到擒来,但是对于新手来说稍微有点难度,还没有掌握的小伙伴们不要着急,下面跟着小编一起来学习吧。正文一、Apache的伪静态配置1、网站根目录下需要有 .htaccess 文件,没有则自己创建一个,内容为2、在apache的配置文件httpd.conf中查找 : LoadModule...
大数据中模型调优详细解析 k折交叉验证第一步,不重复抽样将原始大数据随机分为 k 份。第二步,每一次挑选其中 1 份作为测试集,剩余 k-1 份作为训练集用于模型训练。第三步,重复第二步 k 次,这样每个子集都有一次机会作为测试集,其余机会作为训练集。在每个训练集上训练后得到一个模型,用这个模型在相应的测试集上测试,计算并保存模型的评估指标,第四步,计算 k 组测试结果的平均值作为模型精度的估计,并作为当前 k...
用Python语言巧妙的实现对WIFI密码的破解 前言 相信很多小伙伴们对于如何破解WIFI密码有过较深的研究,一般时候用的最多的事WIFI万能钥匙类的比较多,但是很多的时候软件不安全还带有木马,针对这种情况小编教教大家如何用Python实线对WIFI密码的破解,废话不多说我们开始把。正文一、前言说明 本机运行环境:系统环境Win10,运行环境Python3.6,运行工具Pycharm 需要Python的包有:pywifi ...
HTML5 Web储存实例解析 在客户端存储数据 HTML5 提供了两种在客户端存储数据的新方法: localStorage - 没有时间限制的数据存储 sessionStorage - 针对一个 session 的数据存储 之前,这些都是由 cookie 完成的。但是 cookie 不适合大量数据的存储,因为它们由每个对服务器的请求来传递,这使得 cookie速度很慢而且效率也不高。 在 HTML5 ...
大数据工程师面试试题汇总HIVE篇 hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 Metastore (hive元数据) Hive将元数据存储在数据库中,比如mysql ,derby.Hive中的元数据包括表的名称,表的列和分区及其属性,表的数据所在的目录 Hive数据存储在HDFS,大部分...
Python开发函数定义及使用方法详解 Python学习——函数1.函数定义:def Firstfunction():‘Mashiro’print(“I love Mashiro!”)print(Firstfunction.doc)#函数文档Firstfunction()#函数调用输出:MashiroI love Mashiro!2.关键字参数:在函数调用时无需考虑参数的顺序def Secondfunction(na...
Python入门应该怎么学才能学好? 一、Python是什么相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一。从性质上来讲它和我们熟知的C、java、php等没有什么本质的区别,也是一种开发语言,而且已经进阶到主流的二十多种开发语言的top 3(数据源自最新的TIOBE排行榜)。来头不小啊!二十多种主流的开发语言,我该从哪一个开始呢?人生苦短,let‘s python!二、Python的由来和发展...
Mac电脑安装mysql数据库的教程 Mac下修改MySQL初始密码 停止 mysql server. 通常是在 ‘系统偏好设置’ > MySQL > ‘Stop MySQL Server’ 打开终端,输入: sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables 打开另一个新终端,输入: sudo /usr/local/mysql/bin/...
Python开发笔记第一天 环境变量的配置: 配置Python的安装目录到path变量中,例如C:\Python37标识符的命名规则:变量名只能以数字,字母,下划线组成。不能以数字开头,保留字不能被使用。建议使用下划线分割student_number。不建议使用中文。Python中的变量Python中没有常量Python中,变量都是指向对象的name = “Alex Li”name2 = name#相当于...
利用Python来实现网站目录扫描器 有人问为什么要去扫描网站目录:懂的人自然懂 这个Python脚本的特点: 1.基本完善 2.界面美观(只是画了个图案) 3.可选参数增加了线程数 4.User Agent细节处理 5.多线程显示进度 扫描目标:Metasploitable Linux代码:WebDirScanner.py:#-- coding:utf-8 --author = “Yiqing...
PHP开发原子操作,文件锁flock,数据库事务详细解析 php原子操作,文件锁flock,数据库事务 php没有继承posix标准支持的unix锁,只封装了一个linux系统调用flock(信号量也能做成锁),按理也是可以使用锁机制的,虽然效率低一点。 php脚本是运行在fastcgi容器中,而fastcgi是多进程的,所以如果php程序访问了临界资源,势必造成程序结果的不正确性。 估计还要考虑下fastcgi容器的问题 ----...
python开发中装饰器-迭代器-生成器定义及用法详细解析 在Python开发刚入门的时候肯定对于他的装饰器、迭代器与生成器掌握的并不是很好,有的小伙伴们很多的时候回记混,下面就这三种做一个详细解析。一、装饰器1、什么是装饰器?器=》工具,装饰=》增加功能1、不修改源代码2、不修改调用方式装饰器是在遵循1和2原则的基础上为被装饰对象增加功能的工具2、实现无参装饰器1、无参装饰器的模板def outter(func):def wrap...
Java核心技术解析详解 1.数据类型包含八种基本类型,其中四种整形(int/short/long/byte),两种浮点类型(float/double),一种用于表示Unicode编码的字符类型char,一种表示真值的boolean类型整形大小排序long(接近正无穷)>int(2147483647)>short(32767)>byte (127)浮点类型大小排序 double>float。浮...
JavaBean转化JSon格式代码详解 内容过程,把做工程过程较好的内容片段备份一次,如下的内容是关于 JavaBean到JSon格式的转换例子的内容,应该对各朋友有一些用处。User u = new User();u.setId(1);u.setName(“lizhi”);u.setAge(24);u.setHeigh(“178cm”);u.setPassword(“lizhi@0324”);User u2 = new...
Python开发分支循环详细解析 if 条件语句 语法:if 条件:代码块 # 条件为真执行else: # else 可选代码块 # 条件为假执行 示例:n = int(input(‘请输入一个数字:’))if n > 0:print(’%s 大于 0’ % n)else:print(’%s 小于 0’ % n) if 语句支持嵌套:if 条件:if 条...
Java程序员面试常见试题汇总 下面是Java程序员相关的热门面试题,你可以用它来好好准备面试。什么是线程? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒。Java在语言层面对多线程提供了卓越的支持,它也是一个很好的卖点。...
Java开发中15种锁定义及用法详细介绍一 Java 中15种锁的介绍在读很多并发文章中,会提及各种各样锁如公平锁,乐观锁等等,这篇文章介绍各种锁的分类。介绍的内容如下:公平锁 / 非公平锁可重入锁 / 不可重入锁独享锁 / 共享锁互斥锁 / 读写锁乐观锁 / 悲观锁分段锁偏向锁 / 轻量级锁 / 重量级锁自旋锁上面是很多锁的名词,这些分类并不是全是指锁的状态,有的指锁的特性,有的指锁的设计,下面总结的内容是对每个锁的...
Java开发环境JDK8创建对象优化教程 在Java开发环境中的JDK lambda foreach 创建对象@Asyncpublic void asyncFullEsDoc() {List docIdList = Arrays.asList(913,914);if (CollectionUtil.isNotNullOrEmpty(docIdList)){List documents = new ArrayList<&g...
Java运行时内存种类划分详细解析 背景:听说Java运行时环境的内存划分是挺进BAT的必经之路。内存划分:Java程序内存的划分是交由JVM执行的,而不像C语言那样需要程序员自己买单(C语言需要程序员为每一个new操作去配对delete/free代码),放权给JVM虚拟机处理有利也有弊,好处是不容易出现内存泄漏和内存溢出问题,坏处就是自己的屁股不能自己擦,万一有一天JVM罢工不释放了,还是自个忘了释放,So了解虚拟机容易引...
Java学习小技巧,巧妙实现sunziren的单向链表 最近面试的过程中,发现有的公司的面试题考到了链表的逆序,这一块我正好不是特别清楚。于是打算把链表这一块好好的学习学习。在网上搜寻了众多的资料以后,了解到链表的核心是节点与节点之间的互相链接。 于是自己也写了一个单向链表的类,里面包括input插入方法,inputById按指定下标插入方法,deleteAll删除所有节点方法,deleteById按指定下标删除结点方法,showAll控制台查看...
PHP中开源框架ThinkPHP巧妙利用 IS_AJAX判断JS 中 Ajax 存在问题 问题: 在 ThinkPHP 中使用原生 js 发起 Ajax 请求的时候、在控制器无法使用 IS_AJAX 进行判断。而使用 jQuery 中的 ajax 是没有问题的。 在ThinkPHP中、有一个判断是 ajax 请求的常量 IS_AJAX; Ajax 请求常用的有两种情况:一种是原生 js 的 ajax 请求、一种是 jQuery 的 ajax 请求。分析: 先...
零基础学习Java之Kotlin从入门到精通 学习Java一段时间后,熟悉了其中的各种各样的坑。习惯了C#的各种特性和语法糖后,再转到Java感觉比较别扭。最后本着反正Java也不是很熟悉,干脆再折腾折腾其他语言的破罐子破摔的心态,逛了一圈JVM语言,最终决定转Kotlin。为何选择Kotlin 项目遭遇人员变动,包括我在内就剩两个人开发,转型成本低,代码质量容易控制。 JVM语言。号称与Java 100%兼容。实际使用的确能...
Java集合中HashMap日常问题及解决办法 前言 今天在学习Java中Session的时候,利用了Session可持久化保存服务器端的特性尝试做了一下用HashMap嵌套的购物车(没有将购物车的商品信息保存在数据库中),之所以做的这么麻烦是为了巩固之前学习的Map知识和锻炼逻辑能力,正好也在其中遇到了一个关于HashMap 的问题,在此做个小小的记录,方便日后查看。问题 服务器端保存购物车商品信息用的是HashMap嵌套,内层H...
Java集合类AbstractList一招巧妙实现equals()重写 题目内容题目内容很简单,就是Java中创建 ArrayList 和 Vector 集合,向两者添加相同内容的字符串,最后用 equals() 方法比较是否相等。这里就考察了 “==” 和 equals() 方法的知识点。这里我最开始以为输出为 false,但实验了一下,结果为 true!为什么呢?因为我不知道 ArrayList 和 Vector 的共同父类 AbstractList ...
Java开发基础之基本数据类型解析 Java分为基本数据类型和引用数据类型。基本数据类型主演分为四类八种,引用数据类型分为接口,类,数组,String。【在java中默认的整数类型是int类型】浮点类型:float,double float(单精点浮点类型)内存空间为4个字节,double(双精点浮点类型)内存空间为8个字节【java中默认的小数类型是double类型】字符类型:char用来存储一个字母或汉字的类型,内存空间为2...
Java开发多线程是如何解决安全问题的? 序言:提到线程安全,可能大家首先想到的是确保接口对共享变量的操作要具备 原子性。实际上,在多线程编程中我们需要同时关注可见性,顺序性和原子性。本篇文章将从这三个问题出发,结合实例详解volatile如何保u证可见性及一定程序上保证顺序性,同时例讲synchronized如何同时保证可见性和原子性,最后对比volatile和synchronized的适用场景。1、多线程编程的三个核心概念原子...
Java开发控制类引用类型详解 Java提供了 java.lang.ref包,该包下的类均与垃圾回收机制相关,这里先介绍Java对象的集中引用类型1.强引用强引用是最常见的,创建对象就是强引用,如 String a = new String(“1”);无论系统内存是否紧张,只要该对象还存在强引用就不会被垃圾回收机制回收。2.软引用当系统内存足够时,不会被回收,当系统内存不足时,会将其回收3.弱引用当垃圾回收机制运行...
Java中JNA调用教程 近期使用Java开发有关于摄像机接收到数据的上传,因为摄像机处理图像是用C语言实现的,所以开发需要用到JNA,实现JAVA对C语言的回调,因为具体的开发方式官方文档里面有示例,所以本文只是简单的把需要注意的点罗列出来。一、 定义JNA提供一些JAVA工具类,在运行期间访问本地库,如dll/so。二、 数据类型对照表官方提供的数据参考表完全够用,当使用数据参考时候,注意参考头文件宏定义。...
大数据实践HIVE详解 一.hive的事务(1)什么是事务要知道hive的事务,首先要知道什么是transaction(事务)?事务就是一组单元化操作,这些操作要么都执行,要么都不执行,是一个不可分割的工作单位。事务有四大特性:A、C、I、D (原子性、一致性、隔离性、持久性)Atomicity: 不可再分割的工作单位,事务中的所有操作要么都发,要么都不发。Consistency: 事务开始之前和事务结束以...
一招实现Django API为D3提供数据 在Python开发工作中见过有的人即便使用了Django,依然还在采取json或geojson的文件形式为页面提供数据,相当于嵌入数据而非加载。下面是个简单有效的例子:先从 model.py 开始models.pyfrom django.db import modelsclass Play(models.Model):name = models.CharField(max_lengt...
Java8 Stream定义及使用方法详解 概述Java8 API中添加了一个新的抽象成为流Stream,可以以一种声明的方式处理数据。Stream与java.io包中的InputStream和OutputStream是完全不同的概念。Java8中的Stream是对集合对象功能的增强,专注与对集合对象进行各种非常便利、高效的聚合操作,或大批量数据操作。Stream就像一个高级版本的迭代器,用户只要给出需要对其包含的元素是执行什么操作...
thinkphp3.2.3对三元表达式实现无缝对接 ThinkPHP3.2.3版本是一个优化和修正版本,比3.2.2更加稳定、高效和安全,是一个推荐升级的版本,而且实现了对三元表达式的支持,具体代码如下!{KaTeX parse error: Expected 'EOF', got '}' at position 17: …tatus?'正常':'错误'}̲{info[‘status’]?info[′msg′]:info[&#x27;m...
Python中出现黏包应该如何解决? Python中黏包现象主要发生在TCP连接, 基于TCP的套接字客户端往服务端上传文件,发送时文件内容是按照一段一段的字节流发送的,在接收方看来,根本不知道该文件的字节流从何处开始,在何处结束.两种黏包现象:1 连续的小包可能会被优化算法给组合到一起进行发送2 第一次如果发送的数据大小2000B接收端一次性接受大小为1024,这就导致剩下的内容会被下一次recv接收到,导致结果错乱解决黏...
Java8中Optional类定义与使用方法详解 概述到目前为止,著名的NullPointerException是导致Java应用程序失败的最常见原因。过去,为了解决空指针异常,Google公司著名的Guava项目引入了Optional类,Guava通过使用检查空值的方式来防止代码污染,它鼓励程序员写更干净的代码。受到Google Guava的启发,Optional类已经成为Java 8类库的一部分。Optional 被定义为一个简单的容器...
一招让Mongo在Spring中顺畅运行 本文旨在Spring中如何成功连接MongoDB并对其进行增删改查等操作,由于小编也是刚接触,对其中的一些原由也不甚了解,若有错误之处,敬请指正。习惯了MySQL在Spring中整合时填写各种各样的连接参数,本来只想做一件简单的数据库插入查询而已,翻遍整个互联网通篇都是复制粘贴抄袭的配置,连接数的多少,超时时间的多少等等。 SprintBoot的出现,秉持约定大于配置的目标,可以使你免去...
Java并发编程中四种线程池及自定义线程使用教程 引言通过前面的文章,我们学习了Executor框架中的核心类ThreadPoolExecutor ,对于线程池的核心调度机制有了一定的了解,并且成功使用ThreadPoolExecutor 创建了线程池。而在Java中,除了ThreadPoolExecutor ,Executor框架中还提供了四种线程池,这四种线程池都是直接或间接配置ThreadPoolExecutor的参数实现的,对于Th...
Python中Django框架巧妙的实现增删改查 Django是Python中一个非常牛逼的web框架,他帮我们做了很多事,里边也提前封装了很多牛逼的功能,用起来简直不要太爽,在写网站的过程中,增删改查这几个基本的功能我们是经常会用到,Django把这系列复杂的逻辑性东西都封装成了方法,供我们直接使用,在使用过程中的体会是简单到令人发指,一个简单的例子给大家演示一下。首先创建一个有多对一关系关联模型我们假设有一个主题,主题下边会有很多内容...
Java开发中各类名词解释大全 在Java开发里面出现了很多名次,包括以后学习Java中也会出现很多常用到的名词,对初学者来说可能不知道是什么意思,或者是对这些刺耳的理解不是特别透彻,这里我就我自己的理解来解释下这些词的意思。包在Java中常说某个包下面的某个类。那么什么是包呢?在平时操作电脑时,我们常江某个文档,视频,音频等问价放在某个文件夹下,而这个文件夹在Java中就就叫做包。其实饱和文件夹在某种意义上来说是等同的,...
Java线程池核心ThreadPoolExecutor的定义及用法 引出线程池Java线程是Java并发编程的基础,前面的文章里,我们的实例基本都是基于线程开发作为实例,并且都是使用的时候就创建一个线程。这种方式比较简单,但是存在一个问题,那就是线程的数量问题。假设有一个系统比较复杂,需要的线程数很多,如果都是采用这种方式来创建线程的话,那么就会极大的消耗系统资源。首先是因为线程本身的创建和销毁需要时间,如果每个小任务都创建一个线程,那么就会大大降低系统的效率...
Java线程池核心ThreadPoolExecutor的定义及用法 引出线程池Java线程是Java并发编程的基础,前面的文章里,我们的实例基本都是基于线程开发作为实例,并且都是使用的时候就创建一个线程。这种方式比较简单,但是存在一个问题,那就是线程的数量问题。假设有一个系统比较复杂,需要的线程数很多,如果都是采用这种方式来创建线程的话,那么就会极大的消耗系统资源。首先是因为线程本身的创建和销毁需要时间,如果每个小任务都创建一个线程,那么就会大大降低系统的效率...
Java多线程详细解析教程 1.原子性:一个操作或者多个操作,要么全部执行成功,要么全部执行失败。比如账户转账问题,A账户向B转100,A账户减去100元,B账户加上一百元,这两个操作必须具备原子性,才能保证数据的安全,所以需要锁来保证数据的原子性。2.可见性:当一个线程修改变量之后,其他线程能够立即看见修改到的值。比如有两个线程a,b,两个共有变量i,线程a修改了i的值,没有及时刷新到主存,线程b看到还是修改之前的...
Java开发要点本地日期时间与字符串的互相转换详细解析 之前介绍Calendar的时候,提到日历实例无法直接输出格式化后的时间字符串,必须先把Calendar类型转换成Date类型,再通过格式化工具SimpleDateFormat获得字符串。而日期时间的格式化恰恰是最常用的场合,这就很尴尬了,原本设计Calendar是想取代Date,结果大家还在继续使用Date类型,没有达到预期的效果。那么Java8重新设计的本地日期时间家族,为了彻底革了Dat...
Python迭代器定义及用法详解 可迭代对象在Python中以直接作用于 for 循环的数据类型有以下几种:一类是集合数据类型,如 list 、 tuple 、 dict 、 set 、 str 等;一类是 generator ,包括生成器和带 yield 的generator function。这些可以直接作用于 for 循环的对象统称为可迭代对象: Iterable 。判断是否可以迭代可以使用 isinstanc...
Python迭代器定义及用法详解 可迭代对象在Python中以直接作用于 for 循环的数据类型有以下几种:一类是集合数据类型,如 list 、 tuple 、 dict 、 set 、 str 等;一类是 generator ,包括生成器和带 yield 的generator function。这些可以直接作用于 for 循环的对象统称为可迭代对象: Iterable 。判断是否可以迭代可以使用 isinstanc...
Java并发编程ThreadLocal定义及用法解析 ...
Java并发编程ThreadLocal定义及用法解析 ...
Java开发中synchronized的定义及用法 synchronized是java中用于同步的关键字,其典型的作用域如下所示.1 对象锁@Slf4jpublic class SynchronizedExample1 {private final int loopNum = 20; // 修饰一个代码块private void test1(int j) {synchronized (this) {for (int i = 0...
Java开发中守护线程和用户线程的区别都有哪些区别他们应该怎么用? 在Java开发中守护线程和用户线程会经常用到,那这俩个到底有什么区别?他们应该如何应用呢?下文会就这两个的区别与用法做一个详细的解析。1 package com.cn.test.thread;23 /**4 * 守护线程:任何一个守护线程都是整个JVM中所有非守护线程的保姆:只要当前JVM实例中尚存在任何一个非守护线程没有结束,5 * 守护线程就全部工作;只有当...
Java开发中堆内存与栈内存都有哪些区别? Java把内存划分成两种:一种是栈内存,一种是堆内存。一、栈内存存放基本类型的变量,对象的引用和方法调用,遵循先入后出的原则。栈内存在函数中定义的“一些基本类型的变量和对象的引用变量”都在函数的栈内存中分配。当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。Java中的...
Java开发中堆内存与栈内存都有哪些区别? Java把内存划分成两种:一种是栈内存,一种是堆内存。一、栈内存存放基本类型的变量,对象的引用和方法调用,遵循先入后出的原则。栈内存在函数中定义的“一些基本类型的变量和对象的引用变量”都在函数的栈内存中分配。当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。Java中的...
Java开发中的Elasticsearch分词器的定义与用法一 在Java开发中无论是内置的分析器(analyzer),还是自定义的分析器(analyzer),都由三种构件块组成的:character filters , tokenizers , token filters。内置的analyzer将这些构建块预先打包到适合不同语言和文本类型的analyzer中。Character filters (字符过滤器)字符过滤器以字符流的形式接收原始文本,并可以通...
Java开发中遇到异常的解决办法 异常:Bean named ‘org.springframework.transaction.interceptor.TransactionInterceptor#0’ is expected to be of type ‘org.aopalliance.aop.Advice’ but was actually of type ‘org.springframework.transaction.i...
巧妙利用Java来实现链表结构 定义:Java编程语言中所谓链表就是指在某节点存储数据的过程中还要有一个属性用来指向下一个链表节点,这样的数据存储方式叫做链表链表优缺点:优点:易于存储和删除缺点:查询起来较麻烦下面我们用java来实现如下链表结构:首先定义节点类:package LinkTest;/**链表节点类@author admin/public class Node {private ...
Java开发中IO流的用法详细解析 练习一:在Java编程里统计一个文件calcCharNum.txt中字母‘A’和’a’出现的总次数。package com.test;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;//练习一:统计一个文件c...
Java编程中Springboot的异常处理与自定义异常处理教程 元旦很快就到来了,提前祝各位元旦快乐,今天给大家分享一个工作中必用一个知识点,就是在Java开发中使用枚举构建自定义异常并应用于springboot的异常处理器。开始之前我先把这个案例的结构大致说明一下:1、使用idea创建一个springboot的Gradle/Maven项目,引入web模块即可(由于案例的重点是异常处理,所以跳过其他操作)。2、创建一个javabean,用来接收前台的参数...
巧妙的理解掌握Java内部类 01 前言昨天晚上,我把车停好以后就回家了。回家后才发现手机落在车里面了,但外面太冷,冷到骨头都能感受到寒意——实在是不想返回一趟去取了(小区的安保还不错,不用担心被砸车玻璃),于是打定主意过几个小时的“世外桃源”生活——别人找不到我,我也找不到别人,这种与世隔绝的状态非常适合读书写作。把厚厚的《Java编程思想》摆在桌子上,正襟危坐,认认真真地读起了第十章——内部类。尽管我已经非常耐心和用...
Java并发编程代码详细解析 相信一部分Java爱好者已经具备一定的并发基础知识,在这里正巧遇到一种需求:查询数据库,根据查询结果集修改数据库记录,但整个流程是做成了一个schedule的,并且查询比较耗时,每两分钟执行一次,故需要在此基础上考虑性能消耗,sql优化可以提高一些系统效率,同样,多线程也可以…下面做个DEMO引出一些Java并发的实际应用场景:import java.util.ArrayList;impo...
Java开发中巧妙实现将byte[]数组转化为String类型 很多人在Java编程时,总是喜欢用一下方法将数组转为字符串:(a为byte数组) String s=a.toString();可是每次返回的时候,新手看来返回的结果是乱码,比如说我,写RSA算法时,没有注意,就以为是解密出来的乱码(哈哈哈),但其实[B@1b6d3586 为栈地址值,这个时候要知道对于返回一个String对象,new一个是基本上不会错的,测试代码如下:1 S...
Java开发集合定义及案例详解 集合类的由来:JAVA是面向对象的,对象用来封装特有数据,对象多了就需要储存起来,当对象的个数不确定的时候,那么就用集合容器进行存储。集合的特点: 1.集合的长度是可变的 2.用于存储对象的容器 3.不可以存储基本数据类型体系: 集合容器因为内部的数据结构不同,有多种具体容器,不断的向上提取,形成了集合框架。 Collection接口: 常见的方法 1....
Java开发中常见排序算法汇总 Java编程中的排序算法可以分为两大类:1、非线性时间比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此称为非线性时间比较类排序。2、线性时间非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此称为线性时间非比较类排序。相关概念稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面。不稳定...
巧妙解决PHP中curl返回false值的方法 在PHP开发中经常会遇到各种问题,就比如PHP中curl返回flase的情况应该如何解决,就这个问题本文给大家详细解答一下。首先来看一个封装的curl函数function request_post($url = ‘’, KaTeX parse error: Expected '}', got 'EOF' at end of input: … if (empty(url) || emp...
Java并发编程中的多线程是怎么实现的? 众所周知,在Java的知识体系中,并发编程是非常重要的一环,也是面试中必问的题,一个好的Java程序员是必须对并发编程这块有所了解的。并发必须知道的概念在深入学习并发编程之前,我们需要了解几个基本的概念。同步和异步同步和异步用请求返回调用的方式来理解相对简单。同步:可以理解为发出一个请求后,必须等待返回结果才能执行后续的操作。异步:请求发出后,不需要等待返回结果,可以继续执行后续操作,异步...
Java开发中抽象类和接口都有什么区别? 在Java软件开发中抽象类和接口会有一个明显的区别,具体会有哪些区别呢?下文就两者的区别做了一个比较详细的描述。抽象类:1、抽象类使用abstract修饰;2、抽象类不能实例化,即不能使用new关键字来实例化对象;3、含有抽象方法(使用abstract关键字修饰的方法)的类是抽象类,必须使用abstract关键字修饰;4、抽象类可以含有抽象方法,也可以不包含抽象方法,抽象类中可以有具体的...
如何用PHP完整的开发一个网站? 1、PHPer应具备的知识(1)PHP知识:熟练掌握基础函数,PHP语句(条件、循环),数组(排序、读取),函数(内部 构造),运算(数学 逻辑),面向对象(继承 接口 封装 多态静态属性)等。了解Cookie或者Session一种机制了解一种模板操作机制和使用手头收藏一些好的常用类或方法,能提高我们的开发的速度。如:分页、上传、字符过滤、数据库操作、生成HTML、文件操作等。(2)...
如何用PHP完整的开发一个网站? 1、PHPer应具备的知识(1)PHP知识:熟练掌握基础函数,PHP语句(条件、循环),数组(排序、读取),函数(内部 构造),运算(数学 逻辑),面向对象(继承 接口 封装 多态静态属性)等。了解Cookie或者Session一种机制了解一种模板操作机制和使用手头收藏一些好的常用类或方法,能提高我们的开发的速度。如:分页、上传、字符过滤、数据库操作、生成HTML、文件操作等。(2)...
Spring AOP前置通知实例讲解与AOP详细解析 一、引出问题 有个接口TestServiceInter,有两个实现方法TestService和Test2Service。他们都有sayHello(); 我们的需求是在调用这两个方法之前,要先完成写日志的功能;二、菜鸟的想法 我在各个实现类的sayHello()方法里面写上写日志的功能就是了。这样实现存在的问题:代码冗余。当所有实现类都要加上日志功能的时候,需要写很多重复代码。三、...
Spring AOP前置通知实例讲解与AOP详细解析 一、引出问题 有个接口TestServiceInter,有两个实现方法TestService和Test2Service。他们都有sayHello(); 我们的需求是在调用这两个方法之前,要先完成写日志的功能;二、菜鸟的想法 我在各个实现类的sayHello()方法里面写上写日志的功能就是了。这样实现存在的问题:代码冗余。当所有实现类都要加上日志功能的时候,需要写很多重复代码。三、...
Java开发中业务层入参校验详细解析 背景首先,我们达成以下共识:一个服务方法,如果入参太多,且基本为非pojo,会给调用方造成不必要的干扰。尽管可以把文档写的很完善,但还是建议使用pojo对多个参数合理封装。如下示例:@Datapublic class UserVo {private String username;private Integer age;private List hobby;}...
Java教程--枚举类型使用方法详细讲解 在Java开发中枚举类型定义了一个枚举值的列表,每个值是一个标识符。例如,下面的语句声明了一个枚举类型,用来表示星期的可能情况: public enum Day {SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY} 实际上,这个声明定义的类型是一个类,它有7个实例。因此,在比较两个枚举类型的值时,永远不需要调...
PHP代码中是如何实现文件上传的? 这里使用PHP的全局数组$_FILES来实现文件上传:$_FILES[“file”][“name”] - 被上传文件的名称$_FILES[“file”][“type”] - 被上传文件的类型$_FILES[“file”][“size”] - 被上传文件的大小,以字节计$_FILES[“file”][“tmp_name”] - 存储在服务器的文件的临时副本的名称$_FILES[“file...
大数据Hadoop中HDFS用法详细解析 Hadoop–HDFSEdits和Fsimage机制详解概述fsimage镜像文件包含了整个HDFS文件系统的所有目录和文件的indoe(节点)信息,比如:/node01/node,会记录每个节点nodeid,以及节点之间父子路径。以及文件名,文件大小,文件被切成几块,每个数据块描述信息、修改时间、访问时间等;此外还有对目录的修改时间、访问权限控制信息(目录所属用户,所在组等)等。另...
Java开发Swing实战JFrame和JTabbedPane容器的用法详细解析 概述:项目是一个桌面程序,涉及标签和按钮组件、布局管理器组件、面板组件、列表框和下拉框组件等组件,以及Swing事件处理机制。下面先从最基础的界面开始。/**@author: lishuai@date: 2018/11/26 13:51*/public class WeimingSyncApplets {public static void main(String[] args...