- Java实现定时器(Timer) 绪 在应用开发中,经常需要一些周期性的操作,比如每5分钟执行某一操作等。对于这样的操作最方便、高效的实现方式就是使用java.util.Timer工具类。java.util这个包中可以找到Timer和TimerTask这两个类。Timer直接从Object继承,它相当于一个计时器,能够用它来指定某个时间来执行一项任务,或者每隔一定时间间隔... Java实现定时器(Timer) 绪 在应用开发中,经常需要一些周期性的操作,比如每5分钟执行某一操作等。对于这样的操作最方便、高效的实现方式就是使用java.util.Timer工具类。java.util这个包中可以找到Timer和TimerTask这两个类。Timer直接从Object继承,它相当于一个计时器,能够用它来指定某个时间来执行一项任务,或者每隔一定时间间隔...
- Docker容器启动的时候,如果要挂载宿主机的一个目录,可以用-v参数指定。 譬如我要启动一个centos容器,宿主机的/test目录挂载到容器的/soft目录,可通过以下方式指定: docker run -it -v /test:/soft centos /bin/bash 这样在容器启动后,容器内会自动创建/soft的目录。通过这种方式,我们可以明确一点,即-... Docker容器启动的时候,如果要挂载宿主机的一个目录,可以用-v参数指定。 譬如我要启动一个centos容器,宿主机的/test目录挂载到容器的/soft目录,可通过以下方式指定: docker run -it -v /test:/soft centos /bin/bash 这样在容器启动后,容器内会自动创建/soft的目录。通过这种方式,我们可以明确一点,即-...
- 1、let所声明的变量,只在let命令所在的代码块内有效。 2、不存在变量提升:所声明的变量一定要在声明后使用,否则报错。 一定要先声明,再去使用。let x=x;这样就是错误的 ES6明确规定,如果区块中存在let和const命令,这个区块对这些命令声明的变量,从一开始就形成了封闭作用域。凡是在声明之前就使用这些变量,就会报错。 3、不允许重复... 1、let所声明的变量,只在let命令所在的代码块内有效。 2、不存在变量提升:所声明的变量一定要在声明后使用,否则报错。 一定要先声明,再去使用。let x=x;这样就是错误的 ES6明确规定,如果区块中存在let和const命令,这个区块对这些命令声明的变量,从一开始就形成了封闭作用域。凡是在声明之前就使用这些变量,就会报错。 3、不允许重复...
- mxGraph教程-开发入门指南 概述 mxGraph是一个JS绘图组件适用于需要在网页中设计/编辑Workflow/BPM流程图、图表、网络图和普通图形的Web应用程序。mxgraph下载包中包括用javascript写的前端程序,也包括多个和后端程序(java/C#等)集成的例子。以下是mxgraph应用的几个例子。(你可以到www.longboo.com... mxGraph教程-开发入门指南 概述 mxGraph是一个JS绘图组件适用于需要在网页中设计/编辑Workflow/BPM流程图、图表、网络图和普通图形的Web应用程序。mxgraph下载包中包括用javascript写的前端程序,也包括多个和后端程序(java/C#等)集成的例子。以下是mxgraph应用的几个例子。(你可以到www.longboo.com...
- servlet监听器 Listener是Servlet的监听器,它可以监听客户端的请求、服务端的操作等。通过监听器,可以自动激发一些操作,比如监听在线的用户的数量。当 增加一个HttpSession时,就激发sessionCreated(HttpSessionEvent se)方法,这样就可以给在线人数加1。常用的监听接口有以下几个: ServletContextAttr... servlet监听器 Listener是Servlet的监听器,它可以监听客户端的请求、服务端的操作等。通过监听器,可以自动激发一些操作,比如监听在线的用户的数量。当 增加一个HttpSession时,就激发sessionCreated(HttpSessionEvent se)方法,这样就可以给在线人数加1。常用的监听接口有以下几个: ServletContextAttr...
- Tomcat Server处理一个http请求的过程 假设来自客户的请求为: http://localhost:8080/wsota/wsota_index.jsp 1) 请求被发送到本机端口8080,被在那里侦听的Coyote HTTP/1.1 Connector获得 2) Connector把该请求交给它所在的Service的Engine来处理,并等待来自E... Tomcat Server处理一个http请求的过程 假设来自客户的请求为: http://localhost:8080/wsota/wsota_index.jsp 1) 请求被发送到本机端口8080,被在那里侦听的Coyote HTTP/1.1 Connector获得 2) Connector把该请求交给它所在的Service的Engine来处理,并等待来自E...
- 前言 前置工作都在上文的博客里边说过了,链接如下:PyQt5:QChart绘制折线图(1) ,在这边文章里边直接说绘制动态折线相关了。 Charts相关刷新函数 1.append() Qt官方解释: append(qreal x, qreal y):Adds the data point with the coordinates x and y to the ... 前言 前置工作都在上文的博客里边说过了,链接如下:PyQt5:QChart绘制折线图(1) ,在这边文章里边直接说绘制动态折线相关了。 Charts相关刷新函数 1.append() Qt官方解释: append(qreal x, qreal y):Adds the data point with the coordinates x and y to the ...
- Jenkins 是一个可扩展的持续集成引擎。 主要用于: l 持续、自动地构建/测试软件项目。l 监控一些定时执行的任务。 Jenkins拥有的特性包括: l 易于安装-只要把jenkins.war部署到servlet容器,不需要数据库支持。l 易于配置-所有配置都是通过其提供的web界面实现。l 集成RSS/E-mail通过RSS发布构建结果或当构建完成时... Jenkins 是一个可扩展的持续集成引擎。 主要用于: l 持续、自动地构建/测试软件项目。l 监控一些定时执行的任务。 Jenkins拥有的特性包括: l 易于安装-只要把jenkins.war部署到servlet容器,不需要数据库支持。l 易于配置-所有配置都是通过其提供的web界面实现。l 集成RSS/E-mail通过RSS发布构建结果或当构建完成时...
- vector是单向开口的连续线性空间,而deque则是双向开口的连续线性空间,所谓双向开口是指可以在头部和尾部做删除和插入的操作;vector也可以,只是效率太低 c.assign(beg,end) 将[beg; end)区间中的数据赋值给c。 c.assign(n,elem) 将n个elem的拷贝赋值给c。 c.at(idx) 传回索引idx所指引用,如果idx... vector是单向开口的连续线性空间,而deque则是双向开口的连续线性空间,所谓双向开口是指可以在头部和尾部做删除和插入的操作;vector也可以,只是效率太低 c.assign(beg,end) 将[beg; end)区间中的数据赋值给c。 c.assign(n,elem) 将n个elem的拷贝赋值给c。 c.at(idx) 传回索引idx所指引用,如果idx...
- 近期做的一个小项目:Qt击球游戏,相当于二次开发增加附加功能。 已有功能: JSON文件读取;球类生成;球桌生成;碰撞规则; 新增功能: JSON文件新增节点读取;球袋功能;击球功能;动能功能;设计模式:必须 组合模式+其他模式(适配器); 母球分裂功能; 开发环境: Ubuntu+Qt5.10.1+QtCreator4.6.0 功能实现: &nb... 近期做的一个小项目:Qt击球游戏,相当于二次开发增加附加功能。 已有功能: JSON文件读取;球类生成;球桌生成;碰撞规则; 新增功能: JSON文件新增节点读取;球袋功能;击球功能;动能功能;设计模式:必须 组合模式+其他模式(适配器); 母球分裂功能; 开发环境: Ubuntu+Qt5.10.1+QtCreator4.6.0 功能实现: &nb...
- PyQt5: QChart 绘制饼图 1.开发环境说明: 系统环境 :Win10 IDE:VS2017+PyQt5.12+Python3.7 12 2.相关调用库: from ui import Ui_Form from PyQt5.QtGui import * from PyQt5.QtWidgets import * from PyQt5.QtCore im... PyQt5: QChart 绘制饼图 1.开发环境说明: 系统环境 :Win10 IDE:VS2017+PyQt5.12+Python3.7 12 2.相关调用库: from ui import Ui_Form from PyQt5.QtGui import * from PyQt5.QtWidgets import * from PyQt5.QtCore im...
- android View绘制流程分为3个步骤:分别是measure、 layout、 draw 。今天我们先来探究一下measure的过程。在上一节android开发笔记(三十四)中,我们研究了DecorView绘制到PhoneWindow上的流程,也就是View绘制的概况性流程(DecorView extends View), 我们回顾一下那个流程图:... android View绘制流程分为3个步骤:分别是measure、 layout、 draw 。今天我们先来探究一下measure的过程。在上一节android开发笔记(三十四)中,我们研究了DecorView绘制到PhoneWindow上的流程,也就是View绘制的概况性流程(DecorView extends View), 我们回顾一下那个流程图:...
- libvirt-Network Filter 简介 对libvirt-nwfilter 的介主要讲,两个东西,一个是ebtables 。另一个就是它本身nwfilter。nwfilter主要基于ebtables进行开发或者说配置。其中的一些规则设置好之后,可以利用ebtables查看规则是否设置成功。 libvirt-nwfilter ,主要由libvirt提... libvirt-Network Filter 简介 对libvirt-nwfilter 的介主要讲,两个东西,一个是ebtables 。另一个就是它本身nwfilter。nwfilter主要基于ebtables进行开发或者说配置。其中的一些规则设置好之后,可以利用ebtables查看规则是否设置成功。 libvirt-nwfilter ,主要由libvirt提...
- 富 Web 时代,应用变得越来越强大,与此同时也越来越复杂。集群部署、隔离环境、灰度发布以及动态扩容缺一不可,而容器化则成为中间的必要桥梁。 本文我们就来探索一下 Docker 的神秘世界,从零到一掌握 Docker 的基本原理与实践操作。别再守着前端那一亩三分地,是时候该开疆扩土了。 讲个故事 为了更好的理解 Docker 是什么,我们先来讲个故事: 我需... 富 Web 时代,应用变得越来越强大,与此同时也越来越复杂。集群部署、隔离环境、灰度发布以及动态扩容缺一不可,而容器化则成为中间的必要桥梁。 本文我们就来探索一下 Docker 的神秘世界,从零到一掌握 Docker 的基本原理与实践操作。别再守着前端那一亩三分地,是时候该开疆扩土了。 讲个故事 为了更好的理解 Docker 是什么,我们先来讲个故事: 我需...
- 上一篇已经讲了让系统控件如Imageview识别自定义属性的方法一: 自定义LinearLayout,在addview的时候,给每一个系统控件外层再包裹一个自定义VIEWGROUP,然后这个VIEWGROUP来识别自定义属性并执行动画。今天我们讲第二种方法,与第一种方法有点雷同,就是在解析XML中的系统控件时,解析出属性及属性值,把这个控件如Imageview上的自定义属性解... 上一篇已经讲了让系统控件如Imageview识别自定义属性的方法一: 自定义LinearLayout,在addview的时候,给每一个系统控件外层再包裹一个自定义VIEWGROUP,然后这个VIEWGROUP来识别自定义属性并执行动画。今天我们讲第二种方法,与第一种方法有点雷同,就是在解析XML中的系统控件时,解析出属性及属性值,把这个控件如Imageview上的自定义属性解...
上滑加载中
推荐直播
-
华为云码道 × 仓颉编程:工程化AI编码探索2026/05/27 周三 19:00-21:00
刘俊杰-华为云仓颉语言专家/李炎-华为云码道技术专家/王智鹏-OpenCangjie开源社区发起人
本场直播围绕华为云仓颉语言与华为云码道的深度结合,展示华为云智能编程从零基础到高效落地的完整生态能力。以华为云码道为引擎,仓颉语言为载体,带给大家日常提效、趣味创新到极速量产的开发体验。
回顾中 -
一个AI团队帮你写代码:华为云码道Agent Space实战2026/06/25 周四 19:00-21:00
张翰文-华为云码道工程师/郭英旭-青软创新科技集团股份有限公司 软件架构师
本场直播聚焦华为云码道Agent Space两大模式:研发办公、代码开发,亲身体验从需求到代码的AI自动化能力。实操演示基于华为 CodeArts CLI,依托 OpenSpec 规格体系从零搭建业务项目。
即将直播
热门标签