Java开发
以理论基础为导向,进行实践验证
梦 * 蝶
不敢直面困难,怎能迎接挑战!
展开
-
【Java】生成 .json格式文件工具类
package com.glodon.kgb.utils.json;import java.io.File;import java.io.FileOutputStream;import java.io.OutputStreamWriter;import java.io.Writer;/** * @Author; * @Description:生成.json格式文件 * @Date:Created in 15:39 2020/12/15 * @Modified By: */publi原创 2021-01-20 14:40:26 · 559 阅读 · 12 评论 -
【java】File文件类型转为MultipartFile文件类型工具类
package com.glodon.kgb.utils.multipartfile;import java.io.*;/** * @Author; * @Description: * @Date:Created in 18:11 2020/12/15 * @Modified By: */public class File2byteUtil { public static byte[] File2byte(File tradeFile){ byte[] buffe原创 2021-01-20 14:24:34 · 831 阅读 · 9 评论 -
【Java】阿里云oss上传文件工具类【亲测有效】
前置条件:已有accessKeyId、accessKeySecret等信息。阿里云oss授权方式可自行百度。配置信息:config.properties 配置文件信息,value值根据自己实际情况补充完整# Aliyun Configaliyun.oss.accessKeyId=aliyun.oss.accessKeySecret=# Aliyun OSS Configaliyun.oss.endpoint=aliyun.oss.bucketName=aliyun.oss.fo.原创 2021-01-20 11:46:09 · 2448 阅读 · 11 评论 -
什么是hardcode编码
所谓hardcode,即硬编码:1、把一个本来应该(可以)写到配置信息中的信息直接在程序代码中写死了;2、程序代码中出现了魔法值。对于情况1,例如我们写了一个收发邮件的程序,用户名、密码,服务器地址等这些配置信息写成外部配置,在程序代码中读取配置信息;但是如果我们直接写死在程序代码中,每次改信息时都需要重新编译,且如果多处程序代码中出现了这种配置信息,修改起来也比较麻烦…这种程序不易于维护。大部分程序语言里,可以将一个固定数值定义为一个标记,然后用这个特殊标记来取代变量名称。当标记名称改变时,变.原创 2021-01-20 10:59:43 · 7580 阅读 · 26 评论 -
一文教你json字符串与JavaBean对象如何相互转换
工作中经常会遇到在复杂的业务场景中,将数据持久化时某个字段存储的是json字符串,取出数据进行操作时,不能直接对json字符串进行操作,能操作的是JavaBean对象。或者调用其他的服务(Java应用服务、python服务等),接收到的结果为json字符串,在对结果进行处理时,不能直接操作,需要将其转化为JavaBean对象。…所以,在这些情况下,就需要将json字符串、json对象与JavaBean对象进行转化,来实现需要的操作。实现方式如下:pom文件中导入依赖: <.原创 2021-01-10 21:33:31 · 2436 阅读 · 20 评论 -
InterlliJ Debug启动:method breakpoints may dramatically show down debugging
问题:使用idea在DEBUG的时候出现Method breakpoints may dramatically slow down debugging 问题。如下图:原因分析:根据提示信息判断,代码中的断点可能是打在方法上面了,导致在某个断点卡住了,程序一直启动不起来。重启服务器和重启idea都没有任何作用。。解决方式:打开Breakpoints面板看看,(快捷键:Ctrl - Shift -F8 )将选择框中的“√”去掉,点击右下角Done。再次启动程序即可。...原创 2020-12-12 17:42:24 · 1179 阅读 · 10 评论 -
使用Java8新特性(stream流、Lambda表达式)实现多个List 的笛卡尔乘积 返回需要的List<JavaBean>
需求分析:有两个Long类型的集合 :List<Long> tagsIds;List<Long> attributesIds;现在需要将这两个Long类型的集合进行组合,利用笛卡尔乘积的方式得到组合后的结果,并需要将得到的笛卡尔结果转换为Java中自定义的bean对象。例如:tagsIds=[1,2,3];attributesIds=[4,5]笛卡尔积结果为:[[1,4],[2,4],[3,4],[1,5],[2,5],[3,5]]最终转为Javabean对.原创 2020-12-12 16:42:29 · 2338 阅读 · 11 评论 -
java.util.Date与 java.sql.Date两个包下Date的区别与联系
区别:原创 2020-12-05 16:53:39 · 1241 阅读 · 8 评论 -
MySQL数据类型和Java数据类型对应关系表
MySql 数据类型和 Java 数据类型之间的转换是很灵活的。一般来讲,任何 MySql 数据类型都可以被转换为一个 java.lang.String,任何 MySql 数字类型都可以被转换为任何一种 Java 数字类型(当然这样也可能出一些四舍五入,溢出,精度丢失之类的问题)。转换表ResultSet.getObject() 方法遵循 JDBC 规范对 MySql 和 Java 的类型进行转换。ResultSet.getObject() 对 MySql 类型和 Java 类型转换表 .原创 2020-11-28 17:37:49 · 527 阅读 · 6 评论 -
Mysql中tinyint与Java数据类型对应关系
Mysql中,如果使用tinyint(1)来设置表中字段的数据类型,可以存储0和1;在Java中使用Boolean来接收,0映射为false,1映射为true。Mysql中,如果使用tinyint来设置字段的数据类型,映射到Java数据类型中,不仅可以使用上面的Boolean类型来接收,也可以使用Java中int类型来接收。在MySQL中存储的tinyint(1)类型数据,不仅可以存储0和1,任意一个一位自然数都可以(0-9)。不过,当这样(tinyint(1))使用时,0映射为Java中的Boolea.原创 2020-11-28 17:00:20 · 35529 阅读 · 9 评论 -
MySQL中bit与Java数据类型对应关系
MySQL中使用bit存储数据,含义只能表示0或1,bit称为位数据类型;且不能用于计算。存储消耗<=1个字节【bit类型占用的空间与bit类型的列所在表的位置有关,有些情况下bit占用了一个字节,有些情况下bit实际占用了几个位,不足一个字节】。 bit与Java中的Boolean类型相对应,0表示false,1表示true。一般我们会使用bit(M)表示使用几位数据。在实际业务中,更常用的是使用bit(1),用1位来表示0或1,映射到Java中的数据类型对应的就是false或true。如..原创 2020-11-28 11:23:55 · 9782 阅读 · 3 评论 -
Mysql中Bigint与Java数据类型对应关系
MySQL中,有符号类型 Bigint(20)的取值范围为-9223372036854775808~9223372036854775807,与Java.lang.Long的取值范围完全一致,mybatis/mybatis-plus会将 Bigint(20)映射为Long类型。MySQL中,无符号类型Bigint(20) unsigned的取值范围是0 ~ 18446744073709551615,其中有一半的数据超出了Java中Long类型的取值范围,mybatis/mybatis-plus会将 Big.原创 2020-11-27 22:32:53 · 20340 阅读 · 16 评论 -
JDK、JRE、JVM到底是什么
JDK:JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK)。在JDK的安装目录下有一个jre目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib合起来就称为jre。【注:此目录结构为使用IDEA打开后的】JRE:JRE(Java Runtime Environment,Java运行环境),包含JVM标准实现及Java核心类库。JRE是Java运行环境,并不是一个开发环境,原创 2020-05-29 15:00:03 · 1213 阅读 · 6 评论 -
Java发展史
Java语言的诞生具有一定的戏剧性,它并不是经过精心的策划、制作,最后产生的划时代产品,从某种角度来看,java语言的诞生完全是一种误会。这又是怎么说呢?1990年年末,Sun公司预料嵌入式系统将在未来家用电器领域大显身手。于是Sun公司成立了一个由James Gosling领导的“Green计划 ”,准备为下一代智能家电(电视机、微波炉、电话)编写一个通用控制系统。该团队最初考虑使用C++语言,但是很多成员包括Sun的首席科学家Bill Joy,发现C++和可用的API在某些方面存在...原创 2020-05-21 13:39:48 · 536 阅读 · 2 评论 -
Java开发代码规范之编程规约---命名风格
前言 一个软件生命周期中,从可行性研究分析、计划到需求分析,再到软件设计、编码实现、测试,最后交付使用,运行维护过程中,维护过程占据了很大的比例,一个软件的生命周期中,很难保证自始至终都由最初的开发人员来维护。作为一个开发人员,他可能会把自己手头上的工作转交给其他人,也可能会从其他开发人员手中接手其他任务。面对一个庞大的系统,开发人员怎么才能快速、高效的做好交接工作,...原创 2020-01-05 23:32:40 · 490 阅读 · 10 评论