自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 知识点链接大全

常见问题的总结

2021-04-07 00:35:11 537

原创 微服务 日志追踪 traceId 解决方案

随着项目的逐渐壮大,以及业务逻辑的日渐复杂,微服务项目的调用链路逐渐变长,与此同时,出现问题时排查原因就会需要根据代码追踪日志,并每个微服务追踪,每次排查问题都要先看代码,相对麻烦。

2023-12-25 15:19:04 900

原创 @Async 注解配合自定义线程池使用及异常处理

文章目录1. 配置线程池及参数2. 编写需要线程池处理的业务逻辑3. 调用异步方法4. 注意点:背景:之前用线程池处理任务的时候都需要手动写类活着匿名内部类实现Runable接口(或者另外两种,懂得都懂),然后重写run方法,个人感觉比较麻烦。后来偶然一次接触到 Spring 提供的 @Async 注解,便将两者结合起来使用,发现异常依旧可以直接捕获。Tip:这里只是一个使用的 demo,作者亲测没什么问题。1. 配置线程池及参数我平时用的比较多的是 ThreadPoolTaskExecut

2022-03-30 19:00:58 2054

原创 LocalDateTime 用法记录

// 2021-10-20T11:24:45.564 (默认取系统本地时区时间)LocalDateTime now = LocalDateTime.now();// 2021-10-20T03:24:45.564 (0时区时间,若要获取东八区时间:UTC+8)LocalDateTime now1 = LocalDateTime.now(ZoneId.of("UTC"));// 2021-10-20 11:24:45 (LocalDateTime类型转换为指定格式字符串)String fo

2021-10-20 13:44:26 460

原创 文件上传下载总结

