一、什么是宏函数?通过宏定义的函数是宏函数。如下,编译器在预处理阶段会将Add(x,y)替换为((x)*(y))#defineAdd(x,y)((x)*(y))#defineAdd(x,y)((x)*(y))intmain(){inta=10;intb=20;intd=10;intc=Add(a+d,b)*2;cout<
C语言如何定义宏函数?
小九格物
c语言
在C语言中,宏函数是通过预处理器定义的,它在编译之前替换代码中的宏调用。宏函数可以模拟函数的行为,但它们不是真正的函数,因为它们在编译时不会进行类型检查,也不会分配存储空间。宏函数的定义通常使用#define指令,后面跟着宏的名称和参数列表,以及宏展开后的代码。宏函数的定义方式:1.基本宏函数:这是最简单的宏函数形式,它直接定义一个表达式。#defineSQUARE(x)((x)*(x))2.带参
ARM驱动学习之5 LEDS驱动
JT灬新一
嵌入式C底层arm开发学习单片机
ARM驱动学习之5LEDS驱动知识点:•linuxGPIO申请函数和赋值函数–gpio_request–gpio_set_value•三星平台配置GPIO函数–s3c_gpio_cfgpin•GPIO配置输出模式的宏变量–S3C_GPIO_OUTPUT注意点:DRIVER_NAME和DEVICE_NAME匹配。实现步骤:1.加入需要的头文件://Linux平台的gpio头文件#include//三
Linux vi常用命令
fengyehongWorld
Linuxlinux
参考资料viコマンド(vimコマンド)リファレンス目录一.保存系命令二.删除系命令三.移动系命令四.复制粘贴系命令一.保存系命令⏹保存并退出:wq⏹强制保存并退出:wq!⏹退出(文件未编辑):q⏹强制退出(忽略已编辑内容):q!⏹另存为:w新文件名二.删除系命令⏹删除当前行dd⏹清空整个文档gg:移动到文档顶部dG:删除到最后一行ggdG三.移动系命令⏹移动到文档顶部gg⏹移动到文档底部#方式1G
如何利用Samba跨平台分享Ubuntu文件夹
GottenZZP
部署相关ubuntulinux运维
1.安装Samba终端输入sudoaptinstallsamba2.配置Samba终端输入sudovim/etc/samba/smb.conf打开配置文件滑动文件到最底下输入以下内容[Share]#要共享的文件夹路径path=/home/xxx/sambasharereadonly=nobrowsable=yes编辑完成后按一下Esc按键后输入:wq回车保存3.重启Samba服务终端输入sudos
docker改容器IP的两种方法
redmond88
linuxdockertcp/ip容器
最简单实用的方法:docker默认的内网网段为172.17.0.0/16,如果公司内网网段也是172.17.x.x的话,就会发生路由冲突。解决办法改路由比较办法,可以一开始就将docker配置的bip改成169.254.0.1/24,可以避免冲突。在daemon配置文件里加个"bip":“169.254.0.1/24”,重启docker就可以了1234[root@st-dev6~]#vim/etc
【开发环境搭建】Macbook M1搭建Java开发环境
weixin_44329069
java开发语言
JDK安装与配置下载并安装JDK:ARM64DMG安装包下载链接:JDK21forMac(ARM64)。双击下载的DMG文件,按照提示安装JDK。配置环境变量:打开终端,使用vim编辑.bash_profile文件:vim~/.bash_profile在文件中添加以下内容来设置JAVA_HOME:exportJAVA_HOME=/Library/Java/JavaVirtualMachines/j
vim十字显示的设置
落雨无风
vimlinux
vim设置分享一下自己的在linux下的vim的设置文件.vimrc其中最想分享的是vim十字显示的方式如图magic自己没有试出来什么效果十字显示是line12~15都需要的。如果只有12,13,设置出来的效果就是下划线的样子。239是0到255配色的中间值。个人比较喜欢239,个人爱好,随便设置自己喜欢的颜色。
一文理解 Python 中的环境变量
简讯Alfred
和我一起零基础学Python简明python教程零基础学pythonpython环境变量
你好,我是简讯!一枚野生程序员。热爱编程,但目前的工作与编程毫无关系。正在尝试各种副业,目前有做:红包封面商城:如何利用红包封面打造副业购物平台赚取佣金:利用淘宝京东等平台优惠券赚取佣金编辑器使用Neovim多一点,如果你也喜欢使用Nvim,我们可以一起交流。我的Nvim配置:https://github.com/alpha87/nvim。个人公众号经常会分享一些编程相关的文章,还有一些我已经操作
docker镜像的批量备份和加载
小卡车555
docker
随着微服务的不断发展,docker在微服务的部署中也占着不可缺少的角色,有这样一种场景,需要将服务器上的若干个最新的镜像打成tar.gz做一个备份或者异地部署。针对此问题尝试写了如下shell脚本#vimsaveImages.sh脚本内容如下:#当前需要打包的版本号version=xxx.0.0.1-RELEASE#仓库rep=defaultRep#名称name=defaultNameforiin
mariadb主从配置步骤
秋月霜风
其他知识标记mariadbandroidadb
mariadb主从配置步骤配置开始前注意关闭主从服务器的防火墙或者确保主从服务器之间数据库通信正常;主服务器(主IP)配置a.编辑主服务器的MariaDB配置文件:sudovim/etc/my.cnf.d/mariadb-server.cnfb.在[mysqld]部分添加或修改以下内容:[mysqld]server-id=1log-bin=/var/log/mariadb/mysql-binbin
Linux之ansible的playbook剧本(yaml文件)
小橞
linuxansible运维服务器
playbook剧本一个剧本(即playbook),可以包含多个play每个play用于在指定的主机上,通过模块和参数执行相应的任务每个play可以包含多个任务。任务有模块和参数构成。paly要建立在ansible文件夹下才能使用因为yaml文件对格式要求很严格所有本人在编写时会设置一下vim编译器的一些功能格式setai:自动缩进setts=2:设置tab键缩进两个空格setet:将tab键转换
Python 将parquet文件转换为csv文件
一个小坑货
#python常用功能方法python开发语言
Python将parquet文件转换为csv文件使用pyarrow插件将parquet文件转换为csv使用pyarrow插件将parquet文件转换为csv```pythonimportosimportpyarrow.parquetaspqfromconcurrent.futuresimportThreadPoolExecutorimportcsvimporttime#定义一个函数来处理单个Par
Elasticsearch7.7.0 配置用户名和密码
i0208
Elasticsearch
配置用户和密码需要在配置文件中开启x-pack验证,修改config目录下面的elasticsearch.yml文件,在里面添加如下内容,并重启ES[root@localhostesuser]#vim/opt/es/elasticsearch-7.7.0/config/elasticsearch.ymlxpack.security.enabled:truexpack.license.self_ge
WLS2(ubuntu22.04)使用windows2的代理上网
bglmmz
wls2
1.在wls2中,vim/etc/profile,添加如下配置后,source/etc/profile```exporthostip=127.0.0.1exportsocks_hostport=10800exporthttp_hostport=10800aliasproxy='exporthttps_proxy="https://${hostip}:${http_hostport}"exporth
敢于承认
a九点三十六
我不知道以什么样的格式或者方式来分享自己的感悟。我记住了一点,能给大家带来帮助的内容,一定是正能量的。分享以下几点:一、分享:刚刚在写分享的时候忽然让我感受到那种为别人“分享”的心里喜悦。在什么情况下能体会到这种感受呢?在我的感受是一定真诚想给别人带来有所收获的内容,想给别人有所帮助的心里,没有任何目的的。有了这种感受还源自于想到了之前发生的事,源自于刘珅宏导师的点拨,还有家人的分享。写着写着忽然
《中原焦点团队》网络初期班37期 董宏坚持原创分享第4天 2022年9月18日
df15ba2b5d6a
路慢慢,其修远兮,真正做到知行合一真的感觉很难,需要不断的学习,成长,学会的东西能用在了自己身上了,那才是智慧,很多的时候感觉理论学会了,似乎感觉到内心的声音了,可就是不知道如何去运用,也许内心真正的力量还没挖掘出来,在人生的黑暗时刻摸摸索索的前行,焦点无形中成了我新希望,给了我前进的方向。
想要什么就赞美什么
9aff76b7628b
尊敬的刘绅宏导师,宋姜华导师,以及亲爱的家人们大家现在好?这段时间以来,我都在赞美我家两个宝贝有礼貌,见到小区里面的爷爷、奶奶都会主动的打招呼,爷爷奶奶好!今天下午吃完饭,我带他们出去给姐姐买东西,在电梯里遇到了一个男孩和一个女孩,我女儿很有礼貌的叫了一声阿姨好,那个女孩本来在看手机的,惊讶的把头抬起来朝我女儿笑了一下,出了电梯,我就开始赞美了,我说嘉贝你好有礼貌,见到爷爷奶奶,叔叔阿姨,你都会打
搭建ftp服务器
哆啦A梦_ca52
1搭建ftp服务器yuminstallvsftpd*-y安装vsftpd服务rpm-qlvsftpd|more查看安装路径systemctlrestartvsftpd.service启用vsftp服务ps-ef|grepvsftpd查看服务是否启用查看安装后的路径ftp://192.168.1.17/pub/安装好了有这个服务了修改配置文件vim/etc/vsftpd/vsftpd.confano
c语言中宏描述错误,C 宏定义与错误处理
Yyviuss
c语言中宏描述错误
宏定义C语言中宏定义,又叫预处理器。它不是编译器的组成部分,但却是编译过程中一个单独的步骤。简言之,C预处理器只不过是一个文本替换工具而已,它们会指示编译器在实际编译之前完成所需的预处理。指令描述#define定义宏#include包含一个源代码文件#undef取消已定义的宏#ifdef如果宏已经定义,则返回真#ifndef如果宏没有定义,则返回真#if如果给定条件为真,则编译下面代码#else#
c语言宏不能传递参数,C语言 如何在宏定义中使用可变参数
左右不对称定律
c语言宏不能传递参数
有一个记录日志的函数,想用宏定义进行包装,简化调用方法,但是xlc报如下的错误:void_log(constintlevel,char*file,intline,constchar*fmt,...){va_listap;intcount;time_tt;structtm*st;charstr_time[255];memset(str_time,0x00,sizeof(str_time));time
c语言中宏的用法汇总
Alfred.HOO
Cc语言
1.用作符号常量/明示常量时#define预处理指令和其他预处理指令一样,以#号作为一行的开始。指令可以出现在源文件的任何地方,其定义从出现的地方到该文件的末尾有效。预处理器指令从#开始,到后面的第一个换行符为止。宏的名字中不允许有空格,而且必须遵循c变量的命名规则:只能使用字母/数字/下划线,而且首字符不能是数字。注意,宏定义还可以包含其他宏(一些编译器不支持这种嵌套功能)。例如:#define
ubuntu安装 Apache 服务器 实现局域网浏览器访问文件
云樱梦海
安装sudoapt-getinstallapache2修改配置sudovim/etc/apache2/sites-available/000-default.confsudovi/etc/apache2/apache2.conf重启sudo/etc/init.d/apache2restart允许外部访问Apache端口sudoufwallow|deny[service]打开或关闭某个端口,例如:s
百度秋招测开面经
情书学长
面试百度笔记
1、自我介绍2、MySQL一、结合简历的项目说一下数据库设计如何优化二、说一下所知道的索引类型三、索引的优缺点四、索引的使用建议3、计算机基础一、TCP和UDP的区别二、TCP的三次握手的流程三、进程和线程的概念和区别四、深拷贝和浅拷贝的区别5、Linux一、文件查看前10行的命令二、文件编辑的命令三、vim和view的区别四、查看端口的命令五、查看进程的命令6、数据结构一、说一下知道的数据结构二
《熬夜整理》保姆级系列教程-玩转Wireshark抓包神器教程(6)-Wireshark抓包界面详解
北京-宏哥
1.简介在此之前,宏哥已经介绍和讲解过Wireshark的启动界面。但是很多初学者还会碰到一个难题,就是感觉wireshark抓包界面上也是同样的问题很多东西不懂怎么看。其实还是挺明了的宏哥今天就单独写一篇对其抓包界面进行详细地介绍和讲解一下。2.Wireshak抓包界面概览通过上一篇我们知道
unable to prepare context: path “.\r“ not found
嘟嘟 嘟嘟嘟
执行sh脚本的时候,报标题错误原因是脚本是在Windows上编辑,然后上传到Linux上执行。好像是2个系统编码不一样导致的vim打开脚本进入命令行输入setff=unix再保存退出即可
excel文件扩展名xlsm与xlsx的区别
s甜甜的学习之旅
JavaSEexcel
Excel文件有多种扩展名,每种扩展名代表不同类型的文件格式。xlsx和xlsm是两种常见的Excel文件扩展名,它们的主要区别在于是否支持宏(macros)。.xlsx文件不包含宏:.xlsx文件是Excel的标准工作簿文件格式,从Excel2007开始使用。这种格式使用OfficeOpenXML格式,是一个压缩过的XML文件,可以存储各种类型的数据,包括文本、数字和公式等。安全性更高:由于不包
XWiki中添加 html 二次编辑失效
草明
其他xwikimarkdown_blank
如果直接在XWiki中添加html,例如修改颜色,新窗口打开主页面等功能,首次保存是生效的.如果再次编辑,则失效,原因是被转换成了Markdown的代码,而Markdown不支持.解决这个问题可以使用HTML宏.在XWiki中使用Markdown1.2语法时,默认Markdown的链接文本语法不支持在新页面中打开链接,且XWiki可能会处理或转换HTML标记。因此,建议使用HTML宏来确保targ
配置文件使VSCode连接Ubuntu时无需重复输入密码
郑师傅炒板栗
Linuxubuntulinuxvscode
一、在XShell(已经连接到Ubuntu上)输入:ssh-keygen-trsa#结果如下:二、继续在命令行中输入:vimauthorized_keys然后在本机的用户->.ssh文件夹下,复制id_rsa.pub里面的公钥内容,到authorized_keys中,再输入:wq,保存后退出(vim的内容);三、以上做完就大功告成了,以后通过VSCode打开连接的Ubuntu的内容,就无需重复输入
2018-07-15
默言_5020
守护生命文/范国宏古城公园,气势宏弘,富祚卧牛,锣鼓华章,傍侧有一处是爱心天使之家。当你进入里边,先进设备,优雅人性化的陈设,候诊听问,科学的规划,导入指示性的绿贴,目不暇接。初入者,就像进入了迷宫,东南西北不知在哪家。只要你进去,就像进了健康的八卦方阵,精神焕发。因为,这是天使的家,有魔幻般的艺术,高超的技艺,让你在有生之年投胎重生。新生点燃了你对家庭亲人的渴望,对生命生活的眷恋,对大千自然的向
mondb入手
木zi_鸣
mongodb
windows 启动mongodb 编写bat文件,
mongod --dbpath D:\software\MongoDBDATA
mongod --help 查询各种配置
配置在mongob
打开批处理,即可启动,27017原生端口,shell操作监控端口 扩展28017,web端操作端口
启动配置文件配置,
数据更灵活 
大型高并发高负载网站的系统架构
bijian1013
高并发负载均衡
扩展Web应用程序
一.概念
简单的来说,如果一个系统可扩展,那么你可以通过扩展来提供系统的性能。这代表着系统能够容纳更高的负载、更大的数据集,并且系统是可维护的。扩展和语言、某项具体的技术都是无关的。扩展可以分为两种:
1.
DISPLAY变量和xhost(原创)
czmmiao
display
DISPLAY
在Linux/Unix类操作系统上, DISPLAY用来设置将图形显示到何处. 直接登陆图形界面或者登陆命令行界面后使用startx启动图形, DISPLAY环境变量将自动设置为:0:0, 此时可以打开终端, 输出图形程序的名称(比如xclock)来启动程序, 图形将显示在本地窗口上, 在终端上输入printenv查看当前环境变量, 输出结果中有如下内容:DISPLAY=:0.0
获取B/S客户端IP
周凡杨
java编程jspWeb浏览器
最近想写个B/S架构的聊天系统,因为以前做过C/S架构的QQ聊天系统,所以对于Socket通信编程只是一个巩固。对于C/S架构的聊天系统,由于存在客户端Java应用,所以直接在代码中获取客户端的IP,应用的方法为:
String ip = InetAddress.getLocalHost().getHostAddress();
然而对于WEB
浅谈类和对象
朱辉辉33
编程
类是对一类事物的总称,对象是描述一个物体的特征,类是对象的抽象。简单来说,类是抽象的,不占用内存,对象是具体的,
占用存储空间。
类是由属性和方法构成的,基本格式是public class 类名{
//定义属性
private/public 数据类型 属性名;
//定义方法
publ
android activity与viewpager+fragment的生命周期问题
肆无忌惮_
viewpager
有一个Activity里面是ViewPager,ViewPager里面放了两个Fragment。
第一次进入这个Activity。开启了服务,并在onResume方法中绑定服务后,对Service进行了一定的初始化,其中调用了Fragment中的一个属性。
super.onResume();
bindService(intent, conn, BIND_AUTO_CREATE);
base64Encode对图片进行编码
843977358
base64图片encoder
/**
* 对图片进行base64encoder编码
*
* @author mrZhang
* @param path
* @return
*/
public static String encodeImage(String path) {
BASE64Encoder encoder = null;
byte[] b = null;
I
Request Header简介
aigo
servlet
当一个客户端(通常是浏览器)向Web服务器发送一个请求是,它要发送一个请求的命令行,一般是GET或POST命令,当发送POST命令时,它还必须向服务器发送一个叫“Content-Length”的请求头(Request Header) 用以指明请求数据的长度,除了Content-Length之外,它还可以向服务器发送其它一些Headers,如:
HttpClient4.3 创建SSL协议的HttpClient对象
alleni123
httpclient爬虫ssl
public class HttpClientUtils
{
public static CloseableHttpClient createSSLClientDefault(CookieStore cookies){
SSLContext sslContext=null;
try
{
sslContext=new SSLContextBuilder().l
java取反 -右移-左移-无符号右移的探讨
百合不是茶
位运算符 位移
取反:
在二进制中第一位,1表示符数,0表示正数
byte a = -1;
原码:10000001
反码:11111110
补码:11111111
//异或: 00000000
byte b = -2;
原码:10000010
反码:11111101
补码:11111110
//异或: 00000001
java多线程join的作用与用法
bijian1013
java多线程
对于JAVA的join,JDK 是这样说的:join public final void join (long millis )throws InterruptedException Waits at most millis milliseconds for this thread to die. A timeout of 0 means t
Java发送http请求(get 与post方法请求)
bijian1013
javaspring
PostRequest.java
package com.bijian.study;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURL
【Struts2二】struts.xml中package下的action配置项默认值
bit1129
struts.xml
在第一部份,定义了struts.xml文件,如下所示:
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts
【Kafka十三】Kafka Simple Consumer
bit1129
simple
代码中关于Host和Port是割裂开的,这会导致单机环境下的伪分布式Kafka集群环境下,这个例子没法运行。
实际情况是需要将host和port绑定到一起,
package kafka.examples.lowlevel;
import kafka.api.FetchRequest;
import kafka.api.FetchRequestBuilder;
impo
nodejs学习api
ronin47
nodejs api
NodeJS基础 什么是NodeJS
JS是脚本语言,脚本语言都需要一个解析器才能运行。对于写在HTML页面里的JS,浏览器充当了解析器的角色。而对于需要独立运行的JS,NodeJS就是一个解析器。
每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情。例如运行在浏览器中的JS的用途是操作DOM,浏览器就提供了docum
java-64.寻找第N个丑数
bylijinnan
java
public class UglyNumber {
/**
* 64.查找第N个丑数
具体思路可参考 [url] http://zhedahht.blog.163.com/blog/static/2541117420094245366965/[/url]
*
题目:我们把只包含因子
2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14
二维数组(矩阵)对角线输出
bylijinnan
二维数组
/**
二维数组 对角线输出 两个方向
例如对于数组:
{ 1, 2, 3, 4 },
{ 5, 6, 7, 8 },
{ 9, 10, 11, 12 },
{ 13, 14, 15, 16 },
slash方向输出:
1
5 2
9 6 3
13 10 7 4
14 11 8
15 12
16
backslash输出:
4
3
[JWFD开源工作流设计]工作流跳跃模式开发关键点(今日更新)
comsci
工作流
既然是做开源软件的,我们的宗旨就是给大家分享设计和代码,那么现在我就用很简单扼要的语言来透露这个跳跃模式的设计原理
大家如果用过JWFD的ARC-自动运行控制器,或者看过代码,应该知道在ARC算法模块中有一个函数叫做SAN(),这个函数就是ARC的核心控制器,要实现跳跃模式,在SAN函数中一定要对LN链表数据结构进行操作,首先写一段代码,把
redis常见使用
cuityang
redis常见使用
redis 通常被认为是一个数据结构服务器,主要是因为其有着丰富的数据结构 strings、map、 list、sets、 sorted sets
引入jar包 jedis-2.1.0.jar (本文下方提供下载)
package redistest;
import redis.clients.jedis.Jedis;
public class Listtest
配置多个redis
dalan_123
redis
配置多个redis客户端
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi=&quo
attrib命令
dcj3sjt126com
attr
attrib指令用于修改文件的属性.文件的常见属性有:只读.存档.隐藏和系统.
只读属性是指文件只可以做读的操作.不能对文件进行写的操作.就是文件的写保护.
存档属性是用来标记文件改动的.即在上一次备份后文件有所改动.一些备份软件在备份的时候会只去备份带有存档属性的文件.
Yii使用公共函数
dcj3sjt126com
yii
在网站项目中,没必要把公用的函数写成一个工具类,有时候面向过程其实更方便。 在入口文件index.php里添加 require_once('protected/function.php'); 即可对其引用,成为公用的函数集合。 function.php如下:
<?php /** * This is the shortcut to D
linux 系统资源的查看(free、uname、uptime、netstat)
eksliang
netstatlinux unamelinux uptimelinux free
linux 系统资源的查看
转载请出自出处:http://eksliang.iteye.com/blog/2167081
http://eksliang.iteye.com 一、free查看内存的使用情况
语法如下:
free [-b][-k][-m][-g] [-t]
参数含义
-b:直接输入free时,显示的单位是kb我们可以使用b(bytes),m
JAVA的位操作符
greemranqq
位运算JAVA位移<<>>>
最近几种进制,加上各种位操作符,发现都比较模糊,不能完全掌握,这里就再熟悉熟悉。
1.按位操作符 :
按位操作符是用来操作基本数据类型中的单个bit,即二进制位,会对两个参数执行布尔代数运算,获得结果。
与(&)运算:
1&1 = 1, 1&0 = 0, 0&0 &
Web前段学习网站
ihuning
Web
Web前段学习网站
菜鸟学习:http://www.w3cschool.cc/
JQuery中文网:http://www.jquerycn.cn/
内存溢出:http://outofmemory.cn/#csdn.blog
http://www.icoolxue.com/
http://www.jikexue
强强联合:FluxBB 作者加盟 Flarum
justjavac
r
原文:FluxBB Joins Forces With Flarum作者:Toby Zerner译文:强强联合:FluxBB 作者加盟 Flarum译者:justjavac
FluxBB 是一个快速、轻量级论坛软件,它的开发者是一名德国的 PHP 天才 Franz Liedke。FluxBB 的下一个版本(2.0)将被完全重写,并已经开发了一段时间。FluxBB 看起来非常有前途的,
java统计在线人数(session存储信息的)
macroli
javaWeb
这篇日志是我写的第三次了 前两次都发布失败!郁闷极了!
由于在web开发中常常用到这一部分所以在此记录一下,呵呵,就到备忘录了!
我对于登录信息时使用session存储的,所以我这里是通过实现HttpSessionAttributeListener这个接口完成的。
1、实现接口类,在web.xml文件中配置监听类,从而可以使该类完成其工作。
public class Ses
bootstrp carousel初体验 快速构建图片播放
qiaolevip
每天进步一点点学习永无止境bootstrap纵观千象
img{
border: 1px solid white;
box-shadow: 2px 2px 12px #333;
_width: expression(this.width > 600 ? "600px" : this.width + "px");
_height: expression(this.width &
SparkSQL读取HBase数据,通过自定义外部数据源
superlxw1234
sparksparksqlsparksql读取hbasesparksql外部数据源
关键字:SparkSQL读取HBase、SparkSQL自定义外部数据源
前面文章介绍了SparSQL通过Hive操作HBase表。
SparkSQL从1.2开始支持自定义外部数据源(External DataSource),这样就可以通过API接口来实现自己的外部数据源。这里基于Spark1.4.0,简单介绍SparkSQL自定义外部数据源,访
Spring Boot 1.3.0.M1发布
wiselyman
spring boot
Spring Boot 1.3.0.M1于6.12日发布,现在可以从Spring milestone repository下载。这个版本是基于Spring Framework 4.2.0.RC1,并在Spring Boot 1.2之上提供了大量的新特性improvements and new features。主要包含以下:
1.提供一个新的sprin