- 博客(31)
- 收藏
- 关注
转载 如何高效优雅的使用java枚举
枚举在系统中的地位不言而喻,状态、类型、场景、标识等等,少则十几个多则上百个,相信以下这段代码很常见,而且类似的代码到处都是,目标:消除这类冗余代码。
2023-06-20 11:55:56
313
转载 用好这个Java工具类库,代码量直接减少50%
本文介绍了guava中5种对Map的扩展数据结构,它们提供了非常实用的功能,能很大程度的简化我们的代码。但是同时使用中也有不少需要避开的坑,例如修改关联的视图会对原始数据造成影响等等,具体的使用中大家还需要谨慎一些。
2023-05-15 12:00:42
262
原创 Java跨域问题的几种后端解决方式
跨域指的是:浏览器不能执行其他网站的脚本,从一个域名的网页去请求另一个域名的资源时,域名、端口、协议任一不同,都是跨域。跨域是由浏览器的同源策略造成的,是浏览器施加的安全限制。a页面想获取b页面资源,如果a、b页面的协议、域名、端口、子域名不同,所进行的访问行动都是跨域的。
2023-05-05 11:49:43
4865
原创 VO和DTO有什么区别?
在Java开发中,VO和DTO都是用于数据传输的对象,但它们的含义和用途有所不同。VO(Value Object)通常是用于表示业务领域中的一个值对象,它是一个纯粹的数据对象,主要用于封装从业务层传递到UI层的数据,以便于UI层展示或者接收用户输入。VO通常不包含业务逻辑,也不会进行数据库操作或者其他复杂的计算,它只负责数据的传输和展示。VO的属性通常是只读的,不允许被修改。
2023-04-28 11:18:59
10899
原创 Java从入门到精通章节练习题——第十五章
综合练习1:输出本类所写的Java代码 创建一个MyReader类,在该类中编写代码读取本类文件里的所有代码,将这些代码输出到控制台中。综合练习2:记录所有文件/文件夹名 将C盘Windows文件夹中的所有文件/文件夹名保存在一个文本文件中。
2023-04-27 18:00:10
279
原创 Java从入门到精通章节练习题——第十四章
综合练习1:计算阶乘 通过Function接口创建一个匿名方法,该方法可以返回整数的阶乘结果。综合练习2:找出大于平均年龄的员工 结合第14.3节的内容,找出大于平均年龄的员工。
2023-04-27 17:38:47
178
原创 Java从入门到精通章节练习题——第十三章
综合练习4:权限设置 模拟明日学院的权限设置模块,0表示游客,1表示注册用户,2表示VIP会员,3表示管理员,控制台输入0~3中的任意数字后,输出每种权限的“特权”。综合练习3:通道提示 创建一个通道类,类中有一个入口方法,如果顾客进入通道则提示“顾客您好,小心地滑”。(4)创建第二个测试类对象tom,该对象用于记录人物信息,3个成员变量分别记录姓名、身高和性别。(3)创建第一个测试类对象date,该对象用于记录日期,3个成员变量分别记录表示年、月和日的整型数字,在控制台打印date对象的所有属性值。
2023-04-27 17:22:35
448
原创 Java从入门到精通章节练习题——第十二章
综合练习5:玩骰子 张三、李四、王五、赵六玩掷骰子游戏,比点数大小(提示:向ArrayList集合中添加骰子的点数,向Map集合添加姓名(key)和骰子的点数(value),其中value是随机的ArrayList集合中的元素。可是同时也存在问题,就是随机数的重复问题,这个问题也常常被忽略,请利用TreeSet集合实现不重复的数列,并自动完成元素的排序,然后生成数组,效果如下图所示。综合练习1:26个英文字母的正反输出 使用数组和ArrayList类,先输出A→Z,再输出z→a。
2023-04-24 15:04:03
658
原创 Java从入门到精通章节练习题——第十一章
勾股定理指的是:直角三角形的两条直角边的平方和等于斜边的平方,即a² + b² = c²。其中a、b、c为正整数,且a < b < c。可以将向量(100cos30°, 100sin30°)加到原始坐标(15, 4)上,得到移动后的坐标。
2023-04-22 21:15:42
282
原创 Java从入门到精通章节练习题——第十章
*** 综合练习4:找到名字最后一个字相同的人 在“张三”“李四”“王五”“赵六”“周七”“王哲”“白浩”“贾蓉”“慕容阿三”“黄蓉”* 10个名字中找到并输出最后一个字相同的名字。"张三" , "李四" , "王五" , "赵六" , "周七" , "王哲" , "白浩" , "贾蓉" , "慕容阿三" , "黄蓉" };// 取第一个名字的最后一个字母 boolean found = false;} } if(!found) {
2023-04-21 22:37:43
313
原创 Java从入门到精通章节练习题——第九章
综合练习4:乘法引发的异常 创建Number类,通过类中的方法count()可得到两个数据类型为int型的整数相乘后的结果,在调用该方法的主方法中使用try-catch语句捕捉12315乘以57876876可能发生的异常。综合练习8:计算最大公约数 创建Computer类,该类中有一个计算两个数的最大公约数的方法,如果向该方法传递负整数,该方法就会抛出自定义异常。综合练习1:引发越界异常 编写一个简单的程序,使之产生越界异常(IndexOutOfBoundsException)。
2023-04-21 16:38:29
677
原创 Java从入门到精通章节练习题——第八章
方法一:使用标识火柴是否被点燃的布尔值判断火柴状态方法二:构造器私有化,保证火柴对象只能创建一次,并执行一次点燃方法。
2023-04-21 14:21:16
423
原创 HashMultimap 快速入门
guava基本上可以说是java开发项目中,大概率会引入的包,今天介绍的主角是一个特殊的容器 -- HashMultmap,可以简单的将它的数据结构理解为Map
2023-04-04 13:43:18
339
原创 Java实现微信扫码登录并实现认证授权
网站应用微信登录是基于OAuth2.0协议标准构建的微信OAuth2.0授权登录系统。 在进行微信OAuth2.0授权登录接入之前,在微信开放平台注册开发者帐号,并拥有一个已审核通过的网站应用,并获得相应的 AppID 和 AppSecret,申请微信登录且通过审核后,可开始接入流程。
2023-02-21 18:47:53
6536
原创 Typora+PicGo-Core+阿里云OOS实现图片上传
功能实现后,将图片粘贴到typora即可完成自动上传至阿里云OOS。打开阿里云OOS控制台即可查看:这样,当md笔记发送到其他设备后,在有网络的情况下图片依然可以显示,省去了迁移笔记时还需要单独迁移图片的步骤,极为方便。
2023-02-21 15:04:50
368
原创 支付宝支付功能测试
沙箱环境是支付宝开放平台为开发者提供的与生产环境的联调测试环境,开发者在沙箱环境中完成的接口调用不会对生产环境中的数据造成任何影响。沙箱为开放的产品提供有限功能范围的支持,可以覆盖产品的绝大部分核心链路和对接逻辑,便于开发者快速学习/尝试/开发/调试。首先使用开发者账号登录> 滑到网页最下面,,点击即可进入沙箱环境。APPID为沙箱环境下模拟的应用id,加签可选择系统默认或自定义,这里选择系统默认证书模式。进入沙箱账号,使用登陆沙箱版支付宝,使用安卓手机或模拟器扫描二维码下载沙箱版支付宝。
2023-02-19 22:38:11
4140
原创 CreateProcess error=740, 请求的操作需要提升
再用Java程序启动本地程序时有时会出现CreateProcess error=740, 请求的操作需要提升
2023-02-10 15:39:20
7015
3
原创 Java前后端分离定义统一结果返回类
项目中我们会将响应封装成json返回, 一般在项目中我们会将所有接口的数据格式统一, 使前端(iOS Android, Web)对数据的操作更一致、轻松。一般会包含状态码、返回消息、数据这几部分内容。
2022-12-10 18:20:47
3712
4
原创 SpringBoot2整合Swagger增强解决方案knife4j
前后端分离开发模式中,api文档是最好的沟通方式。Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。1、及时性 (接口变更后,能够及时准确地通知相关前后端开发人员)2、规范性 (并且保证接口的规范性,如接口的地址,请求方式,参数及响应格式和错误信息)3、一致性 (接口信息一致,不会出现因开发人员拿到的文档版本不一致,而出现分歧)4、可测性 (直接在接口文档上进行测试,以方便理解业务)
2022-12-10 18:04:32
574
原创 快速排序原理及代码实现
快速排序和归并排序是互补的:归并排序将数组分成两个子数组分别排序,并将有序的子数组归并从而将整个数组排序,而快速排序的方式则是当两个数组都有序时,整个数组自然就有序了。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。对于左侧的数组数据,又可以取一个分界值,将该部分数据分成左右两部分,同样在左边放置较小值,右边放置较大值。
2022-11-23 18:21:43
117
原创 归并排序原理及代码实现
归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治法的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;若将两个有序表合并成一个有序表,称为二路归并。归并排序的时间复杂度为O(nlogn),需要申请额外的数组空间,导致空间复杂度提升,是典型的以空间换时间的操作。1.尽可能的一组数据拆分成两个元素相等的子组,并对每一个子组继续拆分,直到拆分后的每个子组的元素个数是1。2.将相邻的两个子组进行合并成一个有序的大组;1.分解法:将每个步骤细分成一个方法,方法之间调用完成归并排序;
2022-11-23 16:10:01
490
原创 SpringBoot整合Swagger2
Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的Web服务,是非常流行的API表达工具。4.启动项目后,浏览器访问 http://127.0.0.1:8080/swagger-ui.html,即可打开自动生成的可视化测试页面。能够自动生成完善的RESTful API文档,同时并根据后台代码的修改同步更新,同时提供完整的测试页面来调试API。Spring Boot 2.6.X后与Swagger有版本冲突问题,需要在application配置类中加入。
2022-11-22 18:53:53
173
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人