- 博客(311)
- 资源 (7)
- 收藏
- 关注
原创 Timeout waiting for connection from pool
springboot使用httpclient在高并发的情况下会出现Timeout waiting for connection from pool,经测试是因为和有些银行的链接会超时,需要设长从连接池中获取到连接的最长时间http.connectionRequestTimeout=10000,之前是500,单位毫秒,另外并发数http.defaultMaxPerRoute =200,需要设置大一点,之前是20。完整的配置文件参考如下:#httpclient config#最大连接数http.m
2022-01-10 17:32:53 8447
原创 鸿蒙HarmonyOS自定义旋转进度对话框开发
Harmony中文翻译过来,和谐,融洽,HarmonyOS表面华为希望构建和谐共赢的操作系统,华为动了美国等西方国家顶层技术劳工的饭碗,导致被打压,可以说继续往前发展,中国最终会成为技术的引领者,西方国家技术垄断终会被打破,过去我们工作10几个小时才能挣一两百,而他们工作几个小时就能挣一千的格局终会被打破。中国加油!程序猿加油! 说多了,还是说说我们今天要完成的自定义旋转进度对话框吧,和android一样,android也没有现成的组件,需要通过Dialog+Animat...
2021-11-02 09:06:45 1998
原创 android动态获取资源id
有时候提供的jar需要内嵌到第三方app,但是本身又使用到layout,drawable,string等资源,就需要用到动态获取资源id。 比如原先我们设置页面是这样的 setContentView(R.layout.main); 现在需要改成这样: Utils.setPackageName(getPackageName()); //20211026应陆金所要求,反射改成getResources...
2021-10-27 10:19:28 1388
原创 H5使用spin.js实现正在加载中动画
正在加载中...,这个需求还是很常见的,不管是app还是h5都需要,否则网络不顺畅的情况下,用户都不知道到底提交了没有,会出现多次点击的情况,spin.js是一个开源的第三方进度展示js组件,官网地址:spin.js,github开源地址:GitHub - fgnass/spin.js: A spinning activity indicator,目前将近10000颗星星,可以自定义样式,还是挺受欢迎的。在他们的官网还可以设置样式,实时看效果,之前我从他们的官网引入js:http://s...
2021-09-27 21:22:07 881
原创 not attached to window manager问题解决
关于出现这个问题,一般是因为Activity已经在finish了,但是还在dialog.show(),或者dialog.dismiss().导致window manager无法管理dialog。解决办法如下:/** * 20210913 安全关闭对话框 . * 避免报:not attached to window manager . * @param dialog */ public static void closeDialogSafety(Activity ac...
2021-09-14 14:29:52 7696
原创 android通过aidl调用第三方app提供的服务
一个app需要调用第三方app提供的服务,除了提供jar,aar,contentprovider,activity跳转,scheme跳转,广播发送,还可以通过aidl (Android Interface Definition Language,即Android接口定义语言),通过service对外提供服务,底层原理是使用android系统的Binder,进行进程间的通信。 本次试验,通过一个叫learn的app提供两个接口服务,1.判断用户名密码是否正确 2.返回用户信...
2021-08-27 01:06:21 1954
原创 springboot集成RestTemplate
RestTemplate其实是spring框架对ApacheHttpClient的封装。 对比一下用法: 先看HttpClient /** * 带参数的post请求 . * * @param url . * @param map . * @return . * @throws Exception . */ public Ht...
2021-08-24 11:02:04 2059
原创 springboot配置日志框架log4j2
先有Log4j,2015年作者已经停更了,后面又有了Logback,再后面有了Log4j2,Apache Log4j 2 is an upgrade to Log4j that provides significant improvements over its predecessor, Log4j 1.x, and provides many of the improvements available in Logback while fixing some inherent problems in ..
2021-08-24 00:24:13 221
原创 springboot集成springsession
springsession实现原理:将sessionid保存在客户端的cookie里面,然后将该sessionid作为key将session保存在redis服务端,可以就可以实现分布式及跨域(跨域指a.com站点跳转到b.com站点保持session,需要特殊处理一下)。开始我们的实验。 第一步:pom.xml引入相关jar <!--Redis起步依赖 --> <dependency> <groupId>or...
2021-08-13 14:06:59 1168
原创 springboot使用redis客户端redistemplate
redis客户端有多种,常见有jedis,redisson,redistemplate,而redistemplate其实是对jedis的封装,本文着重讲使用方法,关于原理,后续再研究。 第一步:添加依赖jar <!-- redis --> <dependency> <groupId>org.springframework.data</groupId> &...
2021-08-12 12:59:22 1028
原创 mvn仓库镜像配置
1.镜像地址 仓库名称 阿里云仓库地址 源地址 central https://maven.aliyun.com/repository/central https://repo1.maven.org/maven2/ jcenter https://maven.aliyun.com/repository/public http:/
2021-08-05 10:16:04 1067
原创 springboot配置数据库连接池hikari
Springboot2.0以后默认数据库连接池选择了Hikari(性能高)开源地址:https://github.com/brettwooldridge/HikariCP里面有技术文档性能方面hikariCP>druid>tomcat-jdbc>dbcp>c3p0,可以参考性能对比https://blog.csdn.net/qq_31125793/article/details/51241943本文介绍配置默认的hikari,对比线程池大小设置的运行...
2021-07-18 19:23:38 1572
原创 微信小程序支付接入总结
微信小程序支付(等待开通appid和微信支付)1.流程小程序获取openid(下单时openid非必填)-->调用后台下单接口 -->获取到prepay_id等参数-->调起微信支付-->用户输入密码支付-->微信前台通知 后台回调通知支付结果2.后台统一下单接口https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=9_1&index=1请求小程序ID appid ...
2021-06-18 17:03:40 691
原创 nginx站点根目录配置验证文件
比如百度联盟需要配置验证文件1.编辑nginx.config配置文件vi nginx.config在80和443的 server{}中添加以下配置http 80端口配置server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; locatio...
2021-04-02 13:58:25 1566
原创 linux下安装单机版redis
1.创建目录cd /usr/localmkdir redis2.检查是否安装gcc(The GNU Compiler Collection 编译c或者c++等等的编译器,redis c写的)gcc -v如果没有安装,安装一下yum install gcc-c++3.下载及编译官网下载地址:https://redis.io/download$ wget https://download.redis.io/releases/redis-6.2.1.tar.gz$ tar .
2021-03-31 22:52:27 92
原创 ngixn配置https及负载均衡
打开nginx.conf配置文件进行编辑,完整的配置如下vi/usr/local/nginx/conf/nginx.conf#user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#pid logs/nginx.pid;events { worker_co.
2021-03-26 22:59:19 1027
原创 linux下安装nginx
1.下载nginxhttp://nginx.org/en/download.html我下载的是nginx-1.18.02.创建目录及解压cd /usr/localmkdir nginx将nginx安装包上传到该目录,或者使用wget在线下载,解压安装包tar -zxvf nginx-1.18.0.tar.gz”3.配置./configure4.这时发现会报错,因为缺少pcre依赖包5.下载pcrePCRE(Perl Compatible Regular..
2021-03-26 14:07:45 213
原创 springboot相关问题总结
springboot开发过程中相关问题记录,供参考.1. 打成jar部署1)、配置端口号server.port=80882)、C:\Users\figo>e:E:\>cd E:\CompayProjects\TestSystem\Trunk\TestE:\CompayProjects\TestSystem\Trunk\Test>mvn clean install –DskipTests3)、启动:加上&后台关闭后,服务不会中断...
2020-12-15 10:05:55 283
原创 Redis集群采用Redisson客户端实现分布式锁
之前文章实现了zookeeper集群采用curator客户端实现分布式锁,最近一直在做实验,希望使用redis的客户端reddisson实现分布锁,在大型电商项目或者银行项目,扣减库存,扣减余额面临的是高并发的环境,保证数据的一致性非常重要,不管是zookeeper,还是redis实现分布式锁,我理解其实都是将多线程变成了单线程去获取锁,每次只能一个线程能获取到锁,没有获取到的,自旋去等待。等上一个线程释放了,再获取。每次只有一个线程去操作库存或者余额当然就不会出现同时扣减的情况。好,下面...
2020-07-29 18:15:09 609
原创 springboot项目mybatis代码自动生成
Mybatis目前应用的很广泛,dao,model,mapper.xml如果手动写很麻烦而且容易出错,所以需要使用mybatis generator插件。 1.eclipse下载插件help-->eclipse marketplace这两个都安装,第一个是自动生成代码的,第二个是Content assists to reduce typing. Validations to detect errors before running the application....
2020-07-26 21:20:16 358 1
原创 springboot实现zookeeper统一配置中心
配置文件比如数据库连接,缓存更新时间,接口调用地址,加解密密钥,sesion超时时间,等等每个项目里面用的太多,如果项目里面都统一放在一个properties文件里面,会出现的问题,就是一旦一个地方修改了,假如有10台机器或者上百台,那么就需要重新部署这10台或者上百台的服务器,有没有更好的方法来管理配置文件?有,目前用的比较多的就是使用zookeeper,目前我还没仔细阅读过zookeeper的源码,不过实际使用已经做过测试,这里分享一下,如何在springboot项目里面使用zookee...
2020-07-22 11:14:14 3397
原创 zookeeper集群搭建
zookeeper可以实现统一的配置中心和分布式锁。 先简单来说一下搭建一个zookeeper集群(本文简单描述使用一台服务器实现伪集群,测试机器多的话,可以拿3台或者更多来试验一下)1.确保已经安装了java ,没有的话,安装一下java -version2.下载安装cd /usr/localmkdir zookeeper_clustercd zookeeper_cluster创建zookeeper3个节点目录mkdir zookeeper01mkdi...
2020-07-18 23:22:48 253
原创 接入第三方aar页面找不到资源文件报空指针问题
最近开发了一款二维码SDK给商户使用,但是我们提供的demo能正常运行,商户的接入时一直报void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference 各种排查,取消混淆,各种依赖重新添加,权限的添加等等,就是找不到这个页面的id为title的TextView,后来加了段代码调试当前页面都有哪些元素 setContentV...
2020-07-14 09:40:37 1314
原创 Redis集群搭建
Redis全称,Remote Dictionary Server 远程数据字典服务,官网https://redis.io/,copy一段官网的介绍:Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, l...
2020-07-09 20:25:01 416
原创 android引入第三方aar,jar冲突如何解决?
引入第三方aar,发现第三方aar里面的jar和本地项目的jar冲突了 如何解决?方法一:把本地引入的冲突的jar删了 (缺点:是否会影响自身的APP?需要测试)方法二:删除aar里面的冲突的jar相关的class,重新打成aar(缺点:是否会影响应用的AAR?需要测试)在linux环境,先解压unzip test-v1.0.2.aar -d /usr/local/test/test-v1.0.2再使用winrar打开classes.jar,删除冲突的jar重新打成aar包...
2020-07-06 15:21:20 6868 1
原创 android webview重写第三方H5页面js方法
需求是这样的,最近通过我们SDK的Webview打开了公司另外一个系统H5支付页面,这个H5页面左上角有个返回按钮,因为不是从我们的H5页面跳转过去的,所以左上角的返回图标执行的windows.history.back(-1);没有生效,商户投诉无法退出。解决办法是1.让这个H5页面点击我们webview暴露出去的一个js事件,点击的时候关闭当前webview Activity,这样成本比较大,另外一个系统也要改,另外这个H5支付系统也给其他系统调用,不太现实。 2.重写H5的windows.h...
2020-06-30 15:47:43 784
原创 兼容android10下载apk后无法安装问题
android兼容问题比较多,不仅仅是各种型号手机的兼容,SDK版本升级也得兼容,这不,今天发布了一个APK,android 9以下手机能在线下载最新APK后能安装,android 10就不行了,网上查阅一下资料,因为android权限控制的更严了,经测试如下方法可以解决,供参考。1、AndroidManifest.xml添加权限 <!-- 安装需要的权限 --> <uses-permission android:name="android.permi...
2020-06-16 15:48:32 6015 3
原创 zookeeper实现分布锁
互联网电商项目扣减库存就是个典型的分布式问题,如果简单的使用synchronized,ReentrantLock,在单机的环境下是可行的,但是互联网项目一般是很多服务器集群的,再继续使用synchronized,ReentrantLock就无法锁住了,那么就需要使用分布锁,常用的分布锁有三种1.基于数据库的cas,2.基于redis分布锁 3.基于zookeeper分布锁。本文介绍zookeeper实现分布锁。 1.安装zookeeper https:...
2020-06-14 21:53:48 324
原创 eclipse更改maven的本地路径和外部仓库地址
最近C盘又快爆满了,本来100G只剩下7个G了,为什么这么快就满了呢?一方面微信,QQ的聊天记录需要需要移到其他盘,另外一方面就是需要将项目的Mvn本地仓库移到其他盘,我使用的是eclipse自带的maven,可以在Installations里面。打开eclipse-->Window--->PreferencesC:\Users\figo\.m2\settings.xml 设置如下或者从自己安装的maven里面conf\settings.xml 拷贝后改改本地仓库路...
2020-06-05 14:03:03 429
原创 android获取客户端ip
网上查过很多资料,发现很多文章写得不全,要么只能查询wifi状态下客户端ip,要么只能查询gprs移动数据情况下的客户端ip,我写了个工具类,包含:1.可以判断当前网络状态是否可用 2.获取客户端ip(只要有网络),供参考。package com.figo.test.utils;import android.content.Context;import android.net.ConnectivityManager;import android.net.NetworkInfo;import.
2020-05-14 10:49:51 1292 1
原创 通过webview修改网页内容
有个需求,通过webview在打开第三方H5页面的时候,把卡号设置到第三方页面的卡号输入框。代码完整如下:package com.example.study2020;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.webkit.WebSettings;import android.webkit.WebView;import android.webkit.WebV
2020-05-09 16:20:38 1958
原创 keepalived+nginx实现负载均衡
nginx实现负载均衡,keepalived则主要用来监控nginx的健康状态(keepalived其实不止可以监控nginx其实可以监控redis,memcached等等需要监控的服务),官网:https://www.keepalived.org,nginx的使用方法见我另外一篇文章nginx实现负载均衡,keepalived下载地址https://www.keepalived.org/down...
2020-03-18 17:07:03 394
原创 nginx实现负载均衡
1、下载Nginxhttp://nginx.org/en/download.html选择Stable version2、windows环境安装及配置nginx2.1 下载安装及配置下载后解压到比如E盘修改配置文件E:\software\nginx-1.16.1\conf\nginx.conf#user nobody;worker_processes 1;...
2019-11-01 11:56:08 158
原创 android通过js打开第三方app报错:ERR_UNKNOWN_URL_SCHEME
1、首先说通过js打开第三方app的几种方式 function openApp() { alert('testOpenApp'); //方式一:调用android上注册的js方法可以打开 //mobile.openPersonalBank("", ""); //方式二: iframe // var ifr = document.creat...
2019-08-13 15:17:49 6921
原创 兼容android 6.0以上获取设备编号等权限
android 6.0及以上版本,我们可以发现虽然在AndroidManifest.xml里面,增加<uses-permission android:name="android.permission.READ_PHONE_STATE" />这个权限,但是还是无法通过telephonyManager.getDeviceId()获取手机设备编号的,那么就需要动态询问用户...
2019-07-15 16:04:15 1728
转载 如何保存android app日志(转载)
android 手机日志保存方法如下: 前置条件:已安装adb 1,手机usb连接电脑,打开USB调试模式(注意仅连接一台手机设备) 2,win+R输入cmd打开命令窗口,输入指令:adb devices,查看手机是否连接(显示设备号即连接成功) 3,开始保存日志:输入指令:adb logcat -v time > .\\logcat.log(保存到当前文件下)...
2019-07-03 10:48:31 1256
原创 Struts2国际化
1、struts.xml配置文件<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN" "http://struts.apache.org/...
2019-06-25 15:12:08 141
原创 SpringMVC国际化
最近做项目用到了国际化,这里总结一下,如果没有使用struts2项目,参考我下面的配置就可以了,如果使用了struts2,参考我另外一篇文章Struts2国际化。1、配置文件spring-servlet.xml<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.o...
2019-06-25 15:01:16 158
eclipse代码折叠插件
2018-06-28
2017上海谷歌开发者大会嘉宾演讲PDF
2017-11-07
org.apache.http jar包
2017-10-20
ORM之greenDAO学习
2015-09-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人