alibaba

shell学习(5)- sort

可紊 提交于 2020-03-25 02:53:28
Linux sort命令用于将文本文件内容加以排序。 sort可针对文本文件的内容,以行为单位来排序。 参数如下: -b 忽略每行前面开始出的空格字符。 -c 检查文件是否已经按照顺序排序。 -d 排序时,处理英文字母、数字及空格字符外,忽略其他的字符。 -f 排序时,将小写字母视为大写字母。 -i 排序时,除了040至176之间的ASCII字符外,忽略其他的字符。 -m 将几个排序好的文件进行合并。 -M 将前面3个字母依照月份的缩写进行排序。 -n 依照数值的大小排序。 -o<输出文件> 将排序后的结果存入指定的文件。 -r 以相反的顺序来排序。 -k 指定以哪一列来排序。-u 去重。 -t<分隔字符> 指定排序时所用的栏位分隔字符。 +<起始栏位>-<结束栏位> 以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。 --help 显示帮助。 --version 显示版本信息。 1.sort直接用就可以对文件进行排序 准备测试文件 [root@www ~]$ cat sorttest.txt hello java php world betty php [root@www ~]$ sort sorttest.txt betty hello java php php world 2.sort -u的选项是去重,在输出行中去除重复行 [root@www ~]$ sort -u

alibaba 的 easyexcel 批量导入

天大地大妈咪最大 提交于 2020-03-20 00:04:15
3 月,跳不动了?>>> 1,在pom.xml 中引入 <dependency> <groupId> com.alibaba </groupId> <artifactId> easyexcel </artifactId> <version> 2.2.0-beta1 </version> </dependency> 2.创建excel 表格中的对象 @Data public class DeviceUpdateData { @ExcelProperty ( value = "设备识别码(必填;识别码+前后缀)" ) private String deviceCode ; @ExcelProperty ( value = "设备ID" ) private String deviceId ; } 3,上传的监听 package com.jtl.device.common.util ; import com.alibaba.excel.context.AnalysisContext ; import com.alibaba.excel.event.AnalysisEventListener ; import com.alibaba.fastjson.JSONObject ; import com.jtl.common.util.RedisUtils ; import com.jtl

alibaba远程调用框架dubbo原理

隐身守侯 提交于 2020-03-11 04:32:51
alibaba有好几个分布式框架,主要有:进行远程调用(类似于RMI的这种远程调用)的(dubbo、hsf),jms消息服务(napoli、notify),KV数据库(tair)等。这个框架/工具/产品在实现的时候,都考虑到了容灾,扩展,负载均衡,于是出现一个配置中心(ConfigServer)的东西来解决这些问题。 基本原理如图: 在我们的系统中,经常会有一些跨系统的调用,如在A系统中要调用B系统的一个服务,我们可能会使用RMI直接来进行,B系统发布一个RMI接口服务,然后A 系统就来通过RMI调用这个接口,为了解决容灾,扩展,负载均衡的问题,我们可能会想很多办法,alibaba的这个办法感觉不错。 本文只说dubbo,原理如下: ConfigServer 配置中心,和每个Server/Client之间会作一个实时的心跳检测(因为它们都是建立的Socket长连接),比如几秒钟检测一次。收集每个Server提供的服务的信息,每个Client的信息,整理出一个服务列表,如: serviceName serverAddressList clientAddressList UserService 192.168.0.1,192.168.0.2,192.168.0.3,192.168.0.4 172.16.0.1,172.16.0.2 ProductService 192.168.0.3

alibaba远程调用框架dubbo原理

女生的网名这么多〃 提交于 2020-03-11 04:32:33
alibaba有好几个分布式框架,主要有:进行远程调用(类似于RMI的这种远程调用)的(dubbo、hsf),jms消息服务(napoli、notify),KV数据库(tair)等。 这个框架/工具/产品在实现的时候,都考虑到了容灾,扩展,负载均衡,于是出现一个配置中心(ConfigServer)的东西来解决这些问题。 基本原理如图: 在我们的系统中,经常会有一些跨系统的调用,如在A系统中要调用B系统的一个服务,我们可能会使用RMI直接来进行,B系统发布一个RMI接口服务,然后A系统就来通过RMI调用这个接口,为了解决容灾,扩展,负载均衡的问题,我们可能会想很多办法,alibaba的这个办法感觉不错。 本文只说dubbo, 原理如下: ConfigServer 配置中心, 和每个Server/Client之间会作一个实时的心跳检测( 因为它们都是 建立的Socket长连接 ) ,比如几秒钟检测一次。 收集每个Server提供的服务的信息,每个Client的信息,整理出一个服务列表,如: serviceName serverAddressList clientAddressList UserService 192.168.0.1,192.168.0.2,192.168.0.3,192.168.0.4 172.16.0.1,172.16.0.2 ProductService 192

druid资料整理

我只是一个虾纸丫 提交于 2020-03-09 08:31:42
GitHub https://github.com/alibaba/druid https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter 官网 https://druid.apache.org 文章 http://www.iocoder.cn/Spring-Boot/datasource-pool/?vip 来源: CSDN 作者: Xisoo_x 链接: https://blog.csdn.net/qq_33451990/article/details/104728935

【规范】alibaba编码规范阅读

