- 433M无线收发模块详解
无线通信技术在现代社会中扮演着至关重要的角色,它让我们能够实现便捷的远程控制、智能家居、自动化以及各种物联网应用。无线通信技术包括WiFi、蓝牙、NFC、Zigbee、5G等等。本次我要给大家介绍无线通信技术之一的433M,从基本概念到工作原理再到实际应用。我们将逐步剖析433M模块背后的技术细节。无论您是初学者还是有一定经验的开发者,这篇文章都将为您提供全面的指导和启发,帮助您更好地了解和应用4
- 认识包管理工具: npm、yarn和pnpm
前端npm工程化
包管理工具的发展2010年1月,一款名为npm的包管理器诞生。它确立了包管理器工作的核心原则。npm的发布诞生了一场革命,在此之前,项目依赖项都是手动下载和管理的。npm引入了文件和元数据字段,将依赖项列表存储在package.json文件中,并且将下载的文件保存到node_modules文件夹中。后来因为npm的缺陷或者旧版本的不足,又出现了一个个替代npm来进行包管理的轮子,例如:yarn,y
- 【职业发展】从ETL到大数据:如何规划你的数据职业生涯?
首先:ETL工程师其实是一个特别简单的岗位。为什么简单?ETL就是数据仓库项目建设和日常维护中的一种工作,ETL,就是抽取、转换、装载的英文缩写。但是这个现实中都是使用相应工具软件的。至于怎么抽取,怎么转换、怎么装载,都是与具体业务相结合的。比如:每天晚8点抽取,a+b转换成c,从A设备读出a和b,计算成c之后存到W设备上。这就是ETL要干的事。特别简单。没有技术含量。但是工作量却比较大。但是工作
- [Python基础](5) Python列表( list )详细解读
apk___
Pythonpython开发语言list
作者制作不易,关注、点赞、收藏一下吧!目录1.列表的基本概念2.一维列表2.1.创建一维列表与访问元素2.2.在一维列表中修改元素、添加元素、删除元素2.3.列表排序2.4.一维列表遍历重点!2.5.列表切片3.二维列表3.1.创建二维列表和访问元素3.2.在二维数组中修改元素、添加元素、删除元素3.3.二维列表遍历3.4.二维列表切片4.拓展NumPy数组1.列表的基本概念在Python中,列表
- C语言中的内存管理:`malloc`、`free`和内存泄漏
cc++c#后端go
C语言是一种非常强大的低级编程语言,提供了直接操作计算机内存的能力,这使得它在系统编程、嵌入式开发、以及高性能计算等领域得到了广泛应用。然而,这种能力同时也带来了复杂的内存管理问题。如何正确、有效地分配和释放内存是每一个C程序员都必须掌握的基本技能。本文将详细探讨C语言中的内存管理,重点关注内存分配函数malloc、内存释放函数free,以及常见的内存管理错误,如内存泄漏。1.动态内存分配:mal
- 【C语言】exit函数详解
DevKevin
#C函数算法
一、exit函数的定义exit函数是C标准库中的函数,其原型定义在stdlib.h头文件中。exit函数的作用是终止当前程序的执行,并返回一个指定的退出码给操作系统。其基本用法如下:#includevoidexit(intstatus);具体功能分类有以下三种,不同的类型对应不同的使用环境:status参数是程序的退出状态码,通常情况下,0表示程序正常结束,非零值表示程序出现了错误或异常情况。调用
- Shell脚本实现Twitter的Snowflake算法的ID生成器
大部分时候,需要通过shell脚本批量处理一些数据,在分布式环境下,数据库表的主键存储的都是分布id,通过Java代码生成。shell脚本都是通过mysql命令生成insert语句,以前生成insert语句时,我都是先selectMAX(id)fromtable赋值到MAX_ID,然后拼接,类似于max_id_sql="selectMAX(id)fromtable";MAX_ID="$(query
- HarmonyOS 如何获取设备信息(系统、版本、网络连接状态)
前言HarmonyOS提供了一个强大的API集,方便开发者获取设备的硬件和软件信息。通过@kit.BasicServicesKit模块的deviceInfo接口,开发者可以访问设备的型号、品牌、系统版本等详细信息。本文将详细介绍如何使用这些接口获取设备信息,并提供一个完整的Demo示例代码。一、引入模块和基本设备信息的获取首先,引入@kit.BasicServicesKit模块,然后通过devic
- vue表单案例练习:vue表单创建一行数据及删除数据的实现与理解
==如何使用Vue:基本结构:1、引入Vue的核心JS文件2、准备Dom结构3、实例化组件通过el属性,挂载元素,绑定id为app的html元素通过data属性,定义数据,可以在html代码段中显示的数据4、获取数据数据绑定最常见的形式就是使用“Mustache”语法(双大括号)的文本插值==@[TOC]目标两个例子:1.表单数据一行的创建+删除(彻底删除/隐藏双实现)代码+注释==特色:1:内容
- 【9.2】Golang后端开发系列--Gin路由定义与实战使用
不知名美食探索家
Golang系统性学习golanggin
文章目录一、Gin框架路由的基本定义方式1.简单路由创建2.路由参数3.查询参数二、商业大项目中的路由定义和服务调用1.路由模块化2.路由组和中间件3.中间件的使用4.服务层调用5.错误处理6.版本控制7.路由注册一、Gin框架路由的基本定义方式1.简单路由创建使用gin.Default()创建一个带有默认中间件的路由引擎,然后通过GET,POST,PUT,DELETE等方法来定义不同HTTP方法
- 【9.1】Golang后端开发系列--Gin快速入门指南
不知名美食探索家
Golang系统性学习golanggin开发语言
文章目录一、引言二、Gin框架概述(一)什么是Gin(二)为什么选择Gin三、安装Gin框架(一)安装Go语言环境(二)使用GoModules安装Gin四、路由基础(一)基本路由定义(二)路由参数(三)查询参数五、请求处理和响应(一)处理JSON数据(二)处理表单数据六、中间件的使用️(一)内置中间件(二)中间件的执行顺序七、模板渲染(一)使用HTML模板(二)模板语法和数据传递八、错误处理❌(一
- 【1】Elasticsearch 30分钟快速入门
不知名美食探索家
ES快速学习eselasticsearch
文章目录一、Elasticsearch基本概念及工作原理(一)基本概念(二)工作原理二、Elasticsearch原生RESTful方式的增删改查(一)创建索引(二)插入文档(三)查询文档(四)更新文档(五)删除文档(六)删除索引三、PythonSDK实现增删改查(一)安装ElasticsearchPythonSDK(二)连接到Elasticsearch(三)插入文档(四)查询文档(五)更新文档(
- 在 SwiftUI 中实战使用 MapKit API
前言SwiftUI与MapKit的集成在今年发生了重大变化。在之前的SwiftUI版本中,我们将MKMapView的基本功能封装到名为Map的SwiftUI视图中。幸运的是,事情发生了变化,SwiftUI引入了与MapKit集成的新API。本篇文章我们将学习如何在SwiftUI的最新版本中使用可用的新功能丰富的API与MapKit集成。正如我之前所说,在SwiftUI框架的早期版本中,我们有一个M
- MySQL-数据库表设计
DK_ing
#MySQL
第一范式(1NF):字段具有原子性,不可再分。所有关系型数据库系统都满足第一范式)数据库表中的字段都是单一属性的,不可再分;第二范式(2NF):要求实体的属性完全依赖于主键。所谓完全依赖是指不能存在仅依赖主键一部分的属性,如果存在,那么这个属性和主关键字的这一部分应该分离出来形成一个新的实体,新实体与原实体之间是一对多的关系。为实现区分通常需要为表加上一个列,以存储各个实例的惟一标识。简而言之,第
- Python 装饰器
暮色尽染
Pythonpython开发语言
Python装饰器是一种强大且优雅的工具,它允许我们在不修改原始函数代码的情况下,增加或改变函数的功能。装饰器的使用可以显著提高代码的复用性和可读性,是Python编程中不可或缺的一部分。装饰器的基本概念装饰器本质上是一个函数,它接受一个函数作为参数并返回一个新的函数。通过装饰器,我们可以在函数执行前后添加额外的逻辑,而不需要修改函数本身的代码。这种特性使得装饰器非常适合用于日志记录、性能测试、事
- iOS - 底层实现中涉及的类型
Batac_蝠猫
iOS底层原理ios
1.基本类型定义//基础类型typedefunsignedlonguintptr_t;//指针大小的无符号整数typedeflongptrdiff_t;//指针差值类型typedefunsignedintuint32_t;//32位无符号整数typedefunsignedlonglonguint64_t;//64位无符号整数//掩码类型typedefuintptr_tmask_t;//用于位掩码操
- 【运维自动化-作业平台】如何使用全局变量之命名空间类型?
命名空间类型的全局变量主要适用场景是同一批主机在多个步骤间需要传递独立的变量值,比如内网ip、hostame,每台主机都是不同的变量值。而字符串变量是全局针对所有主机所有步骤都是一样的变量值。实操演示例:定义一个local_ip的命名空间变量,目标两台机器,然后添加两个执行脚本的步骤,看下变量是如何渲染的。1、添加命名空间变量local_ip2、添加两个执行脚本步骤(步骤一)(步骤二)3、调试执行
- jQuery国内大厂CDN加速链接
摘要jQuery的CDN有很多,但都很不稳定,例如国内的bootcdn经常抽风,还有其他的常见的例如jQuery官方的code.jquery.com、jsDeliver、unpkg.com、staticfile,这些都是经常抽风的。导致使用了线上的CDN的页面打开受到影响,那么就没有国内好用的CDN吗?下面是我汇总的一些大厂的!大厂jQuery静态资源CDN百度https://libs.baidu
- AJAX是如何凭一己之力提高前端程序员的工资水平的?
前端程序员ajax
作者:阿达西链接:juejin.cn/post/7395396352183009290emmm,今天无意间听到一个比较奇怪的信息,就是在很早之前,前端工程师只是一个切图崽,而且工资也不是很高。说白了,就是没含金量的工作。因为那时候的Web应用相对简单,主要关注于页面的静态内容和基本的交互。所以前端开发的工作主要集中在HTML、CSS和基础的JavaScript上。但是自从AJAX出现后,前端程序员
- ArgoWorkflow 教程(一)--DevOps 另一选择?云原生 CICD 初体验
本文主要记录了如何在k8s上快速部署云原生的工作流引擎ArgoWorkflow。ArgoWorkflow是什么ArgoWorkflows是一个开源的云原生工作流引擎,用于在Kubernetes上编排并行作业。Argo工作流作为KubernetesCRD实现。定义工作流,其中工作流中的每个步骤都是一个容器。将多步骤工作流建模为一系列任务,或使用DAG来捕获任务之间的依赖关系图。使用Argo可以在很短
- Linux-Cgroup V2 初体验
本文主要记录LinuxCgroupV2版本基本使用操作,包括cpu、memory子系统演示。1.开启CgroupV2版本检查通过下面这条命令来查看当前系统使用的CgroupsV1还是V2stat-fc%T/sys/fs/cgroup/如果输出是cgroup2fs那就是V2,就像这样root@tezn:~#stat-fc%T/sys/fs/cgroup/cgroup2fs如果输出是tmpfs那就是V
- ls指令详讲
猫咪-9527
计算机操作系统linux
️专栏:https://blog.csdn.net/2301_81831423/category_12872319.html主页:猫咪-9527-CSDN博客“欲穷千里目,更上一层楼。会当凌绝顶,一览众山小。”目录基本语法常用选项详解1.基本选项2.组合选项文件类型表示高级选项常见用法示例常用别名ls是Linux/Unix系统中一个非常常用的命令,用于列出指定目录中的文件和子目录。它可以提供文件的
- 认识正则表达式
正则表达式
如果初次看正则表达式,一定会被它奇怪的样子吓坏的。比如下面这个表达式(]+>\s*)?]+>(?(1)\s*)其实这个正则表达式不算复杂,基本上使用简单匹配加上嵌入条件。其实很多看起来比较复杂表达式无非式一些方式的组合而已,等你掌握正则表达式这个强大的工具之后,你就会发现,看上去很抽象的表达式变得亲切容易起来。这个文章系列文章主要会设计到以下一些知识点,一般网上查到到无非一些现成的例子,而这些例子
- Go 语言 JSON 与 Cache 库 调研与选型
gojson缓存
JSON基本上从以下两种角度进行分析性能方面,如是否使用反射;是否支持Unmarshal到map或struct,未涉及灵活性与扩展性方面,下面报告中只考虑最简单的反序列化,不会提及每个库的灵活性,如提供的一些定制化抽取的API;相关库GO1.14标准库JSON大量使用反射获取值,首先go的反射本身性能较差,其次频繁分配对象,也会带来内存分配和GC的开销;valyala/fastjsonstar:1
- 读《javaScript高级程序设计-第6章》之理解对象
javascript
ECMA-262把对象定义为:无序属性的集合,其属性可以包含基本值、对象或函数。所以,我们可以理解对象就是名值对的集合,名就是对象的每个属性的名字,而每个名字都映射到一个值。创建对象创建对象有两种方式:方式一varperson=newObject();person.name=“Jone”;person.age=20;person.job=“SoftwareEngineer”;person.sayN
- Python入门:3.Python的输入和输出格式化
平凡程序猿~
Pythonpython开发语言
引言在Python编程中,输入与输出是程序与用户交互的核心部分。而输出格式化更是对程序表达能力的极大增强,可以让结果以清晰、美观且易读的方式呈现给用户。本文将深入探讨Python的输入与输出操作,特别是如何使用格式化方法来提升代码质量和可读性。一、输入操作Python提供了简单而强大的输入功能,通过内置函数input()可以从用户那里获取字符串形式的输入。以下是一些基本用法和注意事项:1.基本用法
- 唐刘:TiDB 的 2024 - Cloud、SaaS 与 AI
saas数据库tidb人工智能
2024年已经过去,在去年我也写过两篇类似的文章,TiDBin2023-一次简单的回顾和TiDBCloudin2023-一次简单的回顾,这一次,我准备将TiDB和cloud一起写,一方面原因是我懒了,另外一个更重要的原因在于TiDB跟cloud一直是非常密切的绑定的,我们大多数的迭代和改进都是基于cloud的,cloud已经成为了TiDB的一部分了。在2024年,TiDB也取得了非常瞩目的成绩,在
- element实现动态路由+面包屑
软件技术NINI
vue案例vue.js前端
el-breadcrumb是ElementUI组件库中的一个面包屑导航组件,它用于显示当前页面的路径,帮助用户快速理解和导航到应用的各个部分。在Vue.js项目中,如果你已经安装了ElementUI,就可以很方便地使用el-breadcrumb组件。以下是一个基本的使用示例:安装ElementUI(如果你还没有安装的话):你可以通过npm或yarn来安装ElementUI。bash复制代码npmi
- C语言如何定义宏函数?
小九格物
c语言
在C语言中,宏函数是通过预处理器定义的,它在编译之前替换代码中的宏调用。宏函数可以模拟函数的行为,但它们不是真正的函数,因为它们在编译时不会进行类型检查,也不会分配存储空间。宏函数的定义通常使用#define指令,后面跟着宏的名称和参数列表,以及宏展开后的代码。宏函数的定义方式:1.基本宏函数:这是最简单的宏函数形式,它直接定义一个表达式。#defineSQUARE(x)((x)*(x))2.带参
- 理解Gunicorn:Python WSGI服务器的基石
范范0825
ipythonlinux运维
理解Gunicorn:PythonWSGI服务器的基石介绍Gunicorn,全称GreenUnicorn,是一个为PythonWSGI(WebServerGatewayInterface)应用设计的高效、轻量级HTTP服务器。作为PythonWeb应用部署的常用工具,Gunicorn以其高性能和易用性著称。本文将介绍Gunicorn的基本概念、安装和配置,帮助初学者快速上手。1.什么是Gunico
- 二分查找排序算法
周凡杨
java二分查找排序算法折半
一:概念 二分查找又称
折半查找(
折半搜索/
二分搜索),优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而 查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表 分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步
- java中的BigDecimal
bijian1013
javaBigDecimal
在项目开发过程中出现精度丢失问题,查资料用BigDecimal解决,并发现如下这篇BigDecimal的解决问题的思路和方法很值得学习,特转载。
原文地址:http://blog.csdn.net/ugg/article/de
- Shell echo命令详解
daizj
echoshell
Shell echo命令
Shell 的 echo 指令与 PHP 的 echo 指令类似,都是用于字符串的输出。命令格式:
echo string
您可以使用echo实现更复杂的输出格式控制。 1.显示普通字符串:
echo "It is a test"
这里的双引号完全可以省略,以下命令与上面实例效果一致:
echo Itis a test 2.显示转义
- Oracle DBA 简单操作
周凡杨
oracle dba sql
--执行次数多的SQL
select sql_text,executions from (
select sql_text,executions from v$sqlarea order by executions desc
) where rownum<81;
&nb
- 画图重绘
朱辉辉33
游戏
我第一次接触重绘是编写五子棋小游戏的时候,因为游戏里的棋盘是用线绘制的,而这些东西并不在系统自带的重绘里,所以在移动窗体时,棋盘并不会重绘出来。所以我们要重写系统的重绘方法。
在重写系统重绘方法时,我们要注意一定要调用父类的重绘方法,即加上super.paint(g),因为如果不调用父类的重绘方式,重写后会把父类的重绘覆盖掉,而父类的重绘方法是绘制画布,这样就导致我们
- 线程之初体验
西蜀石兰
线程
一直觉得多线程是学Java的一个分水岭,懂多线程才算入门。
之前看《编程思想》的多线程章节,看的云里雾里,知道线程类有哪几个方法,却依旧不知道线程到底是什么?书上都写线程是进程的模块,共享线程的资源,可是这跟多线程编程有毛线的关系,呜呜。。。
线程其实也是用户自定义的任务,不要过多的强调线程的属性,而忽略了线程最基本的属性。
你可以在线程类的run()方法中定义自己的任务,就跟正常的Ja
- linux集群互相免登陆配置
林鹤霄
linux
配置ssh免登陆
1、生成秘钥和公钥 ssh-keygen -t rsa
2、提示让你输入,什么都不输,三次回车之后会在~下面的.ssh文件夹中多出两个文件id_rsa 和 id_rsa.pub
其中id_rsa为秘钥,id_rsa.pub为公钥,使用公钥加密的数据只有私钥才能对这些数据解密 c
- mysql : Lock wait timeout exceeded; try restarting transaction
aigo
mysql
原文:http://www.cnblogs.com/freeliver54/archive/2010/09/30/1839042.html
原因是你使用的InnoDB 表类型的时候,
默认参数:innodb_lock_wait_timeout设置锁等待的时间是50s,
因为有的锁等待超过了这个时间,所以抱错.
你可以把这个时间加长,或者优化存储
- Socket编程 基本的聊天实现。
alleni123
socket
public class Server
{
//用来存储所有连接上来的客户
private List<ServerThread> clients;
public static void main(String[] args)
{
Server s = new Server();
s.startServer(9988);
}
publi
- 多线程监听器事件模式(一个简单的例子)
百合不是茶
线程监听模式
多线程的事件监听器模式
监听器时间模式经常与多线程使用,在多线程中如何知道我的线程正在执行那什么内容,可以通过时间监听器模式得到
创建多线程的事件监听器模式 思路:
1, 创建线程并启动,在创建线程的位置设置一个标记
2,创建队
- spring InitializingBean接口
bijian1013
javaspring
spring的事务的TransactionTemplate,其源码如下:
public class TransactionTemplate extends DefaultTransactionDefinition implements TransactionOperations, InitializingBean{
...
}
TransactionTemplate继承了DefaultT
- Oracle中询表的权限被授予给了哪些用户
bijian1013
oracle数据库权限
Oracle查询表将权限赋给了哪些用户的SQL,以备查用。
select t.table_name as "表名",
t.grantee as "被授权的属组",
t.owner as "对象所在的属组"
- 【Struts2五】Struts2 参数传值
bit1129
struts2
Struts2中参数传值的3种情况
1.请求参数绑定到Action的实例字段上
2.Action将值传递到转发的视图上
3.Action将值传递到重定向的视图上
一、请求参数绑定到Action的实例字段上以及Action将值传递到转发的视图上
Struts可以自动将请求URL中的请求参数或者表单提交的参数绑定到Action定义的实例字段上,绑定的规则使用ognl表达式语言
- 【Kafka十四】关于auto.offset.reset[Q/A]
bit1129
kafka
I got serveral questions about auto.offset.reset. This configuration parameter governs how consumer read the message from Kafka when there is no initial offset in ZooKeeper or
- nginx gzip压缩配置
ronin47
nginx gzip 压缩范例
nginx gzip压缩配置 更多
0
nginx
gzip
配置
随着nginx的发展,越来越多的网站使用nginx,因此nginx的优化变得越来越重要,今天我们来看看nginx的gzip压缩到底是怎么压缩的呢?
gzip(GNU-ZIP)是一种压缩技术。经过gzip压缩后页面大小可以变为原来的30%甚至更小,这样,用
- java-13.输入一个单向链表,输出该链表中倒数第 k 个节点
bylijinnan
java
two cursors.
Make the first cursor go K steps first.
/*
* 第 13 题:题目:输入一个单向链表,输出该链表中倒数第 k 个节点
*/
public void displayKthItemsBackWard(ListNode head,int k){
ListNode p1=head,p2=head;
- Spring源码学习-JdbcTemplate queryForObject
bylijinnan
javaspring
JdbcTemplate中有两个可能会混淆的queryForObject方法:
1.
Object queryForObject(String sql, Object[] args, Class requiredType)
2.
Object queryForObject(String sql, Object[] args, RowMapper rowMapper)
第1个方法是只查
- [冰川时代]在冰川时代,我们需要什么样的技术?
comsci
技术
看美国那边的气候情况....我有个感觉...是不是要进入小冰期了?
那么在小冰期里面...我们的户外活动肯定会出现很多问题...在室内呆着的情况会非常多...怎么在室内呆着而不发闷...怎么用最低的电力保证室内的温度.....这都需要技术手段...
&nb
- js 获取浏览器型号
cuityang
js浏览器
根据浏览器获取iphone和apk的下载地址
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" content="text/html"/>
<meta name=
- C# socks5详解 转
dalan_123
socketC#
http://www.cnblogs.com/zhujiechang/archive/2008/10/21/1316308.html 这里主要讲的是用.NET实现基于Socket5下面的代理协议进行客户端的通讯,Socket4的实现是类似的,注意的事,这里不是讲用C#实现一个代理服务器,因为实现一个代理服务器需要实现很多协议,头大,而且现在市面上有很多现成的代理服务器用,性能又好,
- 运维 Centos问题汇总
dcj3sjt126com
云主机
一、sh 脚本不执行的原因
sh脚本不执行的原因 只有2个
1.权限不够
2.sh脚本里路径没写完整。
二、解决You have new mail in /var/spool/mail/root
修改/usr/share/logwatch/default.conf/logwatch.conf配置文件
MailTo =
MailFrom
三、查询连接数
- Yii防注入攻击笔记
dcj3sjt126com
sqlWEB安全yii
网站表单有注入漏洞须对所有用户输入的内容进行个过滤和检查,可以使用正则表达式或者直接输入字符判断,大部分是只允许输入字母和数字的,其它字符度不允许;对于内容复杂表单的内容,应该对html和script的符号进行转义替换:尤其是<,>,',"",&这几个符号 这里有个转义对照表:
http://blog.csdn.net/xinzhu1990/articl
- MongoDB简介[一]
eksliang
mongodbMongoDB简介
MongoDB简介
转载请出自出处:http://eksliang.iteye.com/blog/2173288 1.1易于使用
MongoDB是一个面向文档的数据库,而不是关系型数据库。与关系型数据库相比,面向文档的数据库不再有行的概念,取而代之的是更为灵活的“文档”模型。
另外,不
- zookeeper windows 入门安装和测试
greemranqq
zookeeper安装分布式
一、序言
以下是我对zookeeper 的一些理解: zookeeper 作为一个服务注册信息存储的管理工具,好吧,这样说得很抽象,我们举个“栗子”。
栗子1号:
假设我是一家KTV的老板,我同时拥有5家KTV,我肯定得时刻监视
- Spring之使用事务缘由(2-注解实现)
ihuning
spring
Spring事务注解实现
1. 依赖包:
1.1 spring包:
spring-beans-4.0.0.RELEASE.jar
spring-context-4.0.0.
- iOS App Launch Option
啸笑天
option
iOS 程序启动时总会调用application:didFinishLaunchingWithOptions:,其中第二个参数launchOptions为NSDictionary类型的对象,里面存储有此程序启动的原因。
launchOptions中的可能键值见UIApplication Class Reference的Launch Options Keys节 。
1、若用户直接
- jdk与jre的区别(_)
macroli
javajvmjdk
简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。SDK是Software Development Kit 一般指软件开发包,可以包括函数库、编译程序等。
JDK就是Java Development Kit JRE是Java Runtime Enviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。 如果安装了JDK,会发同你
- Updates were rejected because the tip of your current branch is behind
qiaolevip
学习永无止境每天进步一点点众观千象git
$ git push joe prod-2295-1
To
[email protected]:joe.le/dr-frontend.git
! [rejected] prod-2295-1 -> prod-2295-1 (non-fast-forward)
error: failed to push some refs to '
[email protected]
- [一起学Hive]之十四-Hive的元数据表结构详解
superlxw1234
hivehive元数据结构
关键字:Hive元数据、Hive元数据表结构
之前在 “[一起学Hive]之一–Hive概述,Hive是什么”中介绍过,Hive自己维护了一套元数据,用户通过HQL查询时候,Hive首先需要结合元数据,将HQL翻译成MapReduce去执行。
本文介绍一下Hive元数据中重要的一些表结构及用途,以Hive0.13为例。
文章最后面,会以一个示例来全面了解一下,
- Spring 3.2.14,4.1.7,4.2.RC2发布
wiselyman
Spring 3
Spring 3.2.14、4.1.7及4.2.RC2于6月30日发布。
其中Spring 3.2.1是一个维护版本(维护周期到2016-12-31截止),后续会继续根据需求和bug发布维护版本。此时,Spring官方强烈建议升级Spring框架至4.1.7 或者将要发布的4.2 。
其中Spring 4.1.7主要包含这些更新内容。