- 博客(700)
- 资源 (51)
- 收藏
- 关注
原创 简单记一下Spring 对事务注解的加载过程
若service里面有个方法做了@Transactional事务注解, 那么这个方法会被org.springframework.transaction.interceptor.TransactionInterceptor拦截, 最后会在执行org.springframework.transaction.interceptor.TransactionAspectSupport#invokeWithinTransaction, 代码:TransactionAttributeSource tas = get
2021-02-05 17:36:20 361
原创 用rsync进行服务器间文件同步
配置主服务器的rsync以服务形式运行 yum安装rsync(略) 设置rsyncd.conf, vi /etc/rsyncd.conf,因为是内网,所以不设置用户权限,直接用root跑, 下面配置将公开develop-bms这个同步名 #secrets file = /etc/rsyncd.secrets# rsync server informationmotd file = /etc/rsyncd.motdread only = yeslist = yesuid = nobod.
2021-01-22 17:21:58 253
原创 快速生成slony初始化配置表(找出带主键的表)
由于slony是逻辑复制, 可以自定义复制哪些表, 但是每个表需要有主键, 那么几百个表不可能逐一加到slony脚本里面, 所以写了一段sql找出所有带主键的表:SELECT tablename ,pk_name FROM pg_tables left join (select pg_class.relname ,/*pg_attribute.attname as colname,pg_type.typname as typename,*/pg_constraint.co...
2021-01-14 15:57:45 188
原创 BMS应用系统的高可用集群部署方案
老板不接受云方式部署,宁可用硬件按使用地点完全分隔应用数据库,然后想办法合并三个production database的数到中央数据库的做法.所以此方案不被老板接受.因为Postgresql不支持多个production database合并至一个总database,所以只能采用分拆 web service,多个web service指向同一个production database的方式来分担压力web application server的分拆1/BMS status server 负责...
2021-01-11 16:58:35 627
原创 简单的VIP实现方式
1/先看一下当前linux系统里网卡名称, 查到网卡配置ifcfg-ens192ll /etc/sysconfig/network-scripts/*1/激活VIP,绑定IP为 128.30.14.252ifconfig ens192:1 128.30.14.252 broadcast 128.30.255.255 netmask 255.255.0.0 up2/切换时可能需要关闭ifconfig ens192:1 down...
2021-01-11 09:07:46 760
原创 postgresql 12 配置异步主从复制 及灾难时切换
OS: Centos 7,postgresql12主机: host1, ip : 128.30.14.254从机: host2, ip: 128.30.14.255两台机的data目录均为/live/db/data在host1上进行如下配置打通主机机ip授权: # TYPE DATABASE USER CIDR-ADDRESS METHODhost replication replica 128.30.14.254/...
2021-01-06 18:01:57 483
原创 Slon I for Postgresql 12 的安装
OS: centos7, postgresql12先安装依赖 wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm yum localinstall epel-release-latest-7.noarch.rpm yum install llvm5.0 llvm5.0-devel clang yum install libicu-devel.x86_64 安装Clang and LL..
2020-12-30 17:19:26 183
原创 Mybatis 表映射类中添加额外的字段属性
有时候, 我们需要在表映射类里面添加一些额外的属性,而这些属性在对应的表中没有对应字段的, 如果不加处理, 在mybatis做insert/update时会出错, 这时候需要用@Transient把这个类属性/变量作注解, mybatis在处理数据库时就会忽略它....
2020-12-10 15:31:57 1954
原创 用Java Stream的Reduce实现MAX,MIN或查找特定的记录
实现找key长度最小的记录 List<Bean> data=initList(); Bean bean=data.stream().reduce((a,b)->a.key.length()<b.key.length()?a:b).orElse(null); System.out.println(bean);其他的类推
2020-12-09 11:57:16 359
原创 EasyExcel的Bug?
模板有一个map参数, header/det/sum三个list.问题: 因为header的list不定长, 所以要用到forceNewRow=true的fillConfig,那么一用就有问题了代码如下:FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build(); excelWriter.fill(new FillWrapper("header",header.ge...
2020-12-04 15:21:15 1639 3
原创 maven子模块的类访问子模块的资源
有一个需求就是在maven子模块里面访问放在resource下的excel用来作为模板生成excel,经过一翻尝试后发现只有通过URL来访问资源文件,才能在调试状态和打包状态均能正确访问子模块的资源文件.资源放置位置:那么通过以下代码可以访问该excel文档:URL templateFileURL = ProdoutDetService.class.getClassLoader().getResource("excel-template/prodout-smt.xlsx"); ...
2020-12-04 10:34:02 1267
转载 jqGrid api 中文说明
jqGrid学习之 ------------- 安装jqGrid安装很简单,只需把相应的css、js文件加入到页面中即可。按照官网文档:/myproject/css/ ui.jqgrid.css /ui-lightness/ /images/ jquery-ui-1.7.2.custom.css/myproject/js/ /i18n...
2020-12-02 14:15:04 5479
原创 javaScript如何获得Html组件被绑定的事件并进行执行前的拦截
应用场景: 最近遇到一个case就是用了第三方一个jqGrid的扩展包, 它会拦截searchForm的submit事件进行ajax递交(将原先的submit吞了), 而实际应用中又需要在点击递交前对输入参数进行判断, 不满足条件时取消递交操作.问题解决:也就是说, 需要获得原先已绑定的submit事件例程, 然后将submit事件转向自己的事件处理, 在判断后若通过才执行原先的submit处理例程$(document).ready(function(){ var events=$._data
2020-11-24 15:27:04 344
转载 基于Patroni的PostgreSQL高可用环境部署
陈华军PostgreSQL中文社区10月25日1. 前言PostgreSQL是一款功能,性能,可靠性都可以和高端的国外商业数据库相媲美的开源数据库。而且PostgreSQL的许可和生态完全开放,不被任何一个单一的公司或国家所操控,保证了使用者没有后顾之忧。国内越来越多的企业开始用PostgreSQL代替原来昂贵的国外商业数据库。在部署PostgreSQL到生产环境中时,选择适合的高可用方案是一项必不可少的工作。本文介绍基于Patroni的PostgreSQL高可用的部署方法,供大家参考...
2020-11-21 09:08:07 1492 2
原创 Android 数据绑定的RecyclerView通用适配器
RecyclerView的适配器编码方式千篇一律,那就做个通用的吧, 调用简单:MyRecycleAdapter.setupRecycleView(binding.lstByStation);binding.lstByStation.setVisibility(View.GONE);MyDataBindingRecycleAdapter<StationData> lstStationAdapter= new MyDataBindingRecycleAdapte..
2020-10-10 10:44:02 568
原创 Android fragment的数据绑定databinding
@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { binding= DataBindingUtil.inflate(inflater, R.layout.cpp300_fragment_verify_1,container,false); ..
2020-08-31 10:15:24 3317
原创 SpringBoot2+Mybatis的多数据源配置实现(包括事务管理)
SpringBoot2+Mybatis的多数据源配置实现概述Multi-DataSource 模块的建立定义TargetDataSource注解定义Aop拦截器定义多线程下data source type的存取器定义数据源注册器定义自定义数据源定义EnableMultiDataSource在yml里面配置多数据源参数启动类必须加上注解测试不用Aop拦截的处理方式概述多数据源的实现有不同的方法, 有的是通过配置不同的datasource,不同的SqlSessionFactory,每个SqlSessionF
2020-08-28 10:29:33 1006
原创 查linux进程的内存占用情况
ps -aux|grep javaroot - 当进程的owner26556 - 进程的ID0.1 - CPU使用率6.3 - 内存使用率7990264 - 虚拟内存使用 (单位:kb)778120 - 内存使用(单位:kb)Aug15 3:45 - 启动时间关于内存使用情况的细节: https://troydhanson.github.io/virtual_memory.pdf...
2020-08-17 10:07:24 108
原创 Postgresql 查阻塞源
先确定当前有哪些pid被阻塞SELECT pid,waiting,query_start,query FROM pg_stat_activity where waiting返回再根据当前的pid查阻塞源资料select * from (SELECT procpid, start, now() - start AS lap, current_query FROM (SELECT backendid, pg_stat_get_backend_pid(S.bac
2020-08-12 17:44:56 1215
原创 Postgresql 12的安装 (Centos7 和Centos8)
更新Yum源yum install http://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm安装yum install postgresql12yum install postgresql12-server还有安装扩展yum install postgresql12-contrib初始化切换到postgres用户,然后initdb -E UNIC.
2020-08-06 12:01:05 519
原创 JasperReport的应用,从模块设计到JAVA调用,中文问题...
安装 到官网下载社区版先解决中文问题 中文问题一直需要我们人手处理, 真是够了, 所以第一时间处理: 先在设置里面打开jaspersoftware-studio->fonts,建立 雅黑字体然后,点击Export导出为jar, 放到项目的lib文件夹里面新建Report 因为要用java提供数据源,所以这里选加入两个参数,一会从java传入定义fields然后逐个field拖到de.
2020-08-03 12:19:06 332
转载 PostgreSQL 实时健康监控 大屏 - 高频指标 - 珍藏级
标签PostgreSQL , 大屏指标 , qps , long query , locks , active , idle in transaction , long idle in transaction , 2PC背景最关键的一些数据库健康指标,趋势监测。1 总连接数主要看趋势,直接与业务量挂钩如果连接数接近max_connection水位,需要注意。同时连接数应与数据库主机可用内存挂钩,每个连接保守估计10MB内存开销(这里还未计算SYSCACHE,RELCACHE)。
2020-07-31 09:15:44 595
转载 Tomcat8优化--调整tomcat参数和JVM参数进行优化
调整tomcat参数学进行优化禁用AJP查看报告可以看到,禁用AJP服务后,吞吐量有所提升;当然了,测试不一定准确,需要多册测试才能看出是否有所提升;设置线程池通过设置线程池,调整线程池相关的参数进行测试tomcat的性能最大线程数为500,初始为50 1 <Executor name="tomcatThreadPool"namePrefix="catalina-exec-"maxThreads="...
2020-07-30 17:11:56 899
转载 PostgreSQL 13新特性之二: 支持异构分区表逻辑复制。
作者简介谭峰,网名francs,PostgreSQL中文社区委员,《PostgreSQL实战》作者之一,《PostgreSQL 9 Administration Cookbook》译者之一,致力于PostgreSQL技术分享,博客https://postgres.fun,三墩IT人。背景PostgreSQL 13 的逻辑复制新增了对分区表的支持,使得分区表也能够进行逻辑复制。实现方式:PostgreSQL 13 版本CREATE SUBSCRIPTION命...
2020-07-30 08:49:47 721
原创 Springboot 如何加载maven聚合工程子模块的国际化资源文件
很遗憾Springboot并不直接支持扫描子模块的国际化资源文件, 所以我们需要自定义Message source loader:在通用模块中定义CustomMessageLoaderConfiguration:package com.freestyle.common.spring.support;import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotati
2020-07-13 11:59:26 1240
原创 Postgresql的行锁测试
事务A在修改一条记录在未退出前:1/事务B可以用select来检索这条记录(旧的拷贝),直至事务A 提交了, 这条记录才能被其他事务可见.2/事务B如果想update这条记录或者用select … for update 来锁定这条记录,则会处于等待状态,直至事务A完结事务A用select for update锁定记录在未退出前:1/事务B 可以用select, 但是用select for update来试图锁定相同记录的话会处于等待状态,直至事务A完结2/事务B 如果想update或del..
2020-07-03 15:55:38 2653
转载 Caffeine Cache实战
Caffeine简介Caffeine是基于JAVA 1.8 Version的高性能缓存库。Caffeine提供的内存缓存使用参考Google guava的API。Caffeine是基于Google Guava Cache设计经验上改进的成果。并发测试官方性能比较:可以清楚的看到Caffeine效率明显的高于其他缓存。Caffeine可以通过建造者模式灵活的组合以下特性:* 通过异步自动加载实体到缓存中* 基于大小的回收策略* 基于时间...
2020-07-03 08:34:08 1215
原创 Android的databinding(二)
标题这节讲一下recyclerview的数据绑定首先要准备recyclerview的item渲染layout xml<?xml version="1.0" encoding="utf-8"?><layout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http:/
2020-07-01 16:43:53 219
原创 Android的databinding(一)
此例子演示了输入项与viewmodule属性的双向绑定,也演示了如何将属性的数字与输入UI的互相转换也演示了switch/spinner 与viewmodule属性的绑定也演示了UI与事件处理的绑定也演示了ImageView与viewmodule的属性绑定示例代码下载...
2020-06-29 09:45:16 1895
原创 Linux文件查找和文件内容关键字查找
按文件名通配符递归查找文件find ./ -name “login.py”按关键字查找-r开关,递归子目录, -E扩展模式,里面可以用|分隔多个关键字, or关系grep -r -E ‘word1|word2|word3’ dir/ > gather.log如果要and关系查找,则要用管道grep pattern1 files| grep pattern2 :显示既匹配 pattern1又匹配 pattern2 的行。...
2020-06-24 14:35:29 4053
原创 Android 尺寸转换器(适配各种屏幕)
自已写的为了适配各种DPI和尺寸不同的设备的工具, 各位如果有需要可以拿走. ![在这里插入图片描述](https://img-blog.csdnimg.cn/2020062012182186.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3JvY2tsZWU=,size_16,color_FFFFFF,t_70)...
2020-06-20 12:24:32 1241
原创 AndroidStudio换电脑后编译的APK出现不能更新安装问题
如题,已经将users下的.AndruidStudio和.gradler文件夹, as的程序文件夹, android sdk文件夹全部搬至新电脑, 能正常编译apk,也能正常安装运行, 但是并不能对原apk进行更新安装. 查了多资料才发现, 因为我这个项目并没有进行签名, 但是这并不代表没有签名,而是用了默认签名, 问题就出现签认签名文件上, 我的旧电脑的默认签名文件和新电脑的默认签名文件不一样所致. 默认签名文件在users下的.android,文件名为debug.key...
2020-06-18 16:53:46 894
转载 面试官问:高并发下,你都怎么选择最优的线程数?
一、理论分析 二、实际应用 为了加快程序处理速度,我们会将问题分解成若干个并发执行的任务。并且创建线程池,将任务委派给线程池中的线程,以便使它们可以并发地执行。在高并发的情况下采用线程池,可以有效降低线程创建释放的时间花销及资源开销,如不使用线程池,有可能造成系统创建大量线程而导致消耗完系统内存以及“过度切换”(在JVM中采用的处理机制为时间片轮转,减少了线程间的相互切换) 。但是有一个很大的问题摆在我们面前,即我们希望尽可能多地创建任务,但由于资源所限我们又不能创建过多的线程。那么在..
2020-06-12 09:08:47 385
原创 将本地docker容器迁移到服务端(导出与导入)
方法1: 容器的导出导入: export/import方法2: 镜像的导出与导入:save/load而将当前运行的容器转为新镜像:更新镜像更新镜像之前,我们需要使用镜像来创建一个容器。runoob@runoob:~$ docker run -t -i ubuntu:15.10 /bin/bashroot@e218edb10161:/# 在运行的容器内使用apt-get update命令进行更新。在完成操作之后,输入exit 命令来退出这个容器。此时 ...
2020-06-05 09:52:04 1256
转载 docker&docker-compose基本命令
https://www.runoob.com/docker/docker-command-manual.html容器生命周期管理run start/stop/restart kill rm pause/unpause create exec容器操作ps inspect top attach events logs wait export port容器rootfs命令commit cp diff镜像仓库login pull push search
2020-06-05 09:45:34 1397
原创 BlueStacks与Hyper-V enabled共存
蓝叠是全世界性能最好android版本最高的x86模拟器,一直用它调试android app,但是自从安装了docker for windows之后,蓝叠就罢工了,因为蓝叠要独占虚拟功能, docker服务也要通过hyper-v使用它,所以蓝叠就启动不了. 浪费了若干时间后发现蓝叠真是贴心,它有一个与hyper-v共存的版本,将蓝叠卸载换成这个就安逸了,给bluestacks 666个赞. 点击下载 :http://cdn3.bluestacks.com/...
2020-06-03 14:53:22 9869 8
转载 gotty - 基于Web的实时终端展示方式
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/maray/article/details/53064540收起需求考虑这样一种教学场景老师通过终端演示编程,学生通过浏览器观看老师的每一步动作。方案 1tmux 通过 socket 共享 session。流程搜索:maray tmux 能找到教程,本文不详述。缺陷学生需要懂得如何使用终端,需要一个账号登录到服务器。方
2020-05-20 10:45:15 2011
原创 记一诡异的Android开发过程中遇到的问题:换一个高版本的平板后,AutoCompleteTextView UI居然报错
如题,在模拟器上跑都没问题,后来匹配到新来的那批android9平板上跑,就出现:android.view.InflateException: Binary XML file line #2: Binary XML file line #2: Error inflating class TextView Caused by: android.view.InflateExcepti...
2020-05-05 14:32:19 313
spring-database.zip
2019-07-08
Mybatis generator core独立运行 jar 优化版
2019-04-30
佳博蓝牙无线条码打印机SDK示例
2018-12-08
Mindjet MindManager 2018(仅用于学习用途)
2018-08-11
PowerDesiner 16 with crack file
2018-05-12
VS2017 for opencv3.2的属性文件(包括win32/x64)
2017-06-14
ICS for D7-D10.2Tokyo full source
2017-06-07
VC/C#调用delphi写的dll, 演示如何进行类的传递并callback调用方的代码
2017-05-15
android 屏幕自适应的dp转换公式
2016-05-28
Delphi/Java兼容的AES加密代碼 R2
2016-04-01
兼容Delphi/Java的AES算法代码
2016-03-31
Delphi的android 项目演示动态代码实现接收系统广播内容/蓝牙打印额外的o库文件加载本地资源,js与webview互交
2024-09-02
easy-shiro的登录认证、鉴权例子,
2022-04-09
EasyShiro例子
2022-03-15
openjfx, 无法预览markdown的就需要它了。
2022-03-10
seata nacos 配置内容 config.txt
2021-12-29
multi-datasource(SpringBoot多数据源模块)
2021-12-04
frps-038魔改Windows版
2021-11-29
frps-038 魔改Linux版(防远程桌面暴力破解)
2021-11-29
frpc.exe修改版(适用非静态ip)
2021-02-23
databinding-2.7z
2020-07-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人