项目实践问题处理指南
文章平均质量分 84
项目遇到了很多大大小小问题,记述下来,给自己一个提醒,给疑惑的人,一些帮助,但行好事,莫问前程。
夜风_BLOG
这个作者很懒,什么都没留下…
展开
-
open-local部署之后k8s的kube-scheduler挂掉问题
open-local部署本地化存储影响k8s调度原创 2022-12-27 15:41:24 · 915 阅读 · 3 评论 -
跨域问题以及经过网关二次转发重复跨域
跨域&重复跨域问题处理原创 2022-09-10 18:18:58 · 737 阅读 · 0 评论 -
java下载xls填充下拉选动态数据
1下载模版时,平台类目需要填充动态数据也就是平台维护的类目2创建一个sheet,命名数据A,之后将数据A隐藏3设置数据有效性,下拉选和数据A(sheet)关联备注:如果不是动态数据,可以直接设置数据有效性,忽略第4步4部分实现代码如下:public String exportTemplate() { //根据店获取平台类目 ContractCateQueryRequest cateQueryRequest = new ContractCateQ原创 2020-11-06 16:27:23 · 365 阅读 · 1 评论 -
SpringCloud Stream MQ生产和消费同应用造成的同步问题
我们项目统计模块导出的时候为了达到异步的效果使用了mq来解决,可是producer和consumer是同个应用也就是都是处在一个应用中,之前因为数据少就没有注意异步的效果,改造之后我们模拟了67w的数据量来做压力测试,发现点击导出之后界面一直处于等待状态不是直接返回前端的,同步了?说之前也遇到过这种状态,重新启动下mq服务就行了,感觉不太像,所以特意修改了下消费端的代码来测试。代码如下发现确实是同步,一直卡在消费端,等到程序完成前端才有返回,发现确实是这个问题加载首先我们在springb.原创 2020-11-06 15:34:38 · 1209 阅读 · 2 评论 -
枚举的应用
枚举的应用,在项目重应该是很常见的。我们项目中用到的是最简单的枚举,代码如下:package com.wanmi.sbc.common.enums;import com.fasterxml.jackson.annotation.JsonCreator;import com.fasterxml.jackson.annotation.JsonValue;import com.wa...原创 2019-12-05 17:59:39 · 480 阅读 · 0 评论 -
分布式锁的简单理解
分布式锁场景一同一个应用用部署在多机器,用于支撑高并发访问以下代码有什么问题?@Transactionalpublic boolean doOrder(Integer productId , Integer buySize ) { //获取当前的产品库存数量 Product product = mapper.selectByPrimaryKey(id); ...原创 2019-11-30 10:37:41 · 528 阅读 · 0 评论 -
Access denied for user 'root'@'10.0.1.247' (using password:YES),客户端能连接上mysql,但是springboot连接不上mysql.
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up. at sun.reflect.NativeConstructorAccessor...原创 2019-11-29 18:21:13 · 1748 阅读 · 1 评论 -
Response对象的OutputStream流write之后,生成的图片或者文件在页面没有显示出来
看着各位大佬写的博客,质量非常高,很羡慕,人嘛,不分贵贱,博文也一样,大佬们写他们擅长牛逼的一块,那我就把一些开发中小的问题补充上,大佬带高手玩,那么我就带小白玩,言归正传,第一次实在项目中写生成二维码的接口,明明已经生成流写到对象里,为什么偏偏在页面上没有显示出来,第二次在项目写下载模板的接口,也是明明流已经写了。为什么在页面没有任何反应,明明请求状态是200,先说解决...原创 2019-11-15 08:25:43 · 5985 阅读 · 0 评论 -
springboot项目jar包启动脚本
当工具用习惯了。也就懒的去关心底层的东西了。项目部署的时候,用习惯了jenkins也就不关心运维写的脚本了。但是当工具出问题,那就要从最基础的脚本来部署项目。脚本我也不太懂,在这里只是与大家一起分享启动和关闭的两个脚本,大神请绕路。 注:springboot项目,jar包部署,main类启动项目。脚本有很多,只要懂的原理,都能写出来,仅供参考,没有注释,相关标签知识...原创 2019-10-29 19:42:12 · 776 阅读 · 0 评论 -
JPA 一对多单向关联和双向关联(没有外键的情况)
假设我有两个表,一个机构表A,一个机构详情表B,表A为主表一的一方,表B为维护表为多的一方,在表B中没有外键,但会有表A主键字段的冗余记录,1jpa一对多单向关联的设置class A{/** * A表id */@Id@GeneratedValue@Column(name = "a_id")private Long aId;/** * B集合 */@OneTo...原创 2019-09-25 19:51:29 · 2798 阅读 · 0 评论 -
jdk7和jdk8版本的HashMap比较
1.HashMap在Java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有数据结构都可以用这两个基本结构来构造的,HashMap也不例外。HashMap实际上是一个“链表散列”的数据结构,即数组和链表的结构.HashMap存储着Entry(hash, key, value, next)对象。2工作原理put函数大致...原创 2019-06-19 12:00:32 · 1704 阅读 · 0 评论 -
各种编码格式的比较
各种编码格式都可以对中文进行处理,GB2312和GBK编码规则类似,差别在于GBK存储汉字的范围更大一些,可以处理几乎全部的汉字,所以用GB2312编码的,完全可以用GBK去解码,完美解码。从这一点上看GBK兼容GB2312。所以GB2312和GBK选择,我选择GBK。UTF-16与UTF-8都是处理unicode编码,他们的编码规则不太相同,相对来说前者的编码效率高。字符到字节的转化规则更简单,...原创 2015-12-31 10:46:51 · 7989 阅读 · 3 评论 -
JVM内存管理
Java程序实际上是把内存控制的权力交给了Java虚拟机,一旦出现内存泄漏和溢出方面的问题,如果不了解虚拟机是怎样使用内存的,那排查错误将会成为一项异常艰难的工作。而且了解了Java的内存管理,有助于优化JVM,从而使得自己的应用获得最佳的性能体验。所以还等什么,赶紧跟着我来一起学习这方面的知识吧~Java内存管理分为两个方面:内存分配和垃圾回收,下面我们一一的来看一下。Jvm定义了5转载 2016-06-07 10:31:17 · 381 阅读 · 0 评论 -
Ie浏览器请求400错误,谷歌火狐等浏览器正常请求.
做项目的时候,遇到一个小的问题.一个location.href="请求的url"在其它浏览器上是可以正常请求的.但是在ie浏览器上确出现奇怪的http请求400错误,我们先来对于http400状态的描述:当用户在打开网页时,返回给用户界面带有400提示符的页面。其含义是你访问的页面域名不存在或者请求错误,自己的本地,肯定没问题.那就是请求错误了.几经尝试发现是参数带中文的会出现此种情况,没带中...原创 2017-06-16 09:43:29 · 17330 阅读 · 6 评论 -
Java线程中断的理解和正确使用
Java线程中断的理解和正确使用1、为什么废弃Thread的stop函数?对于有多线程开发经验的开发者,应该大多数在开发过程中都遇到过这样的需求,就是在某种情况下,希望立即停止一个线程。比如:做Android APP开发,当打开一个界面时,需要开启线程请求网络获取界面的数据,但有时候由于网络特别慢,用户没有耐心等待数据获取完成就将界面关闭,此时就应该立即停止线程任务,不然一般会原创 2018-02-02 14:26:46 · 872 阅读 · 0 评论 -
transient的使用与总结
1. transient作用我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只要这个类实现了Serilizable接口,这个类的所有属性和方法都会自动序列化。然而在实际开发过程中,我们常常会遇到这样的问题,这个类的有些属性需要序列化,而其他属性不需要被序列化,打个比方,如果原创 2018-02-02 14:49:55 · 1508 阅读 · 0 评论 -
虚拟机内存分区简版
1 程序计数器线程私有。是一块较小的内存,是当前线程所执行的字节码的行号指示器。是Java虚拟机规范中唯一没有规定OOM(OutOfMemoryError)的区域。如果线程执行的是非native方法,则程序计数器中保存的是当前需要执行的指令的地址;如果线程执行的是native方法,则程序计数器中的值是undefined。 2 Java栈(Java虚拟机栈) 线程私有。java栈和线程...原创 2018-02-12 16:16:56 · 275 阅读 · 0 评论 -
BeanCopy几种实现的比较
Bean复制的几种框架性能比较Apache BeanUtils、PropertyUtils,Spring BeanUtils,Cglib BeanCopier) 一个FromBean和一个ToBean,两个的代码基本上一样,除了类名称不一样,所以只是贴出来了一份。 public class FromBean { private String name;...原创 2019-02-27 14:11:20 · 17599 阅读 · 1 评论 -
JAVA中DNS缓存设置
我们上网的原点就是打开浏览器,在上方地址栏输入网址的那一刻,这个回车按了之后,发生了很多事情。首先,计算机只懂0和1,也就是说人类的字母网址计算机是不懂的,它只认识IP地址,如果是IPV4那就是4组8位的二进制数字。为了人类方便,需要有一个把网址翻译成IP地址的服务,就是DNS。其工作原理如图这是一个高度简略的示意图,实际上DNS整个获取过程是被层层缓存的,一个DNS的获取并不...原创 2019-06-19 11:36:08 · 6769 阅读 · 0 评论 -
Base64编码
开发者对Base64编码肯定很熟悉,是否对它有很清晰的认识就不一定了。实际 上Base64已经简单到不能再简单了,如果对它的理解还是模棱两可实在不应该。大概介绍一下Base64的相关内容,花几分钟时间就可以彻底理解它。文章下边贴了一个Base64的编解码器,方便阅读文章的同时来实验。 一. Base64编码由来 为什么会有Base64编码呢?因为有些网络传送渠道并不支持所有的字节,例如...原创 2016-01-06 16:04:59 · 493 阅读 · 0 评论