okhttp

android双向认证(自签名证书) bks的生成方法

做~自己de王妃 提交于 2020-08-17 23:38:24
网上很多文章都是只能单向认证,特在此记录双向自签名证书。 windows电脑配置 BouncyCastleProvider 1. 下载 bcprov-ext-jdk15on-159.jar 2. 这个 jar文件放在 Java 主目录下的 jdk/jre/lib/ext目录下 3. 修改jdk/ jre/lib/security/java.security这个文件:在List of providers 注释的地方添加这一行 security.provider.11=org.bouncycastle.jce.provider.BouncyCastleProvider 4. 重启终端,输入命令行: keytool -importkeystore -srckeystore client.p12 -srcstoretype pkcs12 -destkeystore client.bks -deststoretype bks -provider org.bouncycastle.jce.provider.BouncyCastleProvider 貌似要输入三次密码,记得问后台人员密码。 5.第4步中的client.p12是后台人员给的, 文章在这里 。 6. android代码中assets放入生成的client.bks和client.p12,网络框架使用基于okhttp的okgo框架

Java 在PDF中添加文本水印、图片水印(基于Spire.Cloud.SDK for Java)

て烟熏妆下的殇ゞ 提交于 2020-08-17 04:36:32
Spire.Cloud.SDK for Java提供了接口pdfWartermarkApi可用于添加文本水印addTextWartermark()和图片水印addImageWartermark()到PDF文档。文本将通过Java示例介绍具体实现方法。首先请参考以下步骤准备程序运行环境: 一、导入jar 文件。 (有2种方式) (推荐)方式1. 创建Maven项目程序,通过maven仓库下载导入。 以IDEA为例,新建Maven项目,在xml文件中配置maven仓库路径,并指定spire.cloud.sdk的依赖,如下: < repositories > < repository > < id > com.e-iceblue </ id > < name > cloud </ name > < url > http://repo.e-iceblue.cn/repository/maven-public/ </ url > </ repository > </ repositories > < dependencies > < dependency > < groupId > cloud </ groupId > < artifactId > spire.cloud.sdk </ artifactId > < version > 3.5.0 </ version > </

关于一个简单接口的并发测试与优化记录

