Java
Error和Exception
什么是异常 实际工作中,遇到的情况不可能是非常完美的。比如:你写的某个模块,用户输入不一定符合你的要求,你的程序要打开某个文件,这个文件可能不存在或者文件格式不对,你要读取数据库的数据,数据可能是空的等。我们的程序在跑着,内存或硬盘可能满了。等等。 软件程序在运行过程中,非常可能遇到刚刚提到的这些异常问题,我们叫异常,英文是:Exception,意思是例外。这些,例外情况,或者叫异常,怎么让我们写
自定义异常及经验小结
自定义异常 使用Java内置的异常类可以描述在编程时出现的大部分异常情况。除此之外,用户还可以自定义异常。用户自定义异常类,只需继承Exception类即可。 在程序中使用自定义异常类,大体可分为以下几个步骤: 创建自定义异常类。 在方法中通过throw关键字抛出异常对象。 如果在当前抛出异常的方法中处理异常,可以使用try-catch语句捕获并处理;否则在方法的声明处通过throws
Spring Boot3 系列:Spring Boot3 跨域配置 Cors
目录什么是CORS?Spring Boot 如何配置CORS?前端代码注解配置全局配置过滤器配置注意事项 什么是CORS? CORS,全称是“跨源资源共享”(Cross-Origin Resource Sharing),是一种Web应用程序的安全机制,用于控制不同源的资源之间的交互。 在Web应用程序中,CORS定义了一种机制,通过该机制,浏览器能够限制哪些外部网页可以访问来自不同源的资源。源由协
markdown文档的一些特殊用法
markdown中使用表情符号 从 表情符号 Unicode 列表 获取到一个表情的Unicode编码,如😁的编码为U+1F601,去掉U+,加上&#x的前缀和;的后缀,最终结果为 markdown中使用视频 markdown 是支持 HTML 标签的,所以可以使用 HTML5的 video 标签或者 iframe 标签 video 标签 controls表示显示控件,如播放按钮、音量
windows下打包go项目放在linux上部署
1.打开命令提示符或终端,并导航到包含main.go的目录。 2.使用以下命令进行交叉编译: GOOS=linux GOARCH=amd64 go build -o myprogram 这将生成一个名为myprogram的可执行文件,该文件是为Linux上的AMD64架构编译的。 5. 现在,你可以将生成的myprogram文件复制到Linux系统上运行。 6. 在Linux上运
Promise超详细源码解读
说到promise,相信大家在日常开发中都经常使用到,它是我们异步操作中必不可少的一部分,可以让代码看起来变得更好理解; 我曾在技术社区看过许多关于promise底层原理的文章,大概原理明白,这次,我准备系统的分析实现源码并记录下来,本文将一行行代码去分析最后附加流程图和总结,希望这能对你有帮助; promise的实现库有这么多,接下来我们以github的promise ployfill为例,&
存入cookie中的数据变成了[object%20Object] 原因及处理
原因 在JavaScript中,当你尝试将一个对象直接存储到cookie中时,浏览器会将对象调用toString方法将其转换为字符串。对于大多数JavaScript内置对象,toString方法会将对象转换为字符串"[object Object]"。因此,当你尝试将一个对象存储到cookie中时,实际上是将"[object Object]"这个字符串存储到了cookie中。 [object%20O
[JAVA] Java泛型实践
Java泛型实践 泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传入具体的类型(类型实参)。 泛型的本质是为了参数化类型(在不创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类
正则表达式复习四——断言
断言 正则表达式的断言是一种特殊的模式匹配技术,用于在匹配时对字符串进行条件性的预测。断言不会消耗输入字符串,仅仅是在匹配的位置上进行条件判断。断言分为正向断言和负向断言,分别用于描述匹配位置前面或后面的条件。 正则表达式的断言有 4 种形式: (?=pattern) -- 零宽正向先行断言:匹配位置之前有指定的条件。 (?!pattern) -- 零宽负向先行断言:匹配位置之前没有指定的条件。
作为所有类的顶层父类,没想到Object的魔力如此之大!
写在开头 在上一篇博文中我们提到了Java面向对象的四大特性,其中谈及“抽象”特性时做了一个引子,引出今天的主人公Object,作为所有类的顶级父类,Object被视为是James.Gosling的哲学思考,它高度概括了事务的自然与社会行为。 源码分析 跟进Object类的源码中我们可以看到,类的注释中对它做了一个总结性的注释。 在Object的内部主要提供了这样的11种方法,大家可以在源码中一
学习JavaDay02
常用的DOS命令 盘符切换E:英文冒号 查看当前目录下的所有文件dir 切换目录 cd change directory cd.. 清理屏幕 cls 查看电脑IP ipconfig 打开应用 calc mspaint notepad 文件操作 md 目录名 rd 目录名 cd> 文件名 del 文件名 HelloWorld 新建文件夹,存放代码 新建一个Java文件 文件后缀.jav
学习Java笔记 - Day2
Java特性优势 简单性:基于C,纯净版的C++ 面向对象:一切皆对象 可移植性:Write once, run anywhere - 跨平台 高性能:及时编译,效率 分布式:为网络分布式环境设计,可处理TCP/IP协议,通过URL,访问网络资源,相当于本地资源,简单。支持远程的方法调用。 动态性:反射机制,有了动态性。 多线程:看视频,同时听音乐... 如何卸载 查找安装位置,在我的电脑
基于AOP的多数据源事务的实现
1 前言 在日常开发中,一个方法中可能涉及到多个数据库的写入操作,这个时候再用Spring tx为我们提供的@Transactional注解就显得有些力不从心了,此时可以用第三方框架atomikos,atomikos是一个非常有名的分布式事务开源框架. 它有JTA/XA规范的实现, 也有TCC机制的实现方案, 前者是免费开源的, 后者是商业付费版的。本文对atomikos框架不做讨论,主要讨论如何
java visualvm报cannot find java 1.8 or higher
visualvm - 用于分析pid进程内存 下载地址 - https://visualvm.github.io/download.html 使用参考地址 - https://docs.oracle.com/javase/8/docs/technotes/guides/visualvm/applications_window.html 故障 canno
一张图总结架构设计的40个黄金法则
文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录 博客园版 为您奉上珍贵的学习资源 : 免费赠送 :《尼恩Java面试宝典》 持续更新+ 史上最全 + 面试必备 2000页+ 面试必备 + 大厂必备 +涨薪必备 免费赠送 :《尼恩技术圣经+高并发系列PDF》 ,帮你 实现技术自由,完成职业升级, 薪酬猛涨!加尼恩免费领 免费赠送 经典图书:《Java高并发核心编程(卷1)加强版》 面试
JVM 8 调优指南:如何进行JVM调优,JVM调优参数有哪些
这篇文章将详细介绍如何进行JVM 8调优,包括JVM 8调优参数及其应用。此外,我将提供12个实用的代码示例,每个示例都会结合JVM启动参数和Java代码。 本文已收录于,我的技术网站 ddkk.com,有大厂完整面经,工作技术,架构师成长之路,等经验分享 JVM 8的优化指南 JVM调优简介 JVM调优是指通过调整Java虚拟机的配置来提升Java应用程序的性能。这包括优化堆内存设置、选择合适的
SparkSQL in Java
参考地址:Starting Point: SparkSession 1.新建Maven项目,POM引入依赖 2.项目添加Scala依赖库 3.在资源目录添加日志配置文件log4j.properties 4.添加相关测试数据文件 5.添加相关代码文件