hbase 同集群内表拷贝 将已存在的表里的内存,拷贝至另外一张表。hbase org.apache.hadoop.hbase.mapreduce.CopyTable --new.name=targetTable srcTable例如 旧表名为 stu 新表名为 stu2 那么拷贝命令为:注意,新表 stu2 必须先创建,否则 copytable 会报错。...
HBase python (thrift) API 示例 from thrift.transport import TSocketfrom hbase import Hbasefrom hbase.ttypes import *### create connection 创建连接###transport = TSocket.TSocket('127.0.0.1', 9090)protocol = TBinaryProtocol.TBinaryProtocol(transport)client = Hbase.Client(protocol).
sql select abc=abc 备忘 sql_query = 'select %s=(select update_time from table order by id desc limit 1)' cursor.execute(sql_query,li[0][0])if not cursor.fetchone()[0]: #xxxelse: #xxx这里查询为 select *=* ,实际测试了一下,结果如下:...
python not 1 not 0 的一个应用场景备忘 print(not 1) print(not 0)输出为FalseTrue应用场景在互联网上爬取数据后写入数据库,并写入数据源发布数据的时间 update_time再次爬取的时候,判断数据源发布数据的时间和数据库中的值做对比select time=time 这样一个查询,它的结果是 1 相等 或 0 不相等如果不相等,则写入数据库sql = 'select %s = (select update_time from table ...
JSON 数据字段提取 一实例备忘 https://view.inews.qq.com/g2/getOnsInfo?name=disease_other这个API拿到的数据很多,很多是数组重复的数据,提取出数据的字段的方法记录如下:步骤一:将数据拷贝至NOTEPAD++,将 /" 替换为 ”步骤二:将数据拷贝至 bejson.org 中进行格式化步骤三:将数据拷贝回notepad++ ,可以看出数据的整理轮廓。...
jquery ajax + python flask 实例 整体效果是前端每隔1秒向后台WEB服务器请求时间。目录结构注意test.html所在的目录templates 和 demo2.py 是同级的python 代码import timefrom flask import render_templatefrom flask import Flaskapp = Flask(__name__)# 获取当前时间的具体实现def gettime(): time_str = time.strftime("%Y{}%m{}%d{}
python 错误记录:AttributeError: ‘function‘ object has no attribute ‘strftime‘ import timefrom flask import render_templatefrom flask import Flaskapp = Flask(__name__)def gettime(): time_str = time.strftime("%Y{}%m{}%d{} %X") print(time_str) #输出 2021{}03{}31{} 09:45:29 time_str2 = time_str.format("年" ,"月" ,"日") .
python 格式化时间输出 time_str = time.strftime("%Y{}%m{}%d{} %X") print(time_str) #输出 2021{}03{}31{} 09:45:29 time_str2 = time_str.format("年" ,"月" ,"日") print(time_str2) #输出 2021年03月31日 09:45:29
pycharm 社区版 安装依赖包 在命令行中使有pip install 安装的包,在pycharm 中无法使用,报错如下:解决方法:打开pycharm 的settings ,搜 package ,在 python interpreter 中进行包 安装。
hbase BinaryPrefixComparator 官方定义http://hbase.apache.org/apidocs/org/apache/hadoop/hbase/filter/BinaryPrefixComparator.htmlBinaryPrefixComparatorA comparator which compares against a specified byte array, but only compares up to the length of this byte array. For the rest it is.
环境变量PATH的作用记录 【基础知识】1. 掌握 Linux shell cd 命令cd : Change Directory,切换当前目录至指定目录示例cd / #切换至根目录cd /home/ubuntu/ # 切换至目录 /home/ubuntu/cd .. # 切换至当前目录的父目录,注:这里两个点表示父目录,一个点表示当前目录cd ~ ...
hbase java 连接 (maven 项目) 本地环境hbase + hdfs 伪分布式模式java 代码创建了和HBASE的连接后,将所有表的名称打印到终端输出。import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.*;import org.apache.hadoop.hbase.client.*;public class Demo { Configuration conf; Connection connection;
hadoop failed on socket timeout exception: java.net.NoRouteToHostException: No route to host hadoop copyFromLocal 的时候报错,hadoop failed on socket timeout exception: java.net.NoRouteToHostException: No route to host我的 core-site.xml 的配置如下:将IP地址改为 localhost 后问题解决。配置还不太熟悉,后续补充。...
hadoop java api 连接失败 connection refused package com.example.demo;import java.io.FileInputStream;import java.io.FileOutputStream;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FSDataInputStream;import org.apache.hadoop.fs.FSDataOutputStream;import org.apache.hadoo.
Missing artifact jdk.tools:jdk.tools:jar:1.6 问题解决 pom.xml 这一行保错Missing artifact jdk.tools:jdk.tools:jar:1.6然后在 pom.xml 添加依赖<dependency><groupId>jdk.tools</groupId><artifactId>jdk.tools</artifactId><version>1.8</version><scope>system</scope>.
kettle org.pentaho.ui.xul.XulException: java.lang.reflect.InvocationTargetException kettle pdi_ce7.1.0.0-12 (https://download.csdn.net/download/amourzxq/10524182?utm_source=iteye_new)在我本地java, jdk 12.0.2 环境下,可启用spoon,但是在创建数据库连接时,保错:kettle org.pentaho.ui.xul.XulException: java.lang.reflect.InvocationTargetException后改用本地虚拟机(ub..
Could not find a version that satisfies the requirement lxml pip3 安装lxml时失败,提示Could not find a version that satisfies the requirement lxml (from versions: )No matching distribution found for lxml重新执行安装命令后问题解决,原因暂不明确
mongodb aggregate 学习笔记 语法db.collection.aggregate([{ $match:{<query>} },{$group: { <field1>:<field2> }}])query 是查询条件field1 为分类字段, 要求使用 _id 表示分类字段field2 为统计字段示例示例数据db.items.insert([{"quantity":2,price:5.0,pnumber:"p003"},{quantity:2,.
ubuntu 18.04 安装 mongodb v4.4.4 备忘 官网有详细流程:https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/包管理器导入 MongoDB public GPG Keywget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -网络情况比较糟糕,多试几次为包管理器添加Mongodb相关的源echo "deb [ arch=amd64,ar
Ubuntu 18.04 Hbase 1.2.6 版本安装备忘 Hadoop 2.7.3 版本安装详见:https://blog.csdn.net/wuzhong8809/article/details/113866675Hbase 安装包下载并解压官网上找不到,直接百度,可以查到下载链接http://archive.apache.org/dist/hbase/1.2.6/下载速度很慢,最后在csdn上找到资源进行的下载tar zxvf hbase.tar.gz注意:在CSDN这种非官网渠道下载的包,下载以后一定要用md5sum 确认一下文件
Ubuntu 18.04 Hadoop 2.7.3 版本安装备忘 ubuntu源替换为 aliyun 的源略安装jdksudo apt install openjdk-8-jdkjava -version 验证安装成功Hbase 安装包下载并解压官网上找不到,直接百度,可以查到下载链接http://archive.apache.org/dist/hbase/1.2.6/下载速度很慢,最后在csdn上找到资源进行的下载tar zxvf hbase.tar.gzHadoop 安装包下载http://archive.apache.
mysql 若干优化的案例记录 上个月参与了一个系统的API调用耗时的优化。最后主要是对SQL的查询做的调整,记录如下。1 加索引。简单直接,效果明显。2 count(*) 调整为 count(某具体加索引字段)3 查询当天的数据 调整为 where to_days(create_time) = to_days(now()) 原为 where format(create_time, "yyyy-dd-mm hh:mm") equals format(now(), "yyyy-dd-mm hh:mm")...
【转】jdk8的特性stream().map() 将对象转换成另一个对象 https://www.cnblogs.com/fengli9998/p/9002377.htmlhttps://blog.csdn.net/sanchan/article/details/70753645java8的optional的使用:http://www.jdon.com/idea/java/using-optional-effectively-in-java-8.htm...
spring mvc test 常用方法整理 spring mvc test 常用方法整理参考https://docs.spring.io/spring/docs/current/spring-framework-reference/testing.html#spring-mvc-test-framework常见写法@RunWith(SpringRunner.class)@SpringBootTestpublic c...
Dynamodb 本地版下载及安装 安装dynamodb按这个网址的操作:(下载选新加坡,离线版https://s3-ap-southeast-1.amazonaws.com/dynamodb-local-singapore/dynamodb_local_latest.tar.gz )https://blog.csdn.net/songhaifengshuaige/article/details/67...
监听不到 RECEIVE_BOOT_COMPLETED 的处理办法 我用的是华为honor做为测试机,在安装应用后,重启手机时无法接收到 RECEIVE_BOOT_COMPLETED 的广播。权限,代码都OK。后来发现是系统级额外的限制,详见:设置->开机自启项这里有一个列表,勾选允许新装的APP自启动,问题解决。
mysql unknown column 'xxx' in field list 实体类里中的字段名和数据库中实际的字段名不相符。报这个错。@Column(name = "google_iap_app_name")public String getGoogleIapAppName() { return googleIapAppName;}数据库中定义的是goole_iap_app_name数据库少写了一g修改:alter tabl...
K39 ITX 桌面小机箱 组装了一台桌面小电脑,视频见:https://www.bilibili.com/video/bv1Tp4y167k1===================================图片展示组装过程经验分享1电源区域比较挤,全模组意义不大,没有必要多花钱。2 机箱的螺丝差评。3 CPU散热器很低要注意方向,别挡住CPU电源。4 感觉CPU风扇比较自己使用的红海至尊的风扇的噪音大(纯个人感觉)配置CPU G1830 ,某宝购买,二...
xshell 的替代方案 xshell 是收费产品,win10 可以直接使用 cmd 命令行,可以直接 ssh 登录。也可以使用免费的 putty ,下载地址:https://pc.qq.com/detail/14/detail_3354.html
android usb 转串口 (usb-serial-for-android ) 读数据,将字节流转为数据帧的方法记录 目前项目使用的是 github 上的这个库进行数据的读写,https://github.com/mik3y/usb-serial-for-android这个库提供了两种方法读数据,一为同步的方式,主动读:len = port.read(response, READ_WAIT_MILLIS);另一个种为异步的,等待回调传入数据:@Overridepublic void onNewData(byte[] data) { runOnUiThread(() -> { textVi
android 动态权限请求 主要涉及到几个API:1requestPermissions 请求权限 public final void requestPermissions(@NonNull String[] permissions, int requestCode) {在 activity 中可以直接调用。第一个参数为需要请求的权限,比如存储空间的写权限:Manifest.permission.WRITE_EXTERNAL_STORAGE存储空间的读权限:Manifest.permiss.
listview 的首行固定内容标题且加粗显示(类似于表格的首行)的实现方法 项目中有需求,将 listview 的首行固定内容标题(类似于表格的首行),效果如下:实现方式如下:Adapter 的 getCount 中返回比数据集合多一行: @Override public int getCount() { return deviceList.size() + 1; }Adapter 的 getItem 中,第一项默认返回标题数据: @Override public Object getItem(int
下压式的CPU散热器备忘 名称 高度 标称适用 TDP 适用平台 是否有灯光效果 是否带4PIN温控 价格 图片 ID-COOLINGIS-25i 27MM <65W INTEL 无 是 69 超频三(PCCOOLER) 刀锋S85 27MM INTEL 无 是 79 超频三(PCCOOLER) C81H大雨 29MM INTEL 无 是 ...
通过 Google Ads 来推广应用 https://ads.google.com/第一步,创建广告新建广告->应用宣传Android APP 可以和 Google play 中的应用关联。接下来需要填写广告具体信息如标题,文字内容等。还需要填写广告的单次点击的费用和每天投放广告的费用。创建好广告之后需要设置付款方式才可以投放广告第二步:设置付款方式付款选项有两种,一为人工付款(不绑卡,先付费后使用,可使用银联借记卡),另一种为自动付款(绑信用卡,先使用后付费,可使用银联信用卡)。笔者的..
Android 10 自定义 preference 失效问题 APP中实现了这样一个 preference:红色部分是一个水平对齐的LinearLayout,通过 addView 的方式动态添加新的子view 蓝色部分原代码实现在Preference 的 onCreateView() 中完成上面的界面的渲染,public class TopbarPreference extends Preference { @Override protected View onCreateView(ViewGroup parent) {...
内存频率修改-技嘉Z390主板 购买内存频率为3000+MH的内存,装机后在系统任务管理器中查看内存信息发现只有2400Mhz。可以通过BIOS进行内存频率的修改,具体操作为:修改后内存频率变为3000Mhz:
SSD 寿命- 三星 Magician 及 CrystalDiskInfo 三星提供了一款SSD铺助工具 Magician软件界面这台主机一共两个磁盘,一个是500GB的SSD,一个是1TB的机械硬盘,磁盘信息均展示在软件中。下载地址https://www.samsung.com/semiconductor/minisite/ssd/download/tools/ssd磁盘寿命SSD在售卖时有一个TBW的参数,可以理解为磁盘的最大写入量或是(保修写入量,越过这个值就不保修了),例如这台机器的的三星970 EVO的TBW参数为 300TBW。...
android notification setSound 不生效的问题 首先是由于我没有对android O (26)+ 做处理。android 26+ setSound需要在 channel 上执行: AudioAttributes audioAttributes = new AudioAttributes.Builder() .setContentType(AudioAttributes.CONTENT_TYPE_SONIFICATION) ..
带删除功能 listview 实例备忘 界面效果:说明假设有一个 DeviceCollection 的类,类中有一个名为 name 的String 类型成员变量。public class DeviceCollection { public String name;}接着有一组 DeviceCollection 的实例:List<DeviceCollection> dataList;功能上希望把 列表里的每个DeviceCollection 的 name 显示到 listview 的每一行中。
主机配置备忘: i3 2100 + h61/b75 主板 i3 2100 二手的大概 50~60之间。H61/B75主板有新的也有旧的。新的主板有一些还新增了M.2 硬盘接口。(看起来需求量还是很大,主板还在迭代更新中)来看一下这样一台主机的价格:部件 品牌 价格 内存 DDR3 8GB 170 板U (新主板) i3 2100+b75 280 cpu 风扇 30 电源 350W 110 机箱 50 磁盘 M.2 2..
android 做为USB HOST 监听USB外部设备连接与断开事件 androidmanifest.xml <uses-feature android:name="android.hardware.usb.host" /> <uses-permission android:name="android.permission.USB_PERMISSION" />javapublic class MainActivity extends AppCompatActivity { @Override pro
android toolbar 标题居中显示方案备忘 Toolbar 默认标题置为空,app:title=""在Toolbar 内布添加子Textview <android.support.design.widget.AppBarLayout android:id="@+id/layout_title_bar" android:layout_width="match_parent" android:layout_height="wrap_content" app:elev.
台式机装机记录 B460M + 10400F 双11又配了一台主机。配置及价格如下 :(显卡有一个旧的没有新购)部件 品牌 价格 平台 内存 金斯顿 3200 MHZ 16GX2 32GB 780 京东自营 CPU 风扇 红海至尊 105 天猫 板U 华硕 B460M PLUS WIFI + 10400F 1585 天猫INTEL官方店 电源 长城 650W 白牌 250 京东 机箱 长城 105 京东自营..
JAVA 时间及时区相关 API ,JAVA 时区转换备忘 TimeZone 说明public static TimeZone getTimeZone(ZoneId zoneId);这个函数使用的参数 ZoneId 的所有值可以通过以下方式获取for (String id: TimeZone.getAvailableIDs()) { System.out.println(id); } 参看:https://bytenota.com/get-list-of-all-timezone-ids-in-java/时区转换.
HTTP HEADER 中新增字段不要携带下划线备忘 header中携带了自定义的 access_token。问题一:nginx 转发请求时,默认不转发带下划线的 header。在配置中增加underscores_in_headers on;后问题解决。问题二:使用AWS Application load balancer 时,又出现了同样的问题,header丢失。没有查到相关的解决方案。最后将下划线去掉,改为accesstoken 后恢复正常。...
AWS HTTPS证书DNS验证备忘 假如AWS要求填写的内容如下:名称 类型 值 _1111111.yourdomain.com. CNAME _22222222222.xxx.acm-validations.aws 那么加你的域名提供商那边添加的记录为:主机记录 记录类型 记录值 _1111111 CNAME _22222222222.xxx.acm-validations.aws 添加之后,可刷新查看结果,笔者大概15分钟之内就提示成功。..
Android open failed: EACCES (Permission denied)) 问题备忘 问题:android 9/10 手机上访问存储空间失败,报错:如:10-31 13:35:30.726 7619 7619 W Glide : java.io.FileNotFoundException(/storage/emulated/0/Pictures/Browser/3.jpg: open failed: EACCES (Permission denied))10-31 13:35:30.726 7619 7619 W Glide : java.io.FileNotFoun...
IOFileUploadException: Processing of multipart/form-data request failed. Stream ended unexpectedly org.springframework.web.multipart.MultipartException: Failed to parse multipart servlet request; nested exception is java.io.IOException: org.apache.tomcat.util.http.fileupload.impl.IOFileUploadException: Processing of multipart/form-data request failed...
android studio 导入依赖库备忘 以 compile 'com.github.donkingliang:ImageSelector:1.9.2'为示例改造为直接依赖源码,可对源码进行修改:hi步骤一:下载git 库git clone xxx步骤二:as->file->new->import module->选择 git clone 后源码所在的目录 ->finish导入的过程会把代码拷贝一份到项目目录下。(如果导入的过程中 finish 按钮不亮,那可能是你源码目录下和将要导..
一个简单的 Recycleview + GridLayoutManager 显示图片的例子 显示效果Recycleview XML 布局文件(该文件内容有省略) <android.support.v7.widget.RecyclerView android:id="@+id/recycleview" android:paddingLeft="18dp" android:paddingRight="18dp" android:layout_width="match.
mysql workbench 安装过程中提示找不到依赖包的解决方法记录 改为下载 mysql installerhttps://dev.mysql.com/downloads/windows/installer/8.0.html安装的过程中选 custom 自定义安装,可以选择 mysql server 5.7 和workbench,接下来的安装步骤中会提示下载并安装相关的依赖包。...
转:SpringBoot--““Required request part ‘file‘ is not present““ 原文:https://www.cnblogs.com/runwithraining/p/12114373.html今天做图片上传的功能,做好之后进行测试,一直提示“"Required request part 'file' is not present"”在网上找各种方式,有的说配置文件,有的说别用自带的文件解析类MultipartFileResolver都没有解决我的问题。后来仔细看发送的请求------WebKitFormBoundaryFlaeSM38XP7nFtBiContent
android github 开源的图片剪辑库使用效果记录 1compile 'com.soundcloud.android:android-crop:0.9.10@aar'通过拖动边框边缘调整截图区域。区域减小时自动放大图片。不支持 镜像翻转,旋转。github地址:https://github.com/jdamcd/android-crop2compile 'com.theartofdev.edmodo:android-image-cropper:2.4.+'github地址:https://github.com/Arthu
转:安卓7.0遇到 android.os.FileUriExposedException: file:///storage/emulated.. exposed beyond app through 1、在AndroidManifest.xml中添加如下代码<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" ... <application ... <provider android:name="android.support.v.
Adroid studio 使用了 import org.apache.http.* 导致编译及运行失败 1 编译失败:参考:https://www.cnblogs.com/jingmo0319/p/6222640.htmlbuild.gradle 中添加 useLibrary 'org.apache.http.legacy' 后问题解决2 运行失败运行是提示didn't find class defaultHttpClient参考:https://blog.csdn.net/qq_16524861/article/details/88742199在AndroidManifes...
AndroidStudio Android-PullToRefresh 库使用记录 一个比较老的项目,导入到eclipse中,使用了AndroidStudio Android-PullToRefresh (https://github.com/chrisbanes/Android-PullToRefresh.git)第一步先 git clonehttps://github.com/chrisbanes/Android-PullToRefresh.git这个项目。第二步 android studio import module 导入上一步 clone 的项目操作之...
android studio zipException 问题记录 原因是 build.gradle 有重复的包,删除 compile files('libs/._android-support-v4.jar') 后问题解决compile 'com.android.support:support-v4:20.0.0'compile files('libs/._android-support-v4.jar')
IDEA 安装LOMBOK插件时 MATKET PLACE 无法打开处理方法备案 1 上官网下载https://plugins.jetbrains.com/plugin/6317-lombok/versions(注意找版本相匹配的版本)2 点这个设置小图标选择 install Plugin from disk
android apk 打包时出现 Lint found fatal errors while assembling a release target 这里android studio提供的是跳过错误进行编译的方法。查看错误详细信息可通过以下文件:项目下的lint-results-release-fatal.html文件app\build\reports\lint-results-release-fatal.html打开后,按照提示进行修复即可。...
C盘空间清理 - C:\Windows\SoftwareDistribution\Download 下的大文件是否可删除 下载了ccleaner后,使用磁盘分析工具,可以从大到小排列出C盘的所有文件。(注意, ccleaner 提供的默认垃圾清理是会将浏览器的 cookie 删除,所有网站将需要重新登录)其中C:\Windows\SoftwareDistribution\Download 下有好几个500MB的文件。参看这个帖子中的描述,这个目录下的文件是系统下载的更新临时文件,是可以删除的。同时这个帖子中建议使用 "自带的使用磁盘清理功能来删除临时文件"https://answers.micros..
寻找宁德海岸线 1 国庆最后一开下午,我打开百度地图,直接定位到海岸线,驱车前往。虽在导航上仍是未名路,但是已经有公路直达。秋天的海风很凉快,有家长带着小孩在海边捡贝壳,捞螃蟹。拍照留念。这张是百度地图的截图,红色箭头指向的是我到的位置,蓝色箭头是我拍照的方向。...
显示带EditText 的对话框进行编辑 项目中点击一个TEXT VIEW后,弹出编辑对话框,代码示例: public void showEditDialog( ){ final EditText et = new EditText(context); et.setText("default data"); et.setSelection(0, et.getText().toString().length()); new AlertDialog.Builder(conte
TabLayout 定制颜色导致编译失败 <android.support.design.widget.TabLayout android:id="@+id/tabs" android:layout_width="match_parent" android:layout_height="wrap_content" app:tabBackground="#ff0000" />报错信息如下:counter_fragment_with_tab.xml:12: AAPT: error: '#ff.
viewpager 内嵌 viewpager 后界面显示空白问题 内嵌的viewpager的adapter在构建时,传入的FragmentManger有误导致: mSectionsPagerAdapterCounter = new SectionsPagerAdapterCounter(this.getChildFragmentManager());传Fragment的getChildFragmentManager() 可解决问题。...
Textview 采用 spanable 控制文字的大小 例如 90weeks将 weeks 的大小变小。实现代码如下: public static SpannableString formatToSpandableString(String str) { int idx = 0; for (int i = 0; i < str.length(); i++) { if (!Character.isDigit(str.charAt(i))) { ...
android 前台任务及闹钟相关资料整理 通知:https://developer.android.google.cn/guide/topics/ui/notifiers/notifications?hl=zh-cn前台服务:https://developer.android.google.cn/guide/components/services?hl=zh-cn#Foreground后台任务:https://developer.android.google.cn/guide/background?hl=zh-cnAlarm
ViewPager setOnPageChangeListener方法过期 改用addOnPageChangeListener mViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { }..
android studio viewpader 圆点指示器 调研 这个效果很好:https://www.jianshu.com/p/b770a0641a57 (https://github.com/dongjunkun/CuteIndicator)github星比较少。尝试在github搜索viewpager indicator最后使用的是:https://github.com/romandanylyk/PageIndicatorView/releases使用 v1.0.3的时候,编译遇到问题。(暂未排查)降为 v1.0.0后...
android studio support-v4 包冲突 gradle在以下基础上 implementation 'com.android.support:cardview-v7:25.4.0' implementation 'com.android.support:design:25.4.0'新增了 implementation 'com.android.support:appcompat-v7:25.4.0'后报support-v4 包冲突做了一些尝试 exclude module: 'support-v4' 均失败...
androdi api 级别和 android 版本的对照表 详见:https://developer.android.google.cn/guide/topics/manifest/uses-sdk-element.html平台版本 API 级别 VERSION_CODE 备注 Android 10.0 29 Q 平台亮点 Android 9 28 P 平台亮点 Android 8.1 27 O_MR1 平台亮点 Android 8.0 26 O 平台亮点
minSdkVersion 和 targetSDKVersion 的官方说明 详见:https://developer.android.google.cn/guide/topics/manifest/uses-sdk-element.html属性:android:minSdkVersion一个用于指定应用运行所需最低 API 级别的整数。如果系统的 API 级别低于该属性中指定的值,Android 系统将阻止用户安装应用。您应始终声明该属性。注意:如果您不声明该属性,系统将假定默认值为“1”,这表示您的应用兼容所有 Android 版本。如果您的应用并不兼容所有版本(
listview 不显示分割线 默认的ListView分割线为黑色,对分割线进行定制和删除:android:divider="#fffff" 分割线颜色 设置为@null即不显示分割线android:dividerHeight="1px" 分割线高度
Android Gradle 插件版本所需的 Gradle 版本 https://developer.android.google.cn/studio/releases/gradle-plugin.html#3-6-0当报错如下时,可以参看这个链接,看看Android Gradle 插件版本和Gradle 版本是否匹配。Unable to find method 'org.gradle.api.file.ProjectLayout.fileProperty(Lorg/gradle/api/provider/Provider;)Lorg/gradle/api/.
android studio gradle 使用离线包 distributionUrl=https\://services.gradle.org/distributions/gradle-6.6.1-all.zip默认的下载地址很慢。下载了一个离线包后,把这行配置修改为:distributionUrl=file:///C:/Users/zzz/.gradle/wrapper/dists/gradle-6.6.1-all.zip...
android gson list 和 json array 互转示例 compile 'com.google.code.gson:gson:2.8.4'list转 json stringpublic class TabData { public static final int TAG_TYPE_DEFAULT = 0; int tabType; int tabIndex; String tabTitle; long tabData;} List<TabData> lis...
finalize() timed out after 10 seconds 问题模拟复现 public class Apple { @Override protected void finalize() throws Throwable { super.finalize(); Thread.sleep(130*1000); }}在 actvitity中创建一个A pple 对象。C rash Handler里拦截异常import android.util.Log;import androidx.annotat...
android 上传json串时,json key 被替换为 a b c 的问题 上传的json串是一个mapclassStudentInfo { public String name; public String age;}map.put("team", "team-a")List<StudentInfo> data = buildData(xxx);map.put("data", data);最后再用Gson将map转为json字符串。打包的debug版本的,表现正常,json串如下:{"team":"te.
Glide4 加载失败时显示默认图片 // 根据URL的首字母创建一个DRAWABLETextDrawable drawable = TextDrawable.builder() .buildRoundRect(getUrlFirstLetter(item.getUrl()), getRandomColor(item.getUrl()), 10);viewHolder.ivLogo.setImageDrawable(drawable);// 当从网络加载失败时,显示这张DRAWABLERequestOptions o..
postman 增加变量 postMan 的url 中可以这样填写,这样在不同的环境测试时,只需要修改host变量,而不用每个request 都修改。添加变量的方式:右键一个 collections 点 edit在弹出的框中编辑 variables 即可:...
chrome离线安装包下载 https://www.google.com/intl/en/chrome/?standalone=1这个链接默认下载的60MB的离线安装包。其它:主页下载的默认是 1MB 的的在线安装包。https://www.google.com/intl/zh-CN/chrome/参考:https://support.google.com/chrome/thread/3774390?hl=en...
基于redis 的一个简单的访问频率控制 思路:1 某IP地址每分钟的访问次数记录以IP+当前分钟为key 在redis 中记录某个IP的调用次数,缓存过期时间为60缓。2 限制调用如果[1]的值超过阈值,则在redis中写入 ip+limited 为key的一个键值对,缓存过期时间即是不允许API再被这个IP调用的时间,比如100秒。当API在调用的时候,判断redis中是否存在 ip+limited的这个键值对,如果存,返回频率受限的错误码。伪代码:bool isLimted(String ip) {
ubuntu 下一个简单的spring boot jar包的启用脚本 比如java 程序中有环境变量的配置,需要在启动前修改环境变量,如:#!/bin/shexport TEST_ENV=dddddddddjava -jar demo4.jar对应的java代码如下:application.propertiestest-env=${TEST_ENV:hello}java@RestController@RequestMapping("/v1/ops")public class DebugController { @Valu
getServerPort 和 getLocalPort 的测试 本地配置了 nginx 转到一个 spring boot 应用:测试内容浏览器访问 abc.comnginx 代理转发到 localhost:9999观察spring boot 应用 中getServerPort 和 getLocalPort 及 header 内容spring boot 应用 java 代码@RestController@RequestMapping("/v1/ops")public class DebugController { @G...
Android studio Gradle sync failed: Software caused connection abort: recv failed Android studio Gradle sync failed: Software caused connection abort: recv failed经分析发现是无法下载默认的 gradle.ZIPhttps://services.gradle.org/distributions/gradle-6.1.1-all.zip替换成一个可以下载的地址即可:https://distfiles.macports.org/gradle/gradle-6.1.1-all.zip...
Git config 中添加帐号密码 vim .git/config[remote "origin"] url = https://username:password@xxxx.git以zip包的形式下载git库后,提交或fetch的时候报无权限,可以通过这种方式添加帐号密码。
Android Studio Gradle Syn failed 解决 build.gradle 调整buildscript { repositories { maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'} google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.3.1' .
mock mvc contrller test @SpringBootTest@RunWith(SpringRunner.class)@AutoConfigureMockMvc@Transactionalpublic class InterceptorTest { @Autowired private MockMvc mockMvc; @Before public void setUp() throws Exception { } @Test public void testServ.
Spring boot 从配置文件加载一个列表/数组到成员变量 @Value("#{'${com.xx.mail.default-cc-list}'.split(',')}")private List<String> ccList;com.xx.mail.default-cc-list=a@xx.com,b@xx.com,c@xx.com
Mysql spring boot 单元测试 @Transactional 数据不回滚的原因 数据库引擎不对,使用提MYISAM ,改成InnoDB 后解决。查看数据库引擎的方式有好几种,比如 用mysql workbenchjava 示例代码@SpringBootTest@RunWith(SpringRunner.class)@Slf4j@Transactionalpublic class StudentTest { @Autowired private StudentDAO StudentDAO; @Test public voi..
Spring Boot Test 官方文档 https://docs.spring.io/spring-boot/docs/2.3.0.RELEASE/reference/html/spring-boot-features.html#boot-features-testing