一切福田,不離方寸,從心而覓,感無不通。

tkmybatis详细教程(一篇就明白)

tkmybatis 是对底层 sql 进行了抽象封装,不需要考虑 sql 怎么写,只需要按照逻辑思维,遵循 tkmybatis 的语法即可实现数据库操作。 本文适合对springboot项目结构有一定了解的读者。 本文的项目基础是一个demo项目(多模块的)。 1. 配置 1、添加 tkmybatis 的依赖

  2、创建 dao 层的 mapper 接口,每个接口都要继承  tk.mybatis.mapper.common.Mapper 接口。此接口的形式为 Mapper<T>,带了个泛型,此泛型一般指的是对应的 pojo 或者 domain。比如:

  3、在 Application 启动类上添加 mapper 扫描注解,表示要扫描到 dao 层的 mapper 接口。 比如本项目的mapper接口就统一放在 com.dgh.dao 下面,用 @MapperScan(basePackages = "包名") 来指定。 附注:在项目启动时,springboot 会自动扫描 Application 启动类所在的当前目录以及下一级目录,一般 Application 启动类都放在根目录,所以在单一项目下,只要是在 Java 类上添加了注解,都能够默认被 springboot 扫描到,并被添加到 springboot 的容器中,一般不需要特别用  @ComponentScan 去指定 springboot 要扫描哪些目录。 本文之所以特地用  @ComponentScan 去指定了 service 层和 controller 层的目录,是因为本文的项目是一个多模块项目,service 层和 controller 层各自都是一个独立的模块,与 Application 启动类不在同一目录下。

4、tkmybatis 具体的使用是在 service 层,service 层又分为接口和接口实现类,具体就在接口实现类里面。 5、其它的代码、配置与普通的springboot项目一样。 2. tkmybatis的结构 下图是 tkmybatis 的结构图,圈中的是 Mapper 接口,是最底层的,也就意味着它继承了所有的功能。因此才有了 […]

龙生   30 Oct 2023
View Details

在Java中为日期增加一天的多种方法

一、用 plusDays() 方法将 Java 中的日期增加一天
二、用 Calendar 方法将 Java 中的日期增加一天
三、用 Milliseconds 方法将 Java 中的日期增加一天
四、用 Instant 类向 Java 日期添加一天

龙生   27 Oct 2023
View Details

mysql查询12小时内的数据

NOW()函数:返回当前日期和时间。
DATE_SUB(date, INTERVAL expr unit)函数:从给定的日期或时间中减去指定的时间间隔。
DATE_ADD(date, INTERVAL expr unit)函数:在给定的日期或时间上添加指定的时间间隔。
DATE_FORMAT(date, format)函数:将日期或时间格式化为指定的字符串格式。

龙生   27 Oct 2023
View Details

fastJSON,使用TypeReference处理复杂的泛型对象

解析JSON, 并将其转换为对应的数据结构。
例如,简单对象,或者复杂的泛型对象

JSON.parseObject(JSON.toJSONString(param), new TypeReference>() {})

龙生   26 Oct 2023
View Details

分享10个高级sql写法

本文主要介绍博主在以往开发过程中,对于不同业务所对应的 sql 写法进行归纳总结而来。进而分享给大家。

本文所讲述 sql 语法都是基于 MySql 8.0
博主github地址:github.com/wayn111 欢迎大家关注,点个star

龙生   26 Oct 2023
View Details

牢记这16个SpringBoot 扩展接口,写出更加漂亮的代码

Spring的核心思想就是容器,当容器refresh的时候,外部看上去风平浪静,其实内部则是一片惊涛骇浪,汪洋一片。Springboot更是封装了Spring,遵循约定大于配置,加上自动装配的机制。很多时候我们只要引用了一个依赖,几乎是零配置就能完成一个功能的装配。

龙生   25 Oct 2023
View Details

工作六年,我学会了用 Arthas 来辅助我的日常工作

客户线上问题,应该如何复现,让客户再点一下吗?
异常被吃掉,手足无措,看是哪个家伙写的,竟然是自己!
排查别人线上的 bug,不仅代码还没看懂,还没一行日志,捏了一把汗!
预发 debug,稍微时间长点,群里就怨声载道!
加日志重新部署,半个小时就没了,问题还没有找到,头顶的灯却早已照亮了整层楼……
线上机器不能 debug,也不能开 debug 端口,重新部署会不会破坏现场呢?
怀疑入参有问题,怀疑合并代码有问题,怀疑没有部署成功,全是问号……
一个问题排查一天,被 Diss 排查问题慢……