文章目录1. 简介2. 文件上传2.1 单/多文件 前端2.2 单/多文件 后端2.3 文件+表单数据上传2.3.1 前端页面2.3.1 后端代码3. 文件下载3.1 前端3.1.1 a 标签下载3.1.2 js中get请求下载3.2 后端3.2.1 ResponseEntity下载3.2.2 输出流 下载1. 简介前端:js、axios实现后端:spring boot 处理文件2. 文件上传2.1 单/多文件 前端/** * @param event 文件 * getF

2021-08-20 21:16:22 255

原创 跨域解决方案

跨域解决方案五花八门,这里记录作者常用的几种跨域的本质是同源策略请求到服务器了,服务器拒绝响应文章目录1. 前端跨域1.1 vue (vue-cli脚手架)1.1.1 配置跨域1.1.2 使用1.2 react2. 后端跨域(Java)2.1 配置响应CorsFilter2.2 实现 WebMvcConfigurer 接口2.3 使用注解(@CrossOrigin)1. 前端跨域解决方案:配置proxy代理跨域原理:访问 localhost 请求转发到本地代理 proxy 服务器,

2021-08-20 11:38:12 114

原创 Spring Boot jar包打包成docker镜像

一. 手动方式1. 准备好 docker 环境安装好docker即可,不同操作系统教程不同(建议百度)2. 准备好Spring Boot 项目(1)创建 Spring Boot 项目,并编写简单 controller 测试代码:@RestControllerpublic class HelloController { @RequestMapping("/hello") public String hello() { return "hello docker p

2021-08-11 17:49:22 472

原创 SpringCloud Alibaba 整合 Seata(1.4.0版本)

本博客记录 SpringCloud Alibaba 整合 Seata1.4.0版本一.下载seata server下载地址:http://seata.io/zh-cn/blog/download.html(官网地址)Tip:这里我下载的1.4.0的binary类型二.seata server配置修改解压下载的 seata server 1.4.0压缩包,分别修改seata-server-1.4.0\seata\conf目录下的file.conf和registry.conf文件1.修改file

2021-06-16 18:00:46 938

原创 springboot 获取项目路径

1、springboot获取当前项目路径的地址System.getProperty("user.dir")输出目录: G:\outshine\wangsoso2、获取classes目录绝对路径// 方式1String path = ClassUtils.getDefaultClassLoader().getResource("").getPath();// 方式2String path = ResourceUtils.getURL("classpath:").getPath();输出

2021-04-03 20:18:14 5629 3

原创 异步编程方式

1.Java8的CompletableFuture用法:https://blog.csdn.net/Bowen90/article/details/89026326特点:返回值:有/无(可有可无)2.Spring的@Async注解用法:https://blog.csdn.net/liuchuanhong1/article/details/64132520特点:返回值:无3.google的eventBus事件总线可同步可异步用法:https://blog.csdn.n

2020-12-28 17:38:29 145

原创 Tomcat日志乱码

修改Tomcat源文件中的/conf/logging.properties中的几个编码方式如下:

2020-11-12 22:44:16 85

转载 git cherry-pick 教程

对于多分支的代码库,将代码从一个分支转移到另一个分支是常见需求。这时分两种情况。一种情况是,你需要另一个分支的所有代码变动,那么就采用合并(git merge)。另一种情况是,你只需要部分代码变动(某几个提交),这时可以采用 Cherry pick。一、基本用法git cherry-pick命令的作用,就是将指定的提交(commit)应用于其他分支。$ git cherry-pick <commitHash>上面命令就会将指定的提交commitHash,应用于当前分支。这会在当前分支

2020-11-09 15:27:57 126

转载 Linux的五种IO模型

在Linux(UNIX)操作系统中,共有五种IO模型,分别是:阻塞IO模型、非阻塞IO模型、IO复用模型、信号驱动IO模型以及异步IO模型。下面通过钓鱼的例子来解释这五种IO模型吧。到底什么是IO我们常说的IO,指的是文件的输入和输出,但是在操作系统层面是如何定义IO的呢?到底什么样的过程可以叫做是一次IO呢?拿一次磁盘文件读取为例,我们要读取的文件是存储在磁盘上的,我们的目的是把它读取到内存中。可以把这个步骤简化成把数据从硬件(硬盘)中读取到用户空间中。其实真正的文件读取还涉及到缓存等细节,这里

2020-11-02 14:10:42 166

转载 maven常用命令

一、Maven常用命令:1. 创建Maven的普通Java项目:mvn archetype:create -DgroupId=packageName -DartifactId=projectName2. 创建Maven的Web项目:mvn archetype:create -DgroupId=packageName -DartifactId=webappName -DarchetypeArtifactId=maven-archetype-webapp3. 反向生成 maven 项目的骨架:mvn

2020-10-30 14:41:12 408

原创 idea/webstorm配置github/gitee

前提条件:①本地已经安装了git;②idea/webstorm安装了gitee插件(github默认支持插件,如果没有的话也要安装一下,步骤如下)idea/webstorm安装gitee插件github/gitee使用步骤1、File->settings->Version Control ->Git 配置本地git的路径## 2、将项目上传到github/gitee上(这里需要填写github/gitee账号、密码和需要上传的仓库信息)前提条件:github/gitee没有同

2020-07-10 22:14:30 2029 1

转载 集群、分布式、微服务的概念和区别

概念:集群是个物理形态,分布式是个工作方式。- 分布式:一个业务分拆多个子业务,部署在不同的服务器上- 集群:同一个业务,部署在多个服务器上1:分布式是指将不同的业务分布在不同的地方。而集群指的是将几台服务器集中在一起,实现同一业务。分布式中的每一个节点,都可以做集群。而集群并不一定就是分布式的。而分布式,从窄意上理解,也跟集群差不多,但是它的组织比较松散,不像集群,有一个组织性,一台服务器垮了,其它的服务器可以顶上来。分布式的每一个节点,都完成不同的业务,一个节点垮了,那这个业务就不可访问了

2020-05-10 23:17:58 735

原创 ssm拦截器导致静态资源无法访问的解决

方法1和2的前提:springmvc过滤器中用的 “/” 拦截所有方案一、拦截器中增加针对静态资源不进行过滤(涉及spring-mvc.xml)<mvc:resources location="/" mapping="/**/*.js"/> <mvc:resources location="/" mapping="/**/*.css"/> <mvc:r...