ε祈祈猫儿з 提交于 2020-08-16 17:44:33
目的 通过测试了解高并发的各处细节,寻找制约因素;为软硬架构设计提供优化参考。 前述 优化前,该接口在测试环境的qps为140左右 该接口的内部逻辑 处理前1:开始计时 处理前2:较验IP白名单 处理: 查询数据库并缓存 处理后1:结束计划,并提交日志(用于形成性能报告) 日志通过REST API,最终写入数据库 该接口特征: 内部处理简单 可优化点比较清楚 开始测试 使用一个nio或aio的通道框架测试helloworld 使用本机测试,qps约为:450万(我的电脑 macbook pro 4c 16g) 如果server端的服务线程,加个 System.out.println ;qps估计要降一半(亲自跑过) 使用solon.boot.jlhttp,测试helloworld(单机,单实例) 使用本机测试,qps 约为:5万(我的电脑 macbook pro 4c 16g) 使用域局网测试(192.168.8.118),qps给为:2万(2c 4g 虚拟机) 测试getAppByID(服务端为单机单实例;测试端为另一台机,走的是内网) 服务端测试机情况 上面有8个java服务;docker服务(memcached,redis,mysql); 初始测试 qps约为:140 去掉三个触发器 -不用缓存,qps约为:600 +memcached,qps约为:1万(memcached

安卓高面试知识整理

大兔子大兔子 提交于 2020-08-16 08:47:32
安卓高面试知识整理 0.0Android 四大组件:这是一份全面 & 详细的Activity学习指南 https://blog.csdn.net/carson_ho/article/details/107012652 0.1手把手带你清晰梳理自定义View的工作全流程! https://blog.csdn.net/carson_ho/article/details/98477394 1.activity启动流程 Activity启动过程简要介绍 无论是通过点击应用程序图标来启动Activity,还是通过Activity内部调用startActivity接口来启动新的Activity,都要借助于应用程序框架层的ActivityManagerService服务进程。在前面一篇文章Android系统在新进程中启动自定义服务过程(startService)的原理分析中,我们已经看到,Service也是由ActivityManagerService进程来启动的。在Android应用程序框架层中,ActivityManagerService是一个非常重要的接口,它不但负责启动Activity和Service,还负责管理Activity和Service。 Android应用程序框架层中的ActivityManagerService启动Activity的过程大致如下图所示: 在这个图中

JavaFX+SpringBoot+验证码功能的小型薪酬管理系统

自闭症网瘾萝莉.ら 提交于 2020-08-14 20:16:25
2020.07.22更新 1 概述 1.1 简介 一个简单的小型薪酬管理系统,前端JavaFX+后端Spring Boot,功能倒没多少,主要精力放在了UI和前端的一些逻辑上面,后端其实做得很简单。 主要功能: 用户注册/登录 验证码找回密码 用户修改信息,修改头像 柱状图形式显示薪酬 管理员管理用户,录入工资 1.2 响应流程 1.3 演示 登录界面: 用户界面: 管理员界面: 2 环境 2.1 本地开发环境 Manjaro 20.0.3 IDEA 2020.1.1 OpenJDK 11.0.7.u10-1 OepnJFX 11.0.3.u1-1 Spring Boot 2.3.0 MySQL 8.0.20 2.2 服务器环境 CentOS 8.1.1911 OpenJDK 11 Tomcat 9.0.33 MySQL 8.0.17 3 前端代码部分 3.1 前端概述 前端主要分为5个部分实现:控制器模块,视图模块,网络模块,动画模块还有工具类模块。 控制器模块:负责交互事件 视图模块:负责更新UI 网络模块:向后台发送数据请求 动画模块:位移、缩放、淡入/淡出、旋转动画 工具类模块:加密,检查网路连通,居中界面等 3.2 概览 3.2.1. 代码目录树 说明: constant 包:项目所需要的字符串常量以及一些枚举常量 controller 包:控制器类,负责UI与用户的交互

RestTemplate组件:ClientHttpRequestFactory、ClientHttpRequestInterceptor、ResponseExtractor【享学Spring MVC】

浪尽此生 提交于 2020-08-14 13:33:27
每篇一句 做事的人和做梦的人最大的区别就是行动力 前言 本文为深入了解Spring提供的Rest调用客户端RestTemplate开山,对它相关的一些组件做讲解。 Tips:请注意区分RestTemplate和RedisTemplate哦~ ClientHttpRequestFactory 它是个函数式接口,用于根据URI和HttpMethod创建出一个ClientHttpRequest来发送请求~ ClientHttpRequest它代表请求的客户端,该接口继承自HttpRequest、HttpOutputMessage,只有一个ClientHttpResponse execute() throws IOException方法。其中Netty、HttpComponents、OkHttp3,HttpUrlConnection对它都有实现~ // @since 3.0 RestTemplate这个体系都是3.0后才有的 @FunctionalInterface public interface ClientHttpRequestFactory { // 返回一个ClientHttpRequest,这样调用其execute()方法就可以发送rest请求了~ ClientHttpRequest createRequest(URI uri, HttpMethod httpMethod)

用AsyncTask实现断点续传

隐身守侯 提交于 2020-08-14 13:27:04
在学习四大组件之一的service时,正好可以利用asyncTask 和OKhttp来进行断点续传,并在手机的前台显示下载进度。 尝试下载的是Oracle官网上的jdk1.7 在AS中使用OKhttp,只需要简单的在app/build.gradle里加入一句就可以了,如下代码,就最后一行加入即可 dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) compile 'com.android.support:appcompat-v7:25.3.1' compile 'com.android.support.constraint:constraint-layout:1.0.2' testCompile 'junit:junit:4.12' compile 'com.squareup.okhttp3:okhttp:3.8.1' } 1、DownloadTask.java 在该类里主要进行了文件是否存在