服务java
java服务端相关笔记
itCatface
把烟熄灭吧.
展开
-
AspectJ统一打印接口访问日志
直接copy即可使用AspectJ统一打印网络接口访问日志原创 2022-09-16 17:50:50 · 397 阅读 · 0 评论 -
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 · 3077 阅读 · 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 · 3561 阅读 · 0 评论 -
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 · 306 阅读 · 0 评论 -
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 · 187 阅读 · 0 评论 -
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 · 397 阅读 · 0 评论 -
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 · 431 阅读 · 0 评论 -
SpringCloud极简入门>断路熔断#hystrix配合feign
简介hystrix断路器组件,支持熔断,即在访问微服务不可达时,可以通过fallback自定义占位内容,避免了页面出现404,500等错误,能提升用户体验,当然可以添加逻辑将当前数据存到数据库,之后手动做不可达服务的数据同步;前置内容:SpringCloud极简入门>消息总线#bus实战1、添加依赖<dependency> <groupId>org.springframework.cloud</groupId> <artifactId&g原创 2022-02-16 15:00:48 · 198 阅读 · 0 评论 -
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 · 956 阅读 · 0 评论 -
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 · 297 阅读 · 0 评论 -
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 · 319 阅读 · 0 评论 -
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 · 457 阅读 · 0 评论 -
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 · 306 阅读 · 0 评论 -
SpringBooot连接本地sqlite数据库
pom.xml添加依赖 <!-- sqlite --> <dependency> <groupId>org.xerial</groupId> <artifactId>sqlite-jdbc</artifactId> <version>3.21.0.1</version> </dependency>.properties添加配置 spring.datas..原创 2021-06-16 10:06:00 · 1490 阅读 · 0 评论 -
消息中间件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 · 173 阅读 · 0 评论 -
消息中间件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 · 234 阅读 · 0 评论 -
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 · 740 阅读 · 0 评论 -
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 · 794 阅读 · 0 评论 -
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 · 524 阅读 · 0 评论 -
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 · 143 阅读 · 0 评论 -
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 · 4203 阅读 · 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 · 1238 阅读 · 0 评论 -
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 · 477 阅读 · 0 评论 -
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 · 861 阅读 · 0 评论 -
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 · 704 阅读 · 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 · 697 阅读 · 0 评论 -
配置maven环境并切换镜像源
官网下载maven安装包并解压 https://www.apache.org/配置系统环境变量 // 添加MAVEN_HOME MAVEN_HOME=D:\softwares\develop\apache-maven-3.8.1 // 添加path路径 %MAVEN_HOME%\bin命令行查看安装结果 mvn -version修改idea配置 Settings-Build, Execution, Deployment-Build Tools-Maven...原创 2021-06-16 13:48:42 · 3847 阅读 · 0 评论 -
SpringBoot配置多个数据库源
.properties添加多个数据库源注意url要改为jdbc-urlspring.datasource.login.driver-class-name=org.sqlite.JDBCspring.datasource.login.jdbc-url=jdbc:sqlite:C:/Users/catface/Desktop/user.dbspring.datasource.register.driver-class-name=com.mysql.jdbc.Driverspring.dataso原创 2021-06-16 10:30:05 · 954 阅读 · 0 评论