- 博客(14)
- 收藏
- 关注
原创 引入MyBatis但不配置数据源时,如何使其不报错?
开发组件项目时,可能需要为组件设计持久化服务支持,组件使用者可以设置 `durable` 参数,选择是否开启持久化服务。如果我们在组件中引入**Mybatis**作为ORM框架(例如 `mybatis-spring-boot-starter`),使用我们组件的开发者如果不在自己的工程中配置 `datasource` ,那么应用启动时就会报错。
2024-08-14 15:51:33
390
原创 @Import和@ImportAutoConfiguration
`@Import(Config.class)` 和 `@ImportAutoConfiguration(Config.class)` 都是用来将指定的配置类加载到Spring的上下文中,虽然在功能上有一定的重叠——都可以用于导入配置类——但它们在使用场景和具体行为上有差异,因此在某些情况下,`@Import`不能直接替代`@ImportAutoConfiguration`。
2024-08-13 19:36:19
244
原创 手撕:TopK问题--1000个学生里面求成绩最高的10个
TopK问题在实际开发中经常会遇到,属于热点算法题。本文主要用四种方案来解决:全局排序、局部排序、堆和减治法,最后对着四种方案进行的测试验证。
2024-07-22 18:11:01
773
原创 手撕:最长递增子序列
求解最长递增子序列(Longest Increasing Subsequence, LIS)问题的常见算法有动态规划和二分查找优化的动态规划。下面详细介绍这两种方法。
2024-07-21 17:15:56
280
原创 Java:写一个类让别人调用,怎么让别人new出这个类的时候实现一些自定义的功能
采用工厂方法模式,在工厂方法内实现自定义的初始化逻辑。直接在构造函数内调用实现了自定义功能的方法。采用建造者模式,与上述工厂方法模式类似。
2024-07-17 17:10:15
302
1
原创 SQL:EXPLAIN使用指南
EXPLAIN是 MySQL 中用于显示查询执行计划的关键字,它可以帮助你理解 MySQL 是如何执行你的查询的。EXPLAIN返回的结果包含多列信息,每一列都提供了关于查询执行的不同方面的信息。
2024-07-17 15:01:37
825
原创 SQL:如何快速取1000w行的后100个数据
如果主键自增,直接按照主键降序然后取前100行,这样效率是最高的;如果主键不自增(例如使用了UUID或雪花算法生成主键id),则可以考虑使用子查询先查出目标的id,然后回表查询。不过数据量过大时,最好先考虑进行分库分表,再优化查询语句。
2024-07-17 12:20:11
368
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人