冷暖自知 提交于 2020-03-08 07:58:55
一、编程规范 (一)命名规范 1、代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束 2、代码中的命名严禁使用评语与英文混合的方式,更不允许直接使用中文的方式 3、类名使用UpperCamelCase风格,必须遵从驼峰形式,但是:DO BO DTO VO AO除外 4、方法名、参数名、成员变量、局部变量都统一使用lowerCamelCase风格,必须遵从驼峰格式 5、常量名全部大写,单词间用下划线隔开,力求词义表达清楚,不要嫌名字长 6、抽象类命名使用Abstract或Base开头:异常类命名使用Exception结尾:测试类命名以它要测试的类的名称开始,以Test结尾。 7、中括号是数组类型的一部分,使用String[] args 不要使用String args[]的方式 8、POJO类中布尔类型的变量,都不要加is,否则部分框架解析会引起序列化错误。 定义基本类型Boolean isDeleted的属性,它的方法也是isDeleted(),RPC框架在反向解析的时候,以为对应的属性名称是deleted,导致属性获取不到,进而抛出异常。 9、包名统一使用小写,点分隔符有且仅有一个自然语义的英文单词,包名统一使用单数形式。但是类名如果有复数含义,类名可以使用复数形式。 10、杜绝完全不规范的缩写,避免望文生义。 11、为了达到代码自解释的目标

Springboot使用alibaba的fastJson,@JSONField不起作用的问题

余生长醉 提交于 2020-02-28 13:52:07
在Springboot中默认的JSON解析框架是jackson 今天引入alibaba的fastjson,使用@JSONField(serialize=false),让@RestController转换数据给前端的时候不序列化莫些字段,发现@JSONField根本不起作用 在网上查阅了一番,发现Springboot使用fastjson需要替换默认的json转换器的 具体解决方法有两种: 本文借鉴地址:https://blog.csdn.net/qq_28929589/article/details/79245774 一、(1)启动类继承extends WebMvcConfigurerAdapter (2)覆盖方法configureMessageConverters 二、(1)在App.java启动类中,注入Bean : HttpMessageConverters 第一种方式: 启动类继承WebMvcConfigurerAdapter,然后对configureMessageConverters方法进行重写 @Override public void configureMessageConverters(List<HttpMessageConverter<?>> converters) { super.configureMessageConverters(converters);

【解决方案】Resolved [com.alibaba.fastjson.JSONException: exepct '[', but string, pos

☆樱花仙子☆ 提交于 2020-02-26 15:17:50
使用fastjson,将字符串转数组时抛异常: Resolved [com.alibaba.fastjson.JSONException: exepct '[', but string, pos 如下图中所示,result.getData()是一个字符串,我希望将它转为一个数组 我的做法是: String res = JSON.toJSONString(result.getData()); List<TFDepartment> departmentList = JSONArray.parseArray(res, TFDepartment.class); 所以抛异常了:Resolved [com.alibaba.fastjson.JSONException: exepct '[', but string, pos 解决方案如下: String res = JSON.toJSON(result.getData()).toString(); List<TFDepartment> departmentList = JSONArray.parseArray(res, TFDepartment.class); 来源: https://www.cnblogs.com/miaoying/p/12367114.html

Alibaba Cloud Toolkit初体验

↘锁芯ラ 提交于 2020-02-26 09:40:26
偶然看到网上一篇文章《 带你上手一款下载超 10 万次的 IDEA 插件 》介绍的是一款阿里巴巴出品的IDEA插件,看上去可以远程发布,远程调试等,试试看。 安装比较简单就不多说了,装好就这样,打开还有个欢迎页面,有点出乎意料。 欢迎页面提供了一个《 使用指南 》,先不着急看这个指南,我先尝试摸索摸索,首先看到IDEA有个变化,工具栏多了一个 Alibaba Cloud View ,打开一看,居然有个广告。 点进去看看,是个 软萌妹子视频教程 ,不错,看看吧。 视频就是对工具做了一个基本介绍,感兴趣的可以点上面的链接,再去看一遍,时长20分钟。 这个工具基本的功能就两部分 部署 任意支持SSH的服务器:一键发布,享受你的咖啡和点心,然后就部署好了。 阿里云ECS/EDAS/SAE(Servless)/ACK(K8S)/ACR(镜像仓库)/函数计算 工具 内置终端Terminal:就是在IDEA直接打开一个SSH的终端,沉浸式体验。 文件上传到服务器:就是上传本地文件到服务器,比如脚本啥的。 内置的SQL控制台:直接在IDEA访问数据库,沉浸式体验。 Dubbo工程脚手架:快速构建基于Spring + Dubbo 的应用。 集成了Arthas 诊断:可以诊断本地和远端的JAVA进程。 总结: 都是阿里云相关功能,不用阿里云的只有一个远程执行主机命令一个好处,本地执行命令

Android组件化开发-----页面路由(ARouter)

两盒软妹~` 提交于 2020-02-20 06:44:26
平时开发中,我们经常用到页面跳转功能。之前我一直使用Intent过跳转 Intent intent = new Intent(A.this, B.class); intent.putExtra("key","value"); startActivity(intent);最近看到有大牛使用ARouter,专门了解一下,弄个简单入门的demo 下面的文字粘自Alibaba Open Source A android router middleware that help app navigating to activities and custom services. 支持直接解析标准URL进行跳转,并自动注入参数到目标页面中 支持多模块工程使用 支持添加多个拦截器,自定义拦截顺序 支持依赖注入,可单独作为依赖注入框架使用 支持InstantRun 支持MultiDex(Google方案) 映射关系按组分类、多级管理,按需初始化 支持用户指定全局降级与局部降级策略 页面、拦截器、服务等组件均自动注册到框架 支持多种方式配置转场动画 支持获取Fragment 完全支持Kotlin以及混编(配置见文末 其他#5) 多个module间解耦,组件化开发,跳转同一管理 使用步骤: 1. 配置build.gradle: defaultConfig 中添加 //arouter