龙生   25 Oct 2023
View Details

2023 年微服务后端开发的 11 个最佳工具

微服务架构以将复杂的应用程序分解为易管理的服务而闻名,然而,管理微服务是一项具有挑战性的任务。为了确保开发工作流程的高效性,需要采用特定的工具。

在本文中,小编将为您介绍2023年最热的11款后端微服务开发工具,并全面介绍它们的基本功能和常见用例。不论您是经验丰富的微服务开发人员,还是初涉微服务领域的新手,本文都将为您提供宝贵的见解和剖析。

龙生   25 Oct 2023
View Details

Idea非常好用的插件总结和常用操作总结

Idea插件总结 自动生成文档注释 集成插件:Easy Javadoc 一个自动帮你完成JavaDoc注释的IDEA插件! 下载地址: 传送 使用说明: Windows: 鼠标放在方法上面,然后在按 Ctrl + **MAC:**鼠标放在方法上面,然后在按 command + \ 可以对文档注释中的作者名、日期格式等进行相关设置,还可以设置翻译渠道(如百度翻译、有道翻译等) 注释快捷展示 集成插件:Show Comment 在对项目不太熟悉的情况下,对于快速了解项目,梳理业务逻辑,此插件还是比较实用的,提升工程熟悉进度! 下载地址: 传送 配置: 彩色括号 集成插件:Rainbow Brackets Lite 彩虹括号,代码中存在多个括号,分不清范围,使用此插件可以一眼能看出来! 下载地址: 传送 区域代码高亮功能: Mac快捷键: cmd + 鼠标右键; **Windows快捷键:**Ctrl + 鼠标右键 彩色控制台 集成插件:Grep Console 可以通过expression表达式过滤日志、给不同级别的日志或者给不同pattern的日志加 下载地址: 传送 代码收藏夹 集成插件:iCode 它是一个代码片段收藏夹工具,页面十分简洁优雅,抛弃了传统的文件夹收藏的方式,通过标签做分类,支持标签和内容搜索。 时序图生成 集成插件:Sequence Diagram 软件背景图片由于需要绝对地址,每个人的电脑路径不一,所以请自行配置,菜单View找到最下面的set background img,选中背景图即可! 可以为输出的日志修改颜色,具体配置请在设置中Other Settings中找到GrepConsole即可! 下载地址: 传送 点击小扳手的图标,主要配置如下: call depth,用于配置调用深度,默认是5层; display only project classes ,勾选中表示仅展示本工程内的源码调用关系,不包含依赖包里的; skip getters/setters,勾选中表示时序图中会跳过get方法和set方法的调用关系; skip private methods,勾选中表示时序图中会跳过私有方法之间的调用关系; skip constructors,勾选中表示时序图中会跳过构造方法的调用关系; 阿里云智能编码插件 插件说明:智能编码,代码补全,代码搜索,代码示例搜索,代码文档搜索,代码生成 官网: 传送 Cloud Toolkit 插件说明:帮助开发者更高效地部署、测试、开发和诊断应用 官网: 传送 sh脚本(第一版): bash 复制代码

sh脚本(第二版): 第二版主要针对SpringBoot瘦身版使用 […]

龙生   25 Oct 2023
View Details

五个很实用的IDEA使用技巧

日常开发中,相信广大 Java 开发者都使用过 IntelliJ IDEA 作为开发工具,IntelliJ IDEA 是一款优秀的 Java 集成开发环境,它提供了许多强大的功能和快捷键,可以帮助开发者提高编码效率和质量。除了一些常见的技巧,如自动导包、智能补全、重构工具等。IntelliJ IDEA 还有一些不为人知的技巧,可能很多开发者都没有注意到或者使用过。本文就在为你介绍博主常用的五个 IntelliJ IDEA 使用技巧,希望能够给你带来一些工作效率上的提升。本文内容大纲如下:

注释对齐
快速创建包目录/文件夹
快付复制类代码生成 Java 类
多实例启动
分支比较

龙生   24 Oct 2023
View Details