![](https://img-blog.csdnimg.cn/20190918135101160.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
踩坑+练习
代码练习和踩过的坑
萝卜啃土豆
暗中观察,瑟瑟发抖,兢兢业业
展开
-
java 正常写入的文件文件读取失败--序列化的坑
● 实体类的信息需要持久化,实现了接口serializable,但没有指定值private static final long serialVersionUID;在之后使用的时候文件在服务器上但即使读取不到。serializable 是一个标记,java中药序列化必须实现这个接口;不默认实现可能是为了安全由于序列化id不同已经读不到了。原创 2022-09-22 19:47:46 · 663 阅读 · 0 评论 -
mybatisplus的updateById() 更新null失败
● myabtisplus 使用updateById() 方法更新,若字段为空字符或null默认会被myabtisplus忽略,不会对数据库进行更新。原创 2022-09-22 19:44:35 · 1028 阅读 · 0 评论 -
java浮点数比较的坑
浮点数的判断—《阿里开发手册》● 基本类型不能用==判断,包装类型也不能用equals判断。● 说明:浮点数采用“尾数+阶码”的编码方式,类似于科学计数法的“有效数字+指数”的表示方式。二进制无法精准表示大部分的十进制小数。float a = 1.0f-0.9f;float b = 0.9f - 0.8f;if(a==b){} // falseFloat x = Float.ValueOf(a);Float y = Float.ValueOf(b);if(x.equals(y)){} //f原创 2021-11-29 19:55:10 · 370 阅读 · 0 评论 -
POST与PUT
Http-POST-PUT问题,devops中的标记管理遇见,更新标记的时候更新目标创建时标记描述选择空白时用createRelease()非空白用updateRelease(),深挖发现,最终一个post请求,一个put请求。创建描述空白时,查询标记的反参是没有release内容的。post与put有什么区别呢?PUT :http对URI发送一个entity,服务器在URI下如果有了一个entity,那么替换新的,并且保证幂等;若服务器没有,就新增。利用PUT提交,需要客户端提交资源全部原创 2021-11-02 20:57:18 · 375 阅读 · 0 评论 -
nexus api鉴权,auth,请求头
nexus3Apidevops二开,用到nexusAPI ,之前get获取列表没有鉴权,新客户get也需要session,网上api资料较少,官网看到curl -u admin:admin123 -X GET 'http://localhost:8081/service/rest/v1/components?repository=maven-central' ; 链接后又查了 curl 转postman的地址链接;要添加请求头属性Authorization,value为"Basic "加 “adm原创 2021-10-27 10:38:41 · 1500 阅读 · 0 评论 -
架构改Dubbo后的序列化问题,JSON 与javabean 转换问题,范型嵌套
Dubbo序列化的坑起因:因devops用到一些org.gitlab4j.api.models的一些类,但是没有实现序列化接口,sdk也不能更改。sdk的类嵌套了很多层,也不能本地开放接口。过程:暂时先转json字符串后web层转回java bean处理。选择了fastjson工具。转换:JSON.toJSONString();转回:JSON.parseObject(xxString,xx.class);问题:但是list范型转回的时候报错:java.lang.ClassCastExceptio原创 2021-10-27 10:34:59 · 559 阅读 · 0 评论 -
dubbo隐式传参,RpcContext,dubbo Session消费端问题
dubbo 隐式传参+过滤器dubbo,web(消费端)与service(提供端)rpc通信,要传递的实体类必须序列化;有着不同的上下文,web的session,service无法获取。方案:web获取当前登录人名称,传入RpcContext上下文,隐式传参到service端。通过调用拦截器拦截消费断调用方法,调用前传。因项目需要,service模块无法获取session,无法获取当前登陆账户。临时采取这种方案,将web端当前登陆用户名传递给RpcContext上下文,供service使用。先配置原创 2021-10-19 21:51:00 · 818 阅读 · 2 评论 -
Library source does not match the bytecode for class
IDEA 出现错误 :Library source does not match the bytecode for class,库源与类的字节码不匹配解决1、IDEA --file --Invalidate Caches/Restart… 清缓存不行了2、找到本地仓库,删除对应的包,重新下载编译原创 2021-10-13 17:51:43 · 852 阅读 · 0 评论 -
skipping mapperfactorybean with name xx and xx bean already defined the same name!
springboot + dubbo + mybatis 启动报‘skipping mapperfactorybean with name xx and xx bean already defined the same name!原因:配置中存在多次扫描包,导致跳过扫描。原创 2021-10-12 20:17:23 · 1570 阅读 · 0 评论 -
JavaGuid基础册子
基本程序运行.java文件(源代码)–JDK中javac编译 .class 文件–JVM–二进制机器码文件JVM类加载器首先加载字节码,然后通过解释器逐行解释执行。后面引入JIT编译器,JIT运行时编译,JIT完成第一次编译后保存对应的机器码。JAVA是编译与解释共存的语言。泛型泛型是JDK1.5引入的新特性,本质是参数化类型,既操作的数据类型被指定为一个参数。java的泛型是伪泛型,因java在编译期间,所有的泛型信息都会被擦掉,这也就是通常说的类型擦除//泛型类..转载 2021-03-22 15:56:12 · 332 阅读 · 0 评论 -
JAVA避免空指针异常(NPE)的常见技巧
equals()方法常量在前如果一个对象又可能为Null那么尽量不要直接使用他的方法private Boolean isKong(String str){ //str为空会出现NPE return str.equals("kong"); //× return "kong".equals; //√}初始化赋默认值对象初始化的时候赋默认值String str = null; //XStringUtils类StringUtils.isEmpty()..原创 2021-03-16 08:33:10 · 314 阅读 · 0 评论 -
nvm npm exit status 1:乱码
node npm nrm nvm最近要搞vue,之前装了最新的node启动报错,最后值版本问题,查阅资料后用版本管理工具搞好了。npm、nrm、nvm傻傻分不清npm:node包管理工具nrm:提供和管理npm包下载地址nvm:node的版本管理工具,可以使一台电脑安装多个不同版本的node。推荐使用nvm安装node。但是要注意nvm安装目录要放在C或者D其他的根目录,比如C:\nvm。否则会报错:exit status 1:乱码...原创 2020-07-21 16:13:07 · 6333 阅读 · 0 评论 -
java环境变量;javac不是内部或外部命令
系统:WIN10 2004jdk版本:1.8.0_191按照以往的变量设置,cmd java可Java -version 可javac不可进入bin目录,Java可,javac不可,提示:找不到命令 javac,但它确实存在于当前位置。默认情况下,Windows PowerShell 不会从当前位置加载命令 。如果信任此命令,请改为键入“.\javac”尝试.\javac可最后...原创 2020-03-25 21:16:02 · 699 阅读 · 0 评论 -
Python练习:简单的登陆注册的信息管理;模块化;密码安全判断(没有用数据库和文件)
#python3.6.2 32bit ---Skiray# 9.27#_*_coding:utf-8_*_原创 2019-10-03 18:00:40 · 362 阅读 · 0 评论 -
python小练习181103:圆周率的粗略计算;蒙特卡洛方法模拟圆周率值
圆周率数学计算方法:另一种计算方法:如图在正方形中随机点落入圆形内外的概率与圆周率有着联系,模拟大量随机计算,根据面积求出圆周率。由概率比例 = 面积比例 可得出 pi 的计算公式代码如下:#coding:utf-8#python3from random import randomfrom time import perf_countercounts = 3000*3000...原创 2018-11-03 11:55:37 · 787 阅读 · 0 评论 -
C++ 练习:std::cout 与 cout 区别
‘::’是作用域运算符使用cout时,须用std命名空间说明下面这两句,效果一样std::cout << "Input two numbers:";using namespace std;cout << "Input two numbers:";...原创 2019-10-21 23:28:50 · 3475 阅读 · 0 评论 -
Python踩坑:Python set TypeError: unhashable type: 'list'
不可哈希(unhashable):就是指其可变,如列表、字典等,都能原地进行修改。可哈希(hashable):不可变,如字符串、元组那样,不能原地修改。利用set()和{}建立集合时,要求集合中的元素必须是可哈希(hsshable)的a ={(1,2)} #不报错b={[1,2]} #报错...原创 2019-10-14 08:53:51 · 992 阅读 · 0 评论 -
MySQL踩坑 --Can't connect to MySQL server on localhost (10061)解决方法
装了个mysql5.6 遇见了几个坑:装完设置环境变量登陆:mysql -u root -p 默认密码空,结果提示“Can’t connect to MySQL server on localhost (10061)” 原因:mysql服务未启动。启动服务:可以使用命令net start mysql或者手动进入服务找到mysql然后启动,结果命令提示服务无效,收到进入服务找不到mysql…...原创 2018-10-16 21:49:34 · 314 阅读 · 0 评论 -
Python笔记:181024 关于Python赋值
测试:if __name__ = "__main__": XXX关于py变量:a = 1b = 2a,b = b,aprint(a)#a = 2,b = 1变量不用声明类型,py中a = 1表示a指向1的内存地址的内容,1存放在内存的某个地址空间中,所以同样可以将函数等赋值给a。...原创 2018-10-24 16:36:20 · 167 阅读 · 0 评论 -
python练习181031:python3 input()实现一句输入多个值
原理:split()如:a,b =input('输入a,b空格隔开:').split()#此时a,b为str型a,b =map(int,input('输入a,b空格隔开:').split())#此时a,b为int型input()获取的是整行的字符串,用split()以分隔符空格切片以下摘自菜鸟教程关于map()map() 函数语法:map(function, iterable...原创 2018-10-31 21:55:27 · 16753 阅读 · 0 评论 -
python笔记181103:random函数
标准库random伪随机数,不是真正的随机数采用梅森旋转算法生成(伪)随机序列random库共有两类,八个函数:基本随机数函数: seed(),random()扩展随机数函数: randit(),getrandbits(),uniform(),randrange(), choice(),shuffle()基本随机数函数:随机数种子:seed(10)—&amp;gt;算法—&amp;gt;产...原创 2018-11-03 11:16:28 · 211 阅读 · 0 评论 -
Hexo搭建博客错误:hexo d *** Please tell me who you are. Run git config --global user.email "you
*** Please tell me who you are.Rungit config --global user.email "you@example.com"git config --global user.name “Your Name”to set your account’s default identity.Omit --global to set the identity...原创 2018-12-27 22:22:38 · 2700 阅读 · 7 评论 -
py踩坑:函数内部自加 UnboundLocalError: local variable 'count' referenced before assignment
pyhton 错误 UnboundLocalError: local variable ‘count’ referenced before assignment再函数内运行 += 运算会出现这种错误如下:count = 0def fun(): if count>= 10: return None print('lala') count +...原创 2019-10-09 11:14:41 · 1321 阅读 · 0 评论