渣猫儿咪咪
码龄7年
关注
提问 私信
  • 博客:21,574
    21,574
    总访问量
  • 33
    原创
  • 1,054,502
    排名
  • 4
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:四川省
  • 加入CSDN时间: 2017-10-26
博客简介:

water2017的博客

查看详细资料
个人成就
  • 获得3次点赞
  • 内容获得5次评论
  • 获得28次收藏
创作历程
  • 14篇
    2021年
  • 14篇
    2020年
  • 5篇
    2019年
成就勋章
TA的专栏
  • 项目管理
  • 微服务
    2篇
  • 数据库
    1篇
  • maven
    2篇
  • 学习
  • Java
    27篇
兴趣领域 设置
  • 编程语言
    java
  • 后端
    springspring boot架构分布式
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

182人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

String.valueOf(null) 产生的 Bug: 数据库中存储了 “null“ 字符串

最近出现一个莫名奇妙的问题: 数据库中存储了 "null" 字符串……用的 SpringCloud 远程调用接口, 传参为 null, 接到的参数值: “null”,导致上文的bug.当时只能单独写了一个方法处理 “null”,对其进行了转换。原因分析:Java String 类源码: /** * Returns the string representation of the {@code Object} argument. * * @par
原创
发布博客 2021.12.28 ·
812 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

Java 中全局变量的使用思考

最近看到一段代码,做报表输出功能。几乎是严格按照封装的要求编写,每个方法很小,没有重复代码。 编写时作者还是花费了心思,由于本身业务比较复杂,能够拆成那个样子,已经很优秀。有一个非常突出的特点: 运用全局变量(属性)封装数据, 从头到位是在对 变量A 进行操作, 最后返回的结果集 变量B。那么是在什么时候对 变量B 进行的赋值呢? 为了找到这个位置,花费了相当多的时间。不知作者是处于什么样的考虑, 采用全局变量进行操作,只在此对全局变量进行思考。使用场景:常运用于不会变化的值,仅限于使用
原创
发布博客 2021.12.28 ·
1407 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Java 标签语法,类似 goto

goto 是 Java 的保留关键字,在 Java 中没有 goto.在 C++ 语法中,goto 是一个控制流程的关键字,用于跳转到指定的程序位置。很方便,导致程序的可读性和可分析性变弱,Java 放弃了该方式。goto 实际上是一种标签语法,在程序的某个位置贴上标签,下一次见到这个标签,直接跳转。前端代码有这种标签语句,实现页面的上下跳转。Java 有自己的标签语法,用于控制多层循环。见如下代码: public static void labelWhile ()
原创
发布博客 2021.08.18 ·
536 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

为什么 Java 中 可以直接用 int 变量存储 char 数据类型

初学 Java 时, 老师提出了一个很有意思的现象: //基础数据类型之间进行转换 int number = 68; char chart = (char)number; System.out.println("number = " + number); System.out.println("chart = " + chart); char chart_2 = 'E'; int numb.
原创
发布博客 2021.08.10 ·
759 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Objects 中的实用方法

Objects 类, JDK1.7 版本提供,提供静态方法操纵对象。常用方法:Objects.equals(Object a, Object b); // 比较两个对象是否相等,只比较引用地址。Objects.deepEquals(Object a, Object b); // 当 a b 都是数组时, 会深度比较每一个对象的每一个值。 否则,只会比较两个对象的引用地址。Objects.hashCode(Object o); //返回一个非空对象的哈希值。Objects...
原创
发布博客 2021.08.09 ·
615 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

Java 项目实现 excel 导入导出的工具 jar 包整理

1. 阿里巴巴EasyExcel工具之前公司的项目用的就是这个工具,方便好用。使用介绍:https://www.cnblogs.com/zhucj-java/p/12017940.html2.
原创
发布博客 2021.06.02 ·
523 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

微服务,分布式,Dubbo,SpringClound 的联系与区别

1. 微服务和分布式微服务:是一套理论,论述了项目开发过程中,将大项目拆分成小项目独立开发和部署的理论,论述了发展过程,特点,优点,缺点等。分布式:是在实际工作中实现来了这套理论后的称呼,实际上指的还是一个东西。Dubbo,SpringClound:是具体实现微服务的代码框架,根据理论进行实现的。2.Dubbo 和 SpringClound 的联系与区别联系:二者都是实现 微服务理论 的架构。区别:(1)Dubbo 是 中国的 Alibaba 研发团队开发的, Sprin..
原创
发布博客 2021.03.18 ·
752 阅读 ·
0 点赞 ·
1 评论 ·
2 收藏

对 dubbo 的理解

1. 起源dubbo 是 阿里巴巴团队开发的,用于解决分布式项目的问题。现在已经捐给 Apach 组织进行维护。在国内使用频率比较高。可能是因为本国人员开发的,熟悉的人多,中文文档完善且优质以及框架本身比较简洁。2. 特点(1)框架整体简洁,只实现了微服务的远程调用,其他功能的实现需要自行组装,对开发人员的要求较高;(2)可以和 Spring 全家桶进行很和谐的整合;(3)配置简洁,使用过程中不复杂,配置完成后,注解即可完成服务注册;(4)稳定性较高,默认的注册中心是 .
原创
发布博客 2021.03.11 ·
223 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

HashSet 与 HashMap 的关系

HashSet 底层是通过 HashMap 实现的。HashMap 的键不能重复,HashSet 只取用了 HashMap 的键,用 HashMap 的 键存储 HashSet 的值。妙! /** * Constructs a new, empty set; the backing <tt>HashMap</tt> instance has * default initial capacity (16) and load factor (0
原创
发布博客 2021.03.09 ·
175 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Redis 理论知识整理

1. redis 的历史;Redis 是 2010 年发布的一个非关系型数据库(no sql),以 键值对的方式存储将数据。2. 特点(1) 存储,读写速度极快;(2)性能稳定;(3)支持的数据类型多:String,List, Hash, Set, ZSet;(4)支持的客户端语言种类较多: java, python, C, C++, PHP(5)支持 2 种持久化方式: RDB 和 AOF;3. 事务Redis 的命令执行是自带锁的,执行成功,都执行成功, 执行失...
原创
发布博客 2021.03.08 ·
140 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

equals() 和 hashcode() 的关系和同步重写的原因

1. 二者的关系:Java 存储对象时,生成了一张 Hash 表,保存了 对象的 哈希值和地址的对应关系。保存每一个对象 都需要 使用 hashcode() 和 equal() 这两个方法。hashcode() 的返回值:获取 对象链表存储的位置(最底下一排数组),获取对象存储所在的链表;equals(): 查找链表中是否有该对象,没有则将该对象插入链表, 有则不存储/覆盖;哈希表大概长这个样子:2. 同步重写的原因:官方文档要求:如果根据 equals(Object)
原创
发布博客 2021.03.05 ·
154 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux 部署之:源码,GitLab,Jenkins,Tomcat 如何实现 一键部署 的?

IDEA 是一个强大的编辑器,将工作中有关的工具都进行了集成,本地部署方便快捷。源码,GitLab,Jenkins,Tomcat 在不同的服务器, 是如何实现 一键部署 的?四者关联:(1)源码 存储到 GitLab;(2)GitLab 通过 插件 与 Jenkins 进行关联, 使 jenkins 可以从 GitLab 上获取源码到本地; GitLab 对获取到的源码进行打包,整理成可以直接部署的 jar 包 或者 war 包;(3)GitLab 将打包好...
原创
发布博客 2021.03.03 ·
148 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

jekins 集成 gitLab 进行部署

1.jekins 打包 找不到程序包;maven 的 settings.xml 配置文件中的 仓库路径配置:<localRepository>D:\data\maven_repository</localRepository> -----> <localRepository>maven_repository</localRepository>2.springboot mvn install Failed to execute...
原创
发布博客 2021.03.03 ·
176 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

spring-data-jpa 自定义查询

spring data jpa 内部封装了引用了 hibernate 的接口。使用时,实际上使用的是 hibernate 的相关方法, 自定义查询也是按照 hibernate 进行的/** * 整合 jpa 的接口 */public interface TeacherRepository extends JpaRepository<Teacher, Integer> { /** * 自定义查询方法 * 根据主键查询 * * .
原创
发布博客 2021.01.14 ·
162 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

dubbo 项目搭建过程中出现的问题

1.Unabletofindadefaultprovider集成dubbo与 restful 时产生的,原因: 缺少一个 herbinate jar包;解决: pom 文件引入<dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <version>4.2.0...
原创
发布博客 2020.12.18 ·
386 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

分布式项目的个人理解

分布式:就是将原来的一个项目,切割成多个小项目, 将小项目打成 jar 包;使用时:小项目之间互相引用(jar 包的形式), 功能上组装成原来的那个完整的项目。部署时:各个小项目可以同时部署在不同的服务器,一台宕机,短期不会影响整个完整项目的运行。且给维护人员预留时间进行修复。配置文件:在各小项目的 resourses 中, 会重组,不会因为分项目切割而调不到资源。所以说,应了某人的一句话:分布式项目难在那套治理体系,那是精髓,而不是项目本身。...
原创
发布博客 2020.12.16 ·
2590 阅读 ·
0 点赞 ·
1 评论 ·
3 收藏

nexus 私服配置, 子项目无法继承parent项目pom文件的问题

本地 maven 配置了远程nexus私服, 在本地创建 parent 项目, 子项目无法找到父项目的 pom 文档。子项目配置:<!-- 父节点依赖--><parent> <groupId>com.mint</groupId> <artifactId>mint-parent</artifactId> <version>1.0-RELEASE</version> <!--
原创
发布博客 2020.12.16 ·
1212 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

nexus 搭建 maven 私有库, 无法上传的原因之一

运用 nexus 搭建 maven 私有库, 无法上传的原因:前提: nexus 和本地 maven setting 文件已经配置完成。pom 文件中:<version>1.0-RELEASE</version> 的版本类型必须与<repository> <id>nexus-releases</id> <name>maven-releases</name> <url>http:/
原创
发布博客 2020.12.14 ·
889 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java反射探索(五): 运用反射, 书写一个对象复制方法

比较简陋, 肯定有逻辑漏洞, 请见谅哈!package devi.mint.reflect;import devi.mint.entity.UserEntity;import java.lang.reflect.Field;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;/** * 运用反射复制对象 * * 前提: 在已有一个对象的情况下, 复制一个一模一样.
原创
发布博客 2020.08.20 ·
279 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java反射探索(四): 生成和操作对象

反射都是通过类模板对对象进行操作的, 此处可以看到 第一篇笔记中说的: 先找到模块, 然后根据对象进行操作。测试前, 请自行创建 UserEntity 对象;package devi.mint.reflect;import devi.mint.entity.UserEntity;import java.lang.reflect.Constructor;import java.lang.reflect.Field;import java.lang.reflect.InvocationTa.
原创
发布博客 2020.08.20 ·
162 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多