个人简介:。
如何做好一份技术文档?
无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!
啥书呀?才疏学浅没见过这种用法
这种问题基本上是依赖版本不兼容.既然用springboot,依赖版本尽量用spring-boot-starter-parent指定的
顺着环境变量这个找找看资料
当你照着书本写出来一个软件后,你要做的不是立刻自己去写一个,而是把代码自己仔仔细细再看一看,数据是怎么流动的,结构怎么设计的,多想想为什么这么设计,可不可以那么设计.之后才是考虑如果不按书本,自己该怎么做.照着书写等于抄写,不加入自己的思考,就算你自己写出来了,效果顶多算默写,他不是自然语言类,默写的用处不大.
写软件书视频练习b站
从常规业务上说积分失败不应该导致订单失败,而是应该重试,如果是bug等因素导致则需要开发介入.如果你硬要回滚,通常有两个方案.1.二阶段提交订单服务将消息推送到mq成功时,发起一个两阶段提交事务,积分服务收到消息后,也参与到事务中,如果处理成功,提交事务,确认事务完成后向mq发送消息被成功处理的ack,,mq删除消息.如果处理失败,触发事务回滚,不向mq发送ack(我不确定有没有失败的确认接口),mq未收到成功ack的情况下不会删除消息.2.补偿订单发送完消息后自己提交事务.积分收到消息如果处理失败,像mq发送积分处理失败的消息,订单监听这个消息,根据失败原因等情况进行回滚或其他操作.
版本不兼容,去springboot官网找兼容列表
字符集不一样
写上,也是工作经验.不过你别过于全面把怎么走的也写上,别人问就是你自己走的,原因自己编,反正不是被辞退
<!DOCTYPE html> <html> <head> <title>距离2023年元旦的天数</title> </head> <body> <h1>今天是 <span id="today"></span> </h1> <h1>2023年元旦是 <span id="nyd"></span> </h1> <h1>距离 2023 年元旦还有 <span id="daysLeft"></span> 天</h1> <script> // 获取当前日期 const currentDate = new Date(); document.getElementById("today").textContent = currentDate; // 设置 2023 年元旦的日期(月份是从 0 到 11,所以 0 表示 1 月) const newYearDate = new Date(2023, 0, 1); document.getElementById("nyd").textContent = newYearDate; // 计算距离 2023 年元旦的天数差 const timeDiff = newYearDate - currentDate; const daysDiff = Math.ceil(timeDiff / (1000 * 60 * 60 * 24)); // 将天数差显示在页面中 document.getElementById("daysLeft").textContent = daysDiff; </script> </body> </html>
import java.util.PriorityQueue; import java.util.Set; import java.util.HashSet; public class PriorityQueueOperations { public static void main(String[] args) { // 创建两个优先队列 PriorityQueue<Integer> queue1 = new PriorityQueue<>(); PriorityQueue<Integer> queue2 = new PriorityQueue<>(); // 向队列1添加元素 queue1.add(1); queue1.add(2); queue1.add(3); queue1.add(4); // 向队列2添加元素 queue2.add(3); queue2.add(4); queue2.add(5); queue2.add(6); // 计算并集 PriorityQueue<Integer> union = new PriorityQueue<>(queue1); union.addAll(queue2); // 计算交集 PriorityQueue<Integer> intersection = new PriorityQueue<>(queue1); intersection.retainAll(queue2); // 计算差集 PriorityQueue<Integer> difference = new PriorityQueue<>(queue1); difference.removeAll(queue2); // 打印结果 System.out.println("Queue 1: " + queue1); System.out.println("Queue 2: " + queue2); System.out.println("Union: " + union); System.out.println("Intersection: " + intersection); System.out.println("Difference: " + difference); } }
确实比之前困难很多
你先把文件默认打开方式改掉.
看截图没看出问题.可以发完整的代码吗?
这不很明显吗?你的花括号呢?
把age初始化一下就好了.
int age = 10; System.out.println(age);
Maven Archetype 就是.另外即使是普通项目,在根目录下添加pom文件,右键找maven的按钮也能加载为maven项目
public class CirSinglyList<T> { // ... 其他成员变量和方法 public CirSinglyList<T> difference(SinglyList<T> list) { CirSinglyList<T> result = new CirSinglyList<>(); Node<T> current = head; while (current != null) { if (!list.contains(current.data)) { result.addLast(current.data); } current = current.next; if (current == head) { break; // 回到起始节点,遍历完成 } } return result; } }
public class CirDoublyList<T> { // ... 其他成员变量和方法 public void replaceAll(DoublyList<T> pattern, DoublyList<T> list) { Node<T> currentNode = head; Node<T> patternCurrent = pattern.head; Node<T> matchStartNode = null; while (currentNode != null) { if (currentNode.data.equals(patternCurrent.data)) { if (patternCurrent == pattern.head) { // 第一个元素匹配,记录匹配开始的节点 matchStartNode = currentNode; } patternCurrent = patternCurrent.next; if (patternCurrent == null) { // 匹配完成,用 list 替换匹配的部分 Node<T> prev = matchStartNode.prev; Node<T> next = currentNode.next; if (prev != null) { prev.next = list.head; list.head.prev = prev; } else { head = list.head; list.head.prev = null; } if (next != null) { list.tail.next = next; next.prev = list.tail; } else { tail = list.tail; list.tail.next = null; } patternCurrent = pattern.head; // 重置 pattern 指针 } } else { patternCurrent = pattern.head; // 未匹配,重置 pattern 指针 } currentNode = currentNode.next; if (currentNode == head) { break; // 回到起始节点,遍历完成 } } } }
140
你换个顺序再试试