- 博客(204)
- 资源 (12)
- 收藏
- 关注

原创 目录
Android 基础Android系统架构、基础组件、JVM&DVM&ART、安全机制、SP文件权限数据存储PropertiesXML、JSONContextActivityrequestWindowFeature(全屏、无标题等)startActivityForResultincludeFragmentBroadcastReceiverServi
2017-05-27 18:20:37
863
原创 win本地部署Dify,并接入deepseek-r1
参考需要安装的软件有本机环境:win10企业版21H2,i5-12400,16GB,集显无独立显卡。
2025-03-19 18:52:53
1718
原创 SpringBoot查询Oracle数据库,中文乱码问题解决
SpringBoot连接Oracle数据库(版本是11g)解决方式有两种,动态和全局转换(推荐)字符编码。使用MybatisPlus查询,发现中文乱码。查看Oracle数据库字符集编码。之后查询中文乱码问题正常。引入druid连接池。
2022-10-18 09:36:40
3887
2
原创 docker中sentinel无法监控
问题docker运行sentinel容器,控制台监控不到任何服务请求信息解决办法SpringBoot需添加配置client-ip期中client-ip为容器内查看到的宿主ip;可执行ping host.docker.internal查看宿主ip;若容器内无法执行ping命令,则需要安装,先执行docker exec -it <容器ID> /bin/bash进入容器,然后执行apt-get update,然后执行apt-get install inetutils-ping安装工具,最后
2022-05-26 17:29:29
3124
1
原创 docker中nginx的location转发不生效
问题docker创建nginx容器后,修改nginx.conf配置服务转发,始终不成功,proxy_pass配置如下解决办法需将上图中的localhost改为容器内查看到的宿主ip;因为初始的nginx容器内无ping命令,所以需要安装,先执行docker exec -it <容器ID> /bin/bash进入nginx容器,然后执行apt-get update,然后执行apt-get install inetutils-ping安装工具,最后执行ping host.docker.in
2022-05-26 17:21:54
3643
原创 安卓无障碍笔记-AccessibilityService
项目demo地址,demo_accessibility目录下;https://gitee.com/catface7/catface_app核心服务lib模块res>xml>accessibility_config.xml<?xml version="1.0" encoding="utf-8"?><accessibility-service xmlns:android="http://schemas.android.com/apk/res/android" .
2022-04-11 16:33:45
1010
原创 SpringCloud极简入门>网关#gateway
简介同zuul一样,为网关组件,zuul已停更,建议使用gateway代替之;参考文章:SpringCloud极简入门>网关#zuul实战1、创建《gateway》模块1.1、pom依赖<dependencies> <!--gateaway依赖--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId
2022-02-28 14:28:44
322
原创 SpringCloud极简入门>网关#zuul
简介zuul网关组件;如现在有两个微服务部署在异地,访问A服务ipA:8001/getData,访问B服务ipB:8002/getView,即需要访问多个ip和端口,添加zuul网关服务,则只需访问网关服务的ip和其端口即可;前置内容:SpringCloud极简入门>断路器监控#turbine实战1、创建《zuul》模块1.1、pom<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apac
2022-02-16 16:30:37
204
原创 SpringCloud极简入门>断路器监控#turbine
简介上篇的hystrix dashboard只能断路监控一个微服务,本篇的turbine可以监控多个微服务,通过yml中配置app-config即可监控该微服务的各个端口;前置内容:SpringCloud极简入门>断路器监控#hystrix dashboard实战1、创建《turbine-dashboard》模块1.1、pom<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.o
2022-02-16 16:12:58
413
原创 SpringCloud极简入门>断路器监控#hystrix dashboard
简介hystrix dashboard可以监控微服务间调用情况,当有服务不可达时可以在控制台及时发现;但是只能监控一个微服务,若是要监控多个微服务,可以使用turbine组件;前置内容:实战1、创建《hystrix-dashboard》模块1.1、pom<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w
2022-02-16 15:50:56
446
原创 SpringCloud极简入门>断路熔断#hystrix配合feign
简介hystrix断路器组件,支持熔断,即在访问微服务不可达时,可以通过fallback自定义占位内容,避免了页面出现404,500等错误,能提升用户体验,当然可以添加逻辑将当前数据存到数据库,之后手动做不可达服务的数据同步;前置内容:SpringCloud极简入门>消息总线#bus实战1、添加依赖<dependency> <groupId>org.springframework.cloud</groupId> <artifactId&g
2022-02-16 15:00:48
213
原创 SpringCloud极简入门>消息总线#bus
简介本篇前置:SpringCloud极简入门>配置服务#config实战1、前置准备1.1、需要开启RabbitMQ服务cmd以管理员权限执行net stop RabbitMQ && net start RabbitMQ;1.2、对zipkin有影响原本cmd执行java -jar zipkin-server-2.10.1-exec.jar,改为java -jar zipkin-server-2.10.1-exec.jar --zipkin.collector.rabbitm
2022-02-16 10:57:31
981
原创 SpringCloud极简入门>配置服务#config
简介通过config组件,可以将各个微服务的配置存放于git、gitee或者本地文件,并且可以配合bus组件,当修改远程配置文件后,不需要挨个重启部署相关服务,本篇介绍config的引入,和微服务如何读取远程配置;实战远程配置文件地址:https://gitee.com/catface7/spring-cloud-config/blob/main/dev/server-fetch-dev.yml1、创建《server-config》服务1.1、pom配置<?xml version="1
2022-02-16 09:53:51
313
原创 SpringCloud极简入门>链路追踪#zipkin
简介zipkin,即链路追踪框架,请求一个接口后,会产生服务间的访问链,此时打开zipkin的管理页,可以查看该请求经过的服务链路;前置内容:SpringCloud极简入门>服务发现#eurekaSpringCloud极简入门>服务通信#ribbon/feign实战1、下载jar并运行下载zipkin-server-2.10.1-exec.jar,cmd执行java -jar zipkin-server-2.10.1-exec.jar运行;2、添加依赖《server-center》不用添加
2022-02-15 15:43:37
340
原创 SpringCloud极简入门>服务通信#ribbon/feign
简介通过eureka注册好各个微服务后,可以通过ribbon或feign进行服务间通信;两者均支持负载均衡;ribbon通过RestTemplate;feign是ribbon的封装,通过注解进行请求,推荐使用feign;本篇基于eureka入门篇的项目内容;实战1、测试负载均衡效果《server-account》测试接口返回端口值@RestControllerpublic class AccountController { @Value("${server.port}") p
2022-02-15 15:19:21
467
原创 SpringCloud极简入门>服务发现#eureka
简介eureka即服务发现,包含server注册中心服务和各个client客户端服务,各个client客户端服务注册至注册中心,添加配置后,即可相互发现,并可通过Ribbon或Feign等进行通信;创建项目1.1、创建父工程1.2、删除src目录,并编辑pom<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://w
2022-02-15 14:14:33
317
原创 软考架构师复习笔记
案例背诵软件质量属性可用性:系统能够正常运行的时间比例;ping/echo,心跳,异常,表决,冗余,定期重置,进程监视器;可修改性:能够快速和高性价比的对系统进行变更的能力;维持语义的一致性,预期期望的变更,泛化模块,限制选择,信息隐蔽,维持现有接口,限制通信路径,接口-实现分离;性能:系统的响应能力,即要经过多久能对某个事件作出响应,或在某段时间内系统能处理事件的个数;提高计算效率,减少计算开销,管理事件率,限制执行时间,引入并发,维持数据或计算的多个副本,增加可用资源,先进先出,固定优先级调
2021-12-31 14:31:39
1432
原创 2021软考架构师-论文草稿
前言今年软考,集中的备考时间为10月前后,其中,上午综合体备考方式为"软考通"app刷题,下午案例题备考方式为希塞官网的真题,带答案分析,非常便利,论文的备考,因为工作和时间关系,只准备了一篇相对较为简单的三层C/S架构论文操作,但是没有考,但考到了微服务,所以,我将数据库层段落精简一比带过,扩展了服务层的内容,添加了RPC微服务通信和,微服务优点等内容,文末总结也进行了精简,因为当时心里想着是已经写的离题了,临场发挥的微服务内容也不太深刻和顺滑,同时又感觉结尾很形式主义,有点作的感觉,所以就用白话一笔.
2021-12-20 16:41:02
3101
1
原创 简谈源码-AIDL
进程线程和进程线程是系统调度的最小单位;进程是资源分配的最小单位多进程在清单文件中给四大组件设置android:process属性,两种方式a. :remoteb. cc.catface.xapp.remotea方式为当前应用的私有进程,其他应用进程不能访问之,进程名参考cc.catface.xapp:remoteb方式为全局进程,其他应用进程可以访问之,进程名参考cc.catface.xapp.remote系统会为每个应用分配唯一UID,以隔离内存数据访问四大组件多进程存在
2021-11-17 15:20:54
439
原创 简谈源码-ButterKnife(v10.2.3)
ButterKnife官网用法示例package com.example.butterknife.library;public class SimpleActivity extends Activity { @BindView(R.id.hello) Button hello; @BindView(R.id.titleTv) TextView titleTv; @OnClick(R.id.hello) void sayHello() { Toast.
2021-11-12 16:44:26
2569
原创 简谈源码-EventBus(v3.2.0)
EventBus使用方法步骤一、定义事件订阅的事件类public static class MessageEvent { /* Additional fields if needed */ }步骤二、准备订阅者订阅方法,需要@Subscribe注解声明,可以设置处理该事件的线程等@Subscribe(threadMode = ThreadMode.MAIN) public void onMessageEvent(MessageEvent event) {/* Do somethin
2021-11-11 13:53:25
759
原创 安卓自定义View-水平颜色选择器
实现效果如上图。分为两个部分,一个是画板View,因为添加了撤销上一步功能,所以每次绘制的path都是一个对象,这个对象包含这条path对应的画笔paint信息,然后保存在集合中;另一个是水平颜色选择器View。两个单独的View逻辑都很简单,下面直接贴出代码,包含注释;当然只是速写demo,有很多可以自行优化的地方fragment及对应的xmlimport android.os.Bundle;import android.view.LayoutInflater;import androi..
2021-08-31 15:16:04
623
原创 消息中间件RabbitMQ入门学习笔记
消息中间件rabbitmq主要有四种模式:fanout广播、direct分食、topic主题订阅、header-不常用,代码都很类似,主要区别是创建消息主题时会区别声明exchangeDeclare(),还有消息接收后需要给producer一个确认消息环境准备服务准备 erlang用管理员权限安装并配置ERLANG_HOME和%ERLANG_HOME%\bin rabbitmq用管理员权限安装并用管理权限打开的命令行执行如下 *\rabbitmq_server-3.9.2\sbin\r.
2021-08-16 10:55:36
185
原创 消息中间件ActiveMQ入门学习笔记
消息中间件activemq有两种模式:topic广播、queue分食,两者代码很类似,主要区别是创建消息主题时会声明是topic还是queue环境准备软件安装 https://activemq.apache.org/下载并解压至本地activemq服务开启 xx\apache-activemq-5.16.2\bin\win64\activemq.bat双击即可开启服务启动截图进入activemq的消息监控页面 打开http://127.0.0.1:8161/并输入a.
2021-08-16 10:27:34
255
原创 mybatis中<foreach>标签的使用
表中数据,现在想查询select * from user where password in (list)rowid username password1 2021-7-2 14:00:24 root2 2021-7-2 14:00:41 pass33 zhangsan pass14 lisi pass25 2021-7-2 15:32:57 pass26 2021-7-2 15.
2021-08-06 18:26:13
762
原创 SpringBoot中使用Mybatis-Plus
存在问题:1.多数据库源分页2.联表查询参考mybatis-plus官网示例,数据库使用比SQLite更为轻便的H2,支持内存模式,即服务关闭后数据清空不会持久保存,非常方便于测试pom添加依赖<!-- 内嵌数据库h2 --><dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>.
2021-08-06 18:01:29
842
原创 SpringBoot中使用logback&slf4j
稍有学习,但项目中使用还需要更深入的测试了解集成//实际项目不需要像如下依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId></dependency>//spring-boot-starter-web包含spring-boot-start.
2021-08-06 13:55:39
539
原创 SpringBoot中使用Redis
win安装redis客户端https://github.com/tporadowski/redis/releases下载zip文件解压redis-server.exe运行redispom添加redis依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId>
2021-08-05 16:35:24
156
原创 总结fragment多页面的常用方式+数据通信
效果类似新闻类app,一个activity包含多个不同栏目的fragment,文中的RadioGroup可以用自己写的多个Button或ImageButton等代替先准备三个Fragment如下class AFragment : Fragment() { //AFragment传递数据给AActivity interface Callback { fun onAFragmentCreateView(info: String) } private l.
2021-08-04 18:33:11
452
原创 安卓中使用AspectJ
参考沪江的开源框架->https://github.com/HujiangTechnology/gradle_plugin_android_aspectjx简单集成使用示例添加依赖 //项目的gradle->buildscript->dependencies添加依赖 classpath 'com.hujiang.aspectjx:gradle-android-plugin-aspectjx:2.0.10' //app的gradle->dependenci.
2021-08-04 18:13:29
968
原创 SpringBoot中使用AspectJ
pom中添加依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId></dependency>常规切面使用切入指定包类目录,如@Pointcut("execution(* sb.simple.aspectj.normal.*.*(..))")切面类
2021-08-04 16:54:38
4271
4
原创 SpringBoot中使用PageHelper
简单使用集成 <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.13</version> </dependency>添加properties配置项 pageh
2021-07-29 15:40:49
1256
原创 SpringBoot中使用swagger
集成//版本号<properties> <springfox.swagger.version>2.9.2</springfox.swagger.version></properties> //添加依赖<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifac
2021-07-26 11:15:44
500
原创 SpringBoot中使用lombok
集成IDE安装Plugins插件=>lombok添加maven依赖 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency>使用基本用来简化pojo使用@Data注解
2021-07-23 16:22:29
898
原创 SpringBoot启动自动执行sql脚本
navicat导出sql脚本包含建表语句和数据插入等语句右键数据库>转储SQL文件>结构和数据...SpringBoot启动自动执行sql脚本逻辑编写结构总览编写sql脚本,置于resources/sql目录下schema.sqlDROP TABLE IF EXISTS people;CREATE TABLE IF NOT EXISTS people( persion_id INT NOT NULL, first_name VARCHAR(
2021-06-29 16:06:19
722
4
原创 SpringBoot的@Value读取properties配置用法示例
properties配置文件#键值对cc.catface.k1=v1#自定义@Configuration和读取listcc.catface.names.list[0]=nameAcc.catface.names.list[1]=nameBcc.catface.names.list[2]=nameC#数组cc.catface.l1.list=a1,a2,a3,a4#listcc.catface.l2.list=a1,a2,a3,a4,a5#setcc.catface.set..
2021-06-29 15:41:53
724
app_ffmpeg_demo.7z
2021-01-26
gson2.8.1_fastjson1.2.2
2017-09-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人