- 博客(15)
- 收藏
- 关注
原创 依赖倒置原则
高层模块不应依赖低层模块。双方都应该依赖抽象。高层模块通常是指业务逻辑部分,而低层模块则是具体实现部分。抽象不应依赖细节。细节应依赖于抽象。这样,细节的变化不会影响到抽象的设计。依赖倒置原则强调高层模块与低层模块之间的解耦,鼓励开发者采用抽象和接口的方式进行系统设计。这种设计不仅提高了系统的可维护性和可扩展性,还使得系统更易于测试、适应变化,提高了软件开发的灵活性。
2024-08-15 09:52:04 811
原创 如何看待“低代码”开发平台的兴起?
低代码平台的核心特点是通过可视化的界面和预构建的组件,使开发者能够以更少的代码量甚至无代码的方式创建应用程序。对于很多企业而言,非 IT 部门的员工也能够参与到应用开发的过程中,极大地充实了开发团队的多样性。未来,随着技术的发展和市场的不断变化,低代码平台将继续演变,并在推动数字转型的过程中发挥越来越重要的作用。近年来,随着数字化转型的推进和市场需求的变化,低代码平台逐渐崭露头角,成为企业软件开发的新选择。这一新兴的开发模式,以其独特的优势,迅速吸引了众多企业和开发者的关注,正逐步改变传统软件开发的格局。
2024-08-15 09:46:17 211
原创 Bean的作用域及优缺点以及相关线程安全
Prototype:如果一个 Bean 需要在每次请求时创建新的实例,可以将其作用域设置为 Prototype,这样每个线程将获得自己的实例,从而自然地避免了并发问题。ThreadLocal:在某些情况下,可以使用 ThreadLocal 来存储线程特有的数据,以此来避免多线程间的资源共享问题,但这要求开发者谨慎使用以避免内存泄漏。线程安全:每个 HTTP 请求都会创建一个新的 Bean 实例,天然地隔离了请求之间的状态。线程安全:每次请求都会创建一个新的实例,避免了多线程间的数据竞争问题。
2024-07-05 14:58:17 255
原创 SpringBean的理解和使用
如果Bean实现了Spring的Aware接口(如BeanNameAware、BeanFactoryAware、ApplicationContextAware等),Spring会调用这些接口的方法,让Bean知道它所在的环境信息,如Bean的名称、BeanFactory或ApplicationContext。Spring调用初始化方法来完成Bean的初始化工作。简单的说,就是通过配置文件或者注解的形式去标记的java类的实例,然后由Spring去对这些实例进行创建,初始化,装配,依赖注入和生命周期的管理。
2024-07-05 14:46:20 908 1
原创 Class *** can not access a member of class ***with modifiers “private static final“
如果在使用反射时遇到"Class *** can not access a member of class *** with modifiers。"的异常,这是因为默认情况下,私有字段是无法直接访问的。,忽略访问权限即可,这样就能够访问。的成员变量或者方法了。使用反射在调用相应的。
2024-03-04 16:09:05 1854 1
原创 java反射获取字段名和值
java反射获取字段一共有四个方式 :getField(), getDeclaredField(),getFields(), getDeclaredFields()。其中getField(), getDeclaredField()获取单个属性,getFields(), getDeclaredFields()获取多个属性。
2024-03-04 16:02:19 1976 1
原创 easyExcel导入文件的数据为null的解决办法
然而,如果实体类中的setter方法返回的是当前对象(即支持链式调用),EasyExcel 在设置属性值时可能会出现问题,导致读取的数据为null。实体类属性与Excel文件列不匹配:确保定义的实体类属性与Excel文件中的列名一致,并且类型匹配。检查Excel文件的表头和数据是否对齐,以及是否包含有效数据。为了避免这个问题,您可以在实体类中禁用链式调用,或者在读取数据时使用自定义的数据转换器来处理。检查过后发现以上的四步都是正确的,发现在生成实体类的时候用的是mybatis,生成的实体类会带有。
2024-02-27 14:25:18 3640 3
原创 BigDecimal的相关使用
RoundingMode.CEILING:向正无穷大的方向舍入,即如果是正数则表现和RoundingMode.UP一样,如果是负数则表现和RoundingMode.DOWN一样。RoundingMode.FLOOR:向负无穷大的方向舍入,即如果是正数则表现和RoundingMode.DOWN一样,如果是负数则表现和RoundingMode.UP一样。避免使用double或float转换:由于double和float类型的精度有限,会导致精度丢失,因此在需要精确计算的场景应该使用BigDecimal来代替。
2024-01-12 11:31:32 412 1
原创 Java文件流使用
Java提供了一系列的文件流类,包括FileInputStream、FileOutputStream、FileReader、FileWriter等,这些类可以用来读取或写入文件的内容。文件流通常用于处理文件的输入输出,例如读取文件内容并进行处理,或者将程序中生成的数据写入到文件中。在try-with-resources语句中,可以在括号内声明文件流对象,当try块执行完毕时,会自动调用流对象的close()方法来关闭流,无需手动处理。大部分的文件的读取和写入都是使用的文件的字节流。来实现文件的拷贝操作。
2024-01-10 15:33:57 517
原创 Ruoyi实现文件上传(MultipartFile)
工具类,我们可以更加简洁地处理文件上传,并且可以利用其提供的一些便捷功能,如生成文件名、处理文件路径等。该方法接受文件保存的目录和上传的文件作为参数,并返回文件保存的路径。工具类,用于处理文件上传,轻松实现文件的本地上传。2.获取文件名和文件路径。
2024-01-08 14:28:04 4149 5
原创 LocalDate 的实用的方法以及Date的方法
Date类已经不是很常用有些方法都失效了,推荐使用LocalDate和LocalDateTime来处理日期和时间。2.获取当前时间所在的周的开始和结束时间。3.获取当前时间所在的月的开始和结束时间。4.获取当前时间是这周/月/年的第几天、5.获取两个日期之间的天数。6.获取当前的时间戳。
2024-01-08 14:15:06 740 1
原创 Access denied for user ‘root‘@‘localhost‘ (using password: YES)
Access denied for user 'root'@'localhost' (using password: YES)
2023-10-12 17:15:28 1349
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人