- 博客(42)
- 资源 (7)
- 收藏
- 关注
原创 springboot的特点以及优缺点
它简化了Spring应用程序的配置和部署过程,并提供了自动配置的功能,让开发人员能够更专注于业务逻辑的实现,而不需要过多地关注配置问题。Spring Boot内置了一些常见的第三方库和框架,例如Spring MVC、Spring Data JPA、Spring Security等,通过提供自动配置的方式,简化了这些组件的使用。简化配置:Spring Boot采用约定大于配置的原则,提供了默认的配置,减少了传统Spring应用中繁琐的XML配置,以注解和属性配置的方式简化了配置过程。
2024-04-12 15:33:23
910
原创 activiti工作流引擎
这些符号包括任务、子流程、开始和结束事件、网关、流程连接线等,可以用于表示流程的各个元素和它们之间的关系。总的来说,BPMN 2.0规范提供了一种通用的流程建模语言,帮助组织和企业更好地理解和管理他们的业务过程,并促进流程自动化和优化。这些表的设计和使用目的是为了支持Activiti工作流引擎的各种功能,如部署流程定义、管理运行中的流程实例、记录历史信息等。ACT_RE_*:这些表存储着流程定义和流程静态信息,如流程定义、流程定义的资源文件、流程定义的历史版本等。
2024-04-10 20:43:24
592
原创 Spring Cloud五大组件以及工作原理
在此期间,Hystrix会定期检查服务的可用性,如果发现服务已经恢复,则会关闭断路器,恢复对服务的访问。根据选择的策略,负载均衡器会选择一个可用的服务实例,并将请求发送给它。在此期间,Hystrix会定期检查服务的错误率,如果错误率降低,则会关闭熔断器,恢复对服务的访问。客户端在发送请求时,会使用负载均衡器选择一个合适的服务实例,并使用该实例的地址和端口号发送请求。总结来说,Zuul的工作原理是通过路由配置和过滤器机制来实现请求的转发、负载均衡和安全认证等功能,从而提供了一个灵活、可扩展的网关服务。
2024-04-07 22:33:52
642
1
原创 Hashmap的工作原理
总结起来,HashMap的工作原理是通过哈希函数将键映射到数组的索引位置上,解决冲突问题,并使用链表或红黑树来存储多个键值对。哈希函数:当我们向HashMap中存入一个键值对时,首先会通过哈希函数将键映射到一个索引位置上。如果发生哈希冲突,即不同的键映射到相同的索引,它使用链表来解决冲突。每个数组索引都是一个链表,其中包含具有相同哈希码的键值对。冲突处理:由于哈希函数的结果可能会出现冲突,即多个键值对映射到了同一个索引位置上。这是一个简化的 HashMap 的实现,使用数组和链表来存储键值对。
2024-04-07 15:29:35
418
原创 mysql存储引擎
其中,table_name是要创建的表的名称,column1, column2是表的列,datatype是列的数据类型。MyISAM:MyISAM是MySQL的另一个常用存储引擎,它不支持事务处理,但具有较高的插入和查询速度。不同的存储引擎有不同的特点和适用场景,所以在选择存储引擎时需要考虑实际需求和性能要求。其中,table_name是要修改的表的名称,engine_name是要使用的存储引擎的名称。以上是一些常见的MySQL存储引擎,根据具体应用需求,可以选择合适的存储引擎来优化系统性能。
2024-04-07 15:09:31
511
原创 MySQL数据库的事务
设置事务的隔离级别:MySQL支持多个事务隔离级别,包括读未提交(READ UNCOMMITTED)、读已提交(READ COMMITTED)、可重复读(REPEATABLE READ)和串行化(SERIALIZABLE)。使用这些事务相关的语句可以确保数据库操作的一致性和完整性,同时提供了并发操作的支持和错误处理机制。事务控制语句(SET TRANSACTION):用于设置事务的特性,如隔离级别和事务的只读性等。回滚事务会撤销在事务中进行的所有操作,将数据库恢复到事务开始之前的状态。
2024-01-19 18:50:12
461
原创 springboot中不同url怎么访问同一个方法
在Spring Boot中,可以使用@RequestMapping注解来指定多个URL访问同一个方法。通过这种方式,可以实现不同的URL访问同一个方法。无论是使用"/url1"、“/url2"还是”/url3"访问,都会调用myMethod()方法进行处理,并返回相应的结果。
2024-01-17 17:25:43
960
1
原创 hibernate多主键怎么自动生成表结构
自动建表时,会自动根据联合主键生成相应的表结构。在该类中定义多个主键属性,并重写。注解,并将联合主键类作为属性添加到实体类中。注解来定义多个主键,并且自动生成表结构。首先,创建一个表示联合主键的类,使用。然后,在包含该联合主键的实体类上使用。
2024-01-17 17:21:37
359
原创 什么是链表结构以及实现个简单的链表
链表由一系列节点组成,每个节点包含一个数据元素和一个指向下一个节点的指针。单向链表每个节点只有一个指向下一个节点的指针,而双向链表每个节点有两个指针,一个指向前一个节点,另一个指向后一个节点。链表是一种常见的数据结构,由一个个节点组成,每个节点包含一个数据元素和一个指向下一个节点的指针。方法用于打印链表中的所有节点的数据。从头部节点开始,依次打印节点的数据,并更新当前节点为下一个节点,直到当前节点为null。类表示链表,包含一个指向链表头部节点的引用,以及一些操作链表的方法,如添加节点和打印链表。
2024-01-17 17:17:51
390
原创 Java的反射机制
Java的反射机制是指在运行时动态获取类的信息,通过类的信息可以获得类的属性、方法、构造函数等,并且可以在运行时动态调用类的方法,创建类的实例等。Constructor类:表示一个构造函数,在运行时可以通过Constructor类创建类的实例。Class类:表示一个类或接口,在运行时通过Class类可以获取类的属性、方法、构造函数等信息。Field类:表示一个属性,在运行时可以通过Field类获取和设置类的属性的值。Method类:表示一个方法,在运行时可以通过Method类调用类的方法。
2024-01-17 17:13:25
371
原创 java实现分布式锁
需要注意的是,上面的代码只是一个简单的例子,实际的分布式锁实现可能会更复杂。此外,除了 Redis,还可以使用其他的分布式存储系统,如 ZooKeeper 等来实现分布式锁。上面的代码实现了一个简单的分布式锁,使用的是Redis作为存储介质。我们通过尝试设置一个指定过期时间的键值对来实现获取锁的功能。接下来,我们尝试获取锁并执行需要加锁的代码。如果获取锁成功,我们就输出 “Locked” 并模拟业务代码的执行时间。最后,无论是否获取到锁,我们都需要释放锁,并输出 “Unlocked”。
2024-01-17 17:10:09
428
原创 mysql索引的原理以及怎么使用
获取字段:可以使用Class类的getField()、getDeclaredField()等方法来获取类的字段对象。可以使用Field类的get()和set()方法来获取和设置字段的值。调用方法:可以使用Class类的getMethod()、getDeclaredMethod()等方法来获取类的方法对象。可以使用Class类的newInstance()方法(已废弃,不推荐使用)或者通过获取构造方法的方式来创建对象。可以使用Class类来获取类的相关信息,例如类的名称、父类、实现的接口、字段和方法等。
2024-01-17 16:56:50
383
原创 防止sql注入有哪些方法
使用参数化查询:参数化查询是将用户输入的参数与查询语句分离,参数化查询会将用户输入的参数作为查询的参数,而不是将用户输入的参数直接拼接到查询语句中。这样可以有效地防止SQL注入攻击。综上所述,通过参数化查询、输入验证和过滤、使用ORM框架、最小权限原则、日志记录和监控、定期更新和维护以及加密敏感数据等方法,可以有效地防止SQL注入攻击。使用ORM框架:ORM框架(对象关系映射)可以将数据库操作转换为对象操作,ORM框架内部会对用户输入的数据进行处理和过滤,从而减少SQL注入的风险。
2024-01-17 16:54:54
1033
原创 try放在for循环里面和外面有什么区别?
块放在循环内部还是外部。如果希望发生异常后仍然执行循环的下一个迭代,则将。如果希望在发生异常后中断循环,则将。语句块放置在循环内部和外部会有一些区别。根据实际需求,选择将。
2024-01-17 16:52:22
1041
原创 java实现链表
链表是一种基础的数据结构,Java中也提供了链表的实现方式。Java中的链表通常使用节点(Node)来表示链表中的元素,每个节点包含两个部分:数据和指向下一个节点的指针。其中,单向链表是最基础的链表形式,每个节点只有一个指向下一个节点的指针,而双向链表则每个节点有两个指针,一个指向前一个节点,一个指向后一个节点。循环链表则是在单向链表或双向链表的基础上,将最后一个节点的指针指向第一个节点,形成一个环形结构。其中,添加元素和删除元素是链表最基础的操作,获取元素和替换元素则是在此基础上进行的操作。
2023-10-27 16:14:33
80
原创 单例模式及优点
单例模式是一种设计模式,它确保一个类只有一个实例,并提供全局访问点。以上是三种常见的单例模式实现方式,在实现时需要根据具体业务场景选择适合的方式,并根据线程安全性和性能需求进行优化。
2023-10-16 15:28:01
212
原创 【无标题】List的特点及底层原理
当创建一个ArrayList时,会创建一个初始容量为10的数组,当数组不够用时,会自动扩容。扩容的方式是创建一个新的数组,将原数组中的元素复制到新数组中,然后将新元素添加到新数组末尾。因为数组的随机访问效率高,所以ArrayList适合随机访问和遍历。因为链表不需要连续的内存空间,所以插入、删除元素时只需要修改相应节点的引用即可,效率较高。List是一个接口,提供了一组增加、删除、修改和获取元素的方法。List接口的实现类有很多,常用的有ArrayList和LinkedList。
2023-10-16 15:24:25
174
原创 【无标题】HashMap的特点及底层原理
当要存储一个键值对时,HashMap 首先使用键的哈希码计算出在数组中的位置,如果该位置上已经存在了一个 Entry 对象,则将新的 Entry 对象插入到链表的开头;当需要查找键对应的值时,HashMap 根据键的哈希码计算出在数组中的位置,并遍历该位置上的链表,找到相应的 Entry 对象,然后返回对应的值。HashMap通过哈希表实现,它的实现原理可以简单地概括为:将键通过哈希函数转换为哈希值,在哈希表中查找这个哈希值对应的位置,并在这个位置存储该键值对。HashMap中的键值对是无序的;
2023-10-16 15:16:22
76
原创 session
session ID 通常以 cookie 的形式存储在用户的浏览器中,当用户在同一站点的不同页面之间跳转时,浏览器会将 session ID 发送给服务器,服务器通过读取 session ID,就可以获取该用户的会话信息。获取session ID:在用户第一次访问网站时,服务器会生成一个session ID,并将其发送给浏览器,浏览器会将session ID保存在cookie中。需要注意的是,session数据通常包含敏感信息,因此需要采取相应的安全措施,例如在存储和传输过程中加密。
2023-10-10 21:21:44
77
原创 java排序技术
快速排序(Quick Sort)是一种常用的排序算法,其基本思想是通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小。其中,选择排序是通过不断地选择剩余元素中的最小值,将其放到未排序部分的最前面,从而完成排序的过程。冒泡排序法是一种简单的排序算法,它的基本思想是重复地比较相邻的两个元素,如果顺序不对就交换它们,直到整个序列都有序。具体实现时,我们通过一个循环来遍历距离,然后再在内部循环中对相距为gap的元素进行比较和交换,最终得到排序后的数组。
2023-09-14 19:07:46
75
原创 java查找技术
二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。顺序查找是一种简单的查找算法,适用于小规模数据或无序数据的查找。它的实现方式是从列表的第一个元素开始逐个比较,直到找到目标元素或遍历完整个列表。
2023-09-01 16:46:56
70
原创 poi导出word,合并word单元格
package com.example.project.project.car.util;import org.apache.poi.xwpf.usermodel.*;import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTblWidth;import org.openxmlformats.schemas.wordprocessingml.x2006.main.STMerge;import org.openxmlforma.
2021-06-25 17:13:05
722
1
原创 poi导出excel,合并单元格
package com.example.project.project.car.util;import org.apache.poi.ss.usermodel.HorizontalAlignment;import org.apache.poi.ss.util.CellRangeAddress;import org.apache.poi.xssf.usermodel.*;import java.io.FileOutputStream;import java.io.IOException;i.
2021-06-25 17:10:22
266
原创 java判断操作系统
public static String getSystemType() { String result = "windows"; if (System.getProperty("os.name").equals("Linux")) result = "linux"; else if ("Mac OS X".equals(System.getProperty("os.name"))) result = "Mac OS X"; return r.
2021-06-25 17:06:49
151
原创 java文件转换,word转换PDF文件
import com.aspose.words.SaveFormat;import com.aspose.words.SaveFormat;File file = new File(PDF路径);FileOutputStream fileOutputStream = new FileOutputStream(file);Document docs = new Document(WORD路径);docs.save(fileOutputStream, SaveFormat.PDF);fi.
2021-03-15 16:31:17
131
原创 eclipse反编译class文件
首先下载jad.exe和net.sf.jadclipse_3.3.0.jar两个文件 jad.exe拷贝到JDK的bin目录下 net.sf.jadclipse_3.3.0.jar拷贝到myeclipse安装目录下【这是我的路径D:\Program Files\MyEclipse\MyEclipse 10\dropins\features】【D:\Program Files\MyEclipse...
2020-04-14 18:13:23
1908
原创 使用命令行导入dmp文件
自己参考了很多的博客,终于黄天不负有心人,使用命令行导入dmp文件成功了。imp 用户名/密码@127.0.0.1:1521/orcl file=文件位置 log=C:\elecars.log fromuser=文件中用户名 touser=文件中用户名 constraints=N ignore=y...
2020-03-15 00:43:08
962
原创 java之poi导入2.0
import org.apache.poi.hssf.usermodel.HSSFDateUtil;import org.apache.poi.ss.usermodel.Cell;import org.apache.poi.ss.usermodel.Row;import org.apache.poi.ss.usermodel.Sheet;import org.apache.poi.ss....
2019-10-17 15:45:31
185
原创 java之——word转换PDF格式
word转换成pdf格式,我在网上查找了很多资料,最后选择了Spire.Doc,在我看来Spire.Doc使用非常简单。本文将介绍如何使用Spire.Doc for Java将word文件转换为PDF格式。Spire.Doc 能够非常完美的识别中文字符并支持丰富的word文档元素:文本框、页眉、页脚、项目符号和编号、表格、文本、超链接、水印、图片、形状等。首先我们需要下载jar包mav...
2019-08-23 11:22:14
864
2
原创 Redis——Redis数据备份
redis备份命令:redis 127.0.0.1:6379> SAVE OK该命令会在redis数据库的安装目录中创建dump.rdb文件。redis回复数据如果需要恢复数据,只需将备份文件 (dump.rdb) 移动到 redis 安装目录并启动服务即可。获取 redis 目录可以使用CONFIG命令,如下所示:redis 127.0.0.1:6379>...
2019-05-21 16:15:34
197
原创 avtiviti工作流demo,activiti入门
package com.zhike.activiti.helloworld;import org.activiti.engine.*;import org.activiti.engine.form.FormProperty;import org.activiti.engine.form.TaskFormData;import org.activiti.engine.impl.form...
2019-04-19 11:10:18
374
原创 Idea快速搭建Springboot项目
file-->project删除掉mvnw和mvnw.cmdapplication.properties#连接数据库spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/test?character...
2019-04-15 11:12:47
621
转载 java.sql.SQLException: The server time zone value 'Öйú±ê׼ʱ¼ 解决方案
//第一个异常Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driv...
2019-03-25 11:04:31
677
原创 Spring文件上传
/** * @param request * @param response * @throws IllegalStateException * @throws IOException */ @RequestMapping(value="springUpload",method={RequestMethod.POST, RequestMethod.GET}) pub...
2019-01-18 13:58:41
157
原创 java之——poi导入导出
导入<!-- 模态框(Modal) --><div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <div class="modal-dialog"> <div cl...
2019-01-16 10:23:48
993
原创 springboot事物
在SpringBoot 中,使用事务非常简单,只需在方法上面加入 @Transactional 注解就可以实现。也可加在类上,此时则类中所有方法都支持事务。而当我使用下面代码时,发现事务却没有回滚,异常之前的数据仍然插入了数据库 @RequestMapping("/percredential") public String perCredential(HttpServletRe...
2019-01-07 14:35:39
247
原创 springBoot Task 配置,使用,spring定时任务,定时器
import java.util.Date;import org.springframework.beans.factory.annotation.Configurable;import org.springframework.scheduling.annotation.EnableScheduling;import org.springframework.scheduling.anno...
2018-12-28 10:51:48
320
转载 Bootstrap日期和时间表单组件运用兼容ie8
https://www.cnblogs.com/xiaominwu/p/4348022.html参考文献http://www.bootcss.com/p/bootstrap-datetimepicker/
2018-12-22 11:06:42
198
原创 js把毫秒值转换成时间格式yyyy-mm-dd 字符串格式与时间互转
//str是毫秒值字符串//把毫秒值解析成时间格式function getMyDate(str) { var oDate = new Date(str), oYear = oDate.getFullYear(), oMonth = oDate.getMonth()+1, oDay = oDate.getDate(), oHour = oDat...
2018-12-07 09:46:16
2767
1
修改dmp文件版本号工具.rar
2020-07-13
Axure软件.rar
2020-04-17
jdk-8u221-windows-x64
2019-08-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人