- 博客(299)
- 资源 (1)
- 问答 (1)
- 收藏
- 关注
原创 图用邻接表表示的深度优先和广度优先遍历
然后,从队列中取出一个顶点进行处理,输出其数据,并将其所有未访问的邻接顶点入队并标记为已访问。它首先将当前顶点标记为已访问,并输出顶点的数据。然后,遍历当前顶点的邻接表,对于每个未被访问过的邻接顶点,递归调用。广度优先遍历(Breadth-First Search,BFS)是一种图遍历算法,它以广度优先的顺序遍历图的所有节点。,每个顶点表项存储了顶点的数据和指向第一个邻接顶点的指针。函数用于遍历图中所有顶点,并对未访问过的顶点调用。,存储了邻接顶点的下标和指向下一个邻接顶点的指针。函数进行深度优先遍历。
2023-12-19 23:18:20
544
原创 如何前端存token,后端获取token
在身份验证方面,Token通常用于替代传统的基于会话的身份验证机制,如使用Cookie+Session的方式。使用Token进行身份验证的好处是,服务器不需要在内存中保存用户的会话信息,因为Token本身包含了所有验证所需的信息。在前端,使用浏览器提供的 Web Storage(如LocalStorage或SessionStorage)或者使用HTTP Cookie来存储Token。Token是一种用于身份验证和授权的令牌(Token)机制,在网络通信中广泛使用。注解来接收前端传递的Token值。
2023-12-09 12:15:32
5957
原创 Web server failed to start. Port 8888 was already in use.
① 在 Unix/Linux/Mac 上,使用。②在 Windows 上,使用。替换为占用端口的进程ID。替换为占用端口的进程ID。强制终止占用端口的进程。记下显示的进程ID。
2023-12-08 07:00:00
692
原创 BeanUtils.copyProperties将一个 Java 对象的属性值复制到另一个对象
在进行属性拷贝时,如果属性类型不匹配,可以通过注册自定义的转换器来进行类型转换,或者使用其他工具库来实现更复杂的属性拷贝逻辑。是 Apache Commons BeanUtils 库提供的一个工具类,用于简化在 Java 对象之间进行属性拷贝、属性查找和属性赋值的操作。该方法会将源对象中的属性值复制到目标对象中,属性名和类型必须在目标对象中存在。是 Apache Commons BeanUtils 库中的一个方法,用于将一个 Java 对象的属性值复制到另一个对象中。在上面的示例中,创建了一个。
2023-12-05 17:04:21
788
原创 springboot统一异常处理
通过将全局异常处理器注册为一个 Bean,Spring Boot 将自动应用该处理器来处理应用程序中发生的异常。最后,在 Spring Boot 应用程序的配置类中,需要将全局异常处理器注册为一个 Bean。在 Spring Boot 中,可以通过自定义异常处理器来实现统一的异常处理。方法用于处理其他未处理的异常,返回一个带有 500 错误状态码和错误消息的。或其他未处理的异常时,全局异常处理器将捕获并处理它们,返回适当的错误响应。然后,创建一个全局异常处理器,用于处理应用程序中发生的异常。
2023-12-04 15:12:41
570
原创 mybatis中<association> 和 <collection>
association用于配置一对一的关联关系,表示两个对象之间的关系是一对一的。例如,一个订单对象关联一个用户对象。collection用于配置一对多的关联关系,表示一个对象关联多个对象。例如,一个部门对象关联多个员工对象。
2023-12-01 17:05:09
4100
原创 springboot跨域问题
浏览器实施了同源策略(Same-Origin Policy),这是一种安全机制,限制了来自不同源的页面之间的交互。域名不同:当浏览器中的 JavaScript 代码发起请求时,请求的目标地址与当前页面的域名不同,就会触发跨域问题。使用 Spring Security 进行跨域配置:如果你的应用程序使用了 Spring Security,你可以在配置类中添加跨域配置。端口不同:即使两个页面的域名相同,但如果它们使用了不同的端口,也会被视为跨域请求。),而另一个页面使用的是普通的 HTTP 协议(如。
2023-11-30 16:59:11
904
原创 mysql常见配置文件参数
MySQL的配置文件通常位于安装目录下的 my.cnf 或 my.ini 文件中。如果应用程序需要处理大量的并发连接,可能需要增加该值,以支持更多的连接。:这是InnoDB存储引擎使用的内存缓冲池的大小。增加该参数的值可以提高数据读取的性能,特别是对于大型数据库。增加该参数的值可以减少日志文件的切换频率,并提高写入性能。:对于使用MyISAM存储引擎的表,该参数定义了索引缓冲区的大小。增加该参数的值可以提高索引的读取性能。增加这些参数的值可以提高处理临时表的性能,特别是对于复杂查询和排序操作。
2023-11-29 15:34:55
631
原创 java stream流map和flatmap的区别
flatMap()操作将每个人员的技能列表转换为一个流,并将多个技能流合并为一个扁平化的流。结果列表为[“Java”, “Python”, “SQL”, “JavaScript”, “HTML”, “CSS”, “C++”, “C#”, “Ruby”]。在这个例子中,map()操作将每个字符串映射为它们的长度,生成了一个新的流。适用于将一个元素展开为多个元素的场景,例如将列表展开为单独的元素,或者将字符串拆分为单词。假设有一个包含多个单词的字符串列表,获取每个单词的长度,并生成一个包含所有单词长度的列表。
2023-11-28 20:00:00
1081
原创 java stream流的执行流程
Stream流是Java 8引入的一种用于处理集合数据的函数式编程概念。它提供了一种流式处理数据的方式,可以进行过滤、映射、排序、聚合等操作。在执行终端操作时,流会根据操作链依次处理每个元素。它会按需处理数据,避免不必要的计算。中间操作:一旦有了流,可以对其进行中间操作。中间操作是对数据进行转换、过滤、映射等处理,但并不会立即执行。创建流:首先,需要有一个数据源,可以是集合、数组、I/O通道等。如果需要对同一数据源进行多个操作链的处理,可以通过创建新的流来实现。这些操作可以连接在一起,形成一个操作链。
2023-11-28 07:00:00
555
原创 Java poi无法导出excel报错Sheet name cannot be blank, greater than 31 chars, or contain any of /\*?[]
使用java poi导出excel表报错。修改excel表名不要带有/ \ *?就可以导出excel了。
2023-10-30 11:00:53
204
原创 队列的基本操作以及C语言实现
1.Enqueue:将元素插入队列尾部。2.Dequeue:从队列头部移除元素。4.IsEmpty:检查队列是否为空。5.IsFull:检查队列是否已满。3.Front:获取队列头部元素。
2023-10-19 00:00:00
292
原创 栈的基本操作以及C语言实现
4.IsEmpty:检查栈是否为空。5.IsFull:检查栈是否已满。1.Push:将元素压入栈顶。2.Pop:从栈顶弹出元素。3.Top:获取栈顶元素。
2023-10-18 19:00:00
230
原创 JavaScript querySelector
方法返回匹配选择器的第一个元素,如果没有匹配的元素,则返回。仅返回匹配的第一个元素。需要选择多个元素使用。是CSS选择器,用于指定要选择的元素。方法,返回所有匹配的元素列表。是要执行选择操作的父元素,
2023-10-18 11:21:11
292
原创 ASP.net后端Controller获取前端select标签选择option选项的值
Request.Form[“mySelect”] 可以获取前端传的name="mySelect"的值。后端Controller。
2023-10-16 19:00:00
277
原创 ASP.net相关目录,相关配置文件和.后缀名解释
Machine.config:Machine.config 是全局的 ASP.NET 配置文件,位于.NET Framework 安装目录的\Config 文件夹下。.config:.config 是各种配置文件的通用后缀名,如 Web.config、App.config 和 Machine.config。Global.asax:Global.asax 是一个全局的应用程序类文件,用于处理应用程序级别的事件,如应用程序的启动和关闭、会话管理、应用程序错误处理等。
2023-10-14 19:00:00
533
原创 SAP报错CX_SY DYN CALL PARAM MISSING
在 ABAP 中,当你定义一个方法时,可以选择将方法的参数标记为可选(可选参数)或必需(必需参数)。如果你不勾选可选参数选项,那么该参数将被视为必需参数,调用该方法时必须提供该参数的值。在运行时,如果你在调用该方法时没有为必需参数提供值,将会引发运行时错误。如果你在方法定义中不勾选参数的可选选项,并且在调用该方法时没有为该参数提供值,将会导致编译错误或运行时错误,具体取决于调用方法的方式。在编译时,如果你在调用该方法的地方没有为必需参数提供值,编译器将会报告错误,指示缺少参数。这将阻止你的程序编译通过。
2023-10-14 11:18:21
342
原创 求解哈夫曼树HuffmanTree以及C语言实现
对于每个字符,创建一个节点,并将该节点插入到优先队列中。节点的频率可以是字符在文本中出现的次数或者其他预定义的权重。从优先队列中提取出两个频率最小的节点作为左右子节点,并创建一个新节点作为它们的父节点。将新节点插入优先队列中。在压缩数据时,出现频率较高的字符被编码为较短的二进制码,而出现频率较低的字符则被编码为较长的二进制码,以达到压缩数据的目的。PriorityQueue表示优先队列,用于构建哈夫曼树,包含队列的大小、容量和节点指针数组。最小堆是一种二叉树,其中每个节点的值都小于或等于其子节点的值。
2023-10-13 19:00:00
361
原创 ASP.net数据从Controller传递到视图
使用 ViewData:使用 ViewData 字典将数据存储在键值对中,并在视图中通过键访问这些数据。使用 ViewBag:使用 ViewBag 对象将数据存储在动态属性中,并在视图中访问这些属性。在控制器中,使用 ViewBag 对象将数据存储在动态属性中,并在视图中访问这些属性。在控制器中,使用 ViewData 将数据存储在字典中,并使用键值对的方式进行存取。使用模型:创建一个模型对象,并将数据赋值给模型的属性,然后将模型传递给视图。在视图中,通过在视图顶部声明模型类型,并使用模型属性访问数据。
2023-10-13 16:43:34
947
原创 SAP ECC 中查询不同类型数据和abap开发常用的事务码
MB51: 查询物料凭证 - 用于查询物料凭证的列表和详细信息,包括入库和出库等记录。MMBE: 查询物料库存 - 用于查询物料库存的详细信息,类似于之前提到的事务码。VA05: 查询销售订单交货 - 用于查询销售订单交货的详细信息。ME33K: 查询采购合同 - 用于查询采购合同的详细信息。ME23N: 查询采购申请 - 用于查询采购申请的详细信息。ME2N: 查询采购订单 - 用于查询采购订单的详细信息。VA03: 查询销售订单 - 用于查询销售订单的详细信息。XK03 用于查询供应商信息。
2023-10-13 10:59:13
1258
原创 Dijkstra算法和Floyd算法求最短路径以及C语言实现
①初始化距离数组和访问数组,将起始节点的距离值设置为0,其他节点的距离值设置为无穷大,访问数组初始化为false。②从起始节点开始,选择当前距离值最小的节点,将其标记为已访问。③遍历该节点的邻居节点,如果通过当前节点到达邻居节点的路径比之前的路径更短,则更新邻居节点的距离值。④重复上述步骤,选择下一个距离值最小的未访问节点,直到所有节点都被标记为已访问,或者找到了目标节点。②使用动态规划的思想,通过中间节点的遍历来更新节点之间的最短路径。如果通过中间节点得到的路径比之前的路径更短,则更新距离矩阵中的值。
2023-10-12 19:00:00
308
原创 无法向会话状态服务器发出会话状态请求。请确保 ASP.NET State Service (ASP.NET 状态服务)已启动,并且客户端端口与服务器端口相同
无法向会话状态服务器发出会话状态请求。如果服务器位于远程计算机上,请检查 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection 的值,确保服务器接受远程请求。如果服务器位于本地计算机上,并且上面提到的注册表值不存在或者设置为 0,则状态服务器连接字符串必须使用“localhost”或“127.0.0.1”作为服务器名称。“/”应用程序中的服务器错误。
2023-10-09 13:00:00
1012
原创 Sqlserver查看表的主键,删除主键,修改主键
查询使用 sp_help 存储过程,它将返回有关表的详细信息,包括列名、数据类型、约束等。你可以在结果中查找带有 “PK” 标记的列,它们表示主键约束。查询使用 sp_pkeys 存储过程,它将返回指定表的主键信息。主键字段将在结果集中以 “COLUMN_NAME” 列的形式显示。将 “YourTableName” 替换为你要查看的表的名称。2.查看表的主键信息。
2023-10-09 10:47:04
1820
1
原创 计算后缀表达式的值以及C语言实现
遇到 * 运算符,从栈中弹出 31 和 5,计算 31 * 5 = 155,将 155 入栈。遇到 + 运算符,从栈中弹出 7 和 24,计算 7 + 24 = 31,将 31 入栈。遇到 * 运算符,从栈中弹出 8 和 3,计算 8 * 3 = 24,将 24 入栈。②如果是运算符,从栈中弹出两个操作数,进行相应的运算,并将结果入栈。后缀表达式5 3 8 * 7 + *的计算结果为栈顶元素 155。遍历到 5,将 5 入栈。遍历到 3,将 3 入栈。遍历到 8,将 8 入栈。遍历到 7,将 7 入栈。
2023-10-08 08:00:00
880
原创 Prim算法和Kruskal算法求最小生成树以及C语言实现
算法思想:从一个顶点开始构建最小生成树,每次选择一个键值最小的顶点加入最小生成树,并更新与该顶点相邻的顶点的键值。最终得到的最小生成树是连接所有顶点并具有最小总权重的树。算法思想:将图的所有边按照权重进行排序,然后依次选择权重最小的边,如果选择该边不会形成环路,则将其加入最小生成树,直到最小生成树的边数达到 V-1。①选择权重最小的边,如果该边的两个顶点不在同一个连通分量中,则将该边加入最小生成树集合,并合并两个连通分量。①从最小生成树集合连接到顶点集合的边中选择权重最小的边。
2023-10-07 14:14:31
268
原创 linux centos运行C语言程序
下述以创建hello.c输出hellowolrd为例。就会生成名为hellotest的可执行文件。3.编译 C 语言代码,并生成可执行文件。在hello.c加入C语言代码。在hello.c当前目录执行。
2023-10-06 16:23:12
1735
原创 find /root -type f -mtime +30 -exec rm {} ;的含义
在 find 命令中,{} 是一个占位符,用于表示找到的文件名或目录名。{} 会被实际的文件名或目录名替换,从而在 -exec 选项指定的命令中使用找到的文件。的含义是将 {} 替换为找到的文件名,并在每个文件名后面添加一个分号;该命令会递归地在 /root 目录及其子目录中查找所有普通文件,如果文件的修改时间超过 30 天,则使用 rm 命令将其删除。它告诉 find 命令在执行 -exec 后面的命令之前等待所有文件都被处理完毕。:对于每个符合条件的文件,执行 rm 命令进行删除。
2023-10-06 15:49:26
217
原创 ps -ef|grep test的意思
首先使用 ps -ef 列出所有正在运行的进程的详细信息,然后将输出通过管道传递给 grep 命令,对这些输出进行过滤,只保留包含 “test” 的行。ps -ef | grep test 用于查找正在运行的进程中包含 “test” 的进程。
2023-09-28 16:12:43
114
原创 error calling LaTeX preprocessing: “exec: \“pdflatex\“: executable file not found in $PATH“. Latex p
Grafana生成pdf报错error。linux执行如下指令。
2023-09-26 16:04:46
154
原创 knowage下载安装详细教程windows
浏览器输入 http://localhost:8080/knowage。这个界面很重要,可以截下来,然后点击finish。选择一个路径存放knowage文件。电脑需要下载jdk8。以下使用的是版本7,
2023-09-25 15:17:03
297
可以通过后端发送多张图片并且在前端显示吗?
2022-05-16
TA创建的收藏夹 TA关注的收藏夹
TA关注的人