2020-04-27 17:02:20 1461

原创 关于layui导致js动态生成下拉列表失效问题

layui异步请求获取到的数据往下拉框中添加时会出现显示不出来的问题,添加form.render('select');即可;示例:/*获取角色*/$.ajax({ url: 'roles', success: function (data) { for (var i = 0; i < data.length; i++) { ...

2020-04-27 16:56:29 646 1

原创 pageContext、request、session、servletContext四大作用域的生命周期

pageContext生命周期:访问jsp创建pageContext对象,访问结束时销毁!只能在当前的jsp中产生效果无法向其他页面传递参数(其他手法除外,当然其他手法和pageContext的关系也就不大了)request生命周期:当从一个jsp发出一个request,即表明了这个request生命周期的开始,当到达action之后一般有两种处理request的方式,一种为req...

2020-03-06 15:47:13 896

转载 Cookie和Session机制核心知识总结

会话会话跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。Cookie机制Tip:Cookie通过在客户端记录信息确定用户身份一、cookie有效期Cookie的maxAge决定着Cookie的有效期,单位为秒(Second)。Cook...

2020-02-27 10:59:37 204

原创 idea安装、基本设置和插件安装

软件下载【软件名称】:IntelliJ IDEA【idea-2018.3.6 下载链接】: https://pan.baidu.com/s/1fmOwuBAyKfRav84Y10OSGw【提取码】:regg【idea-2019.2 下载链接】:https://pan.baidu.com/s/1YhV95rwpspsjv6768SNVlA【提取码】:g9e4安装教程1、双击你想要安...

2020-01-24 21:35:12 1248

原创 ssm整合(idea,非maven项目)

springmvc+spring+mybatis框架整合spring先整合springmvc1、创建web动态工程2、在WEB-INFO下面创建lib文件夹,用来存放jar包,并导入spring相关jar包,然后add as library添加到工程中3、创建resources资源文件夹(将其标记成Resources Root),并将spring的核心配置文件applicationCo...

2020-01-16 15:52:24 893

原创 Tomcat 7/8/9安装及环境配置

安装及环境配置步骤1、找到Tomcat7的压缩包,右击解压到当前文件夹2、确认解压成功3、开始配置Tomcat环境,右击此电脑->属性4、点击高级系统设置5、点击环境变量 6、点击新建7、先找到我们之前解压Tomcat7的地址,然后单机它,进去8、新建的变量名为:CATALINA_BASE 变量值为:Tomcat的地址(你解压的Tomcat的地址)9、点...

2020-01-11 20:39:21 679

原创 Java多线程爬虫,爬取酷我音乐排行榜全部音乐示例

一、网页分析通过这个地址可以获取到当前页所有音乐的json数据,返回一个json字符串,json串中包括了这一页所有音乐的 rid二、多线程进入,加快下载音乐的速度其实这里不用多线程也没问题,就是下载的慢一点主函数入口,因为酷我音乐排行榜有10页,获取到每一页的json数据的地址。每一页创建一个线程,共十页,创建十个线程,并调用自定义的线程内容DownLoadMusic 是我创建的继承...

2020-01-05 00:07:11 2121 3

原创 ssh框架Junit单元测试控制台正常,数据库没数据

出现的问题1、Junit单元测试代码(这里没有问题)2、 控制台出现的效果:3、数据库中的数据没有变化(这里是我之前插入的)解决方案:1、junit 单元测试事务会自动回滚。通过 @Rollback(false) 注解来关闭回滚,默认是true,事务会回滚。false时事务不会回滚,数据会写到数据库中。2、再看控制台(依旧是正确的)3、加了回滚之后,我们来看一下数据库的数据(很...

2019-12-12 23:01:07 405

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除