TJ君今天隔離在家,感覺比上班還要累!!!
既要遠程完成各種計劃中的任務,還要忍受單位VPN變態的各種不方便,還要兼顧小孩子的各種云端課程,真是一段五味雜陳的經歷,而且這個經歷。。。。不知道還要持續多久~~~~
不過呢,TJ君還是那個樂觀的TJ君,沒有什么困難能打到TJ君~雖然很忙碌,但還是抽空回顧了一下自己和大家分享的各種項目,然后發現一點,似乎TJ君沒怎么介紹過和MyBatis相關的內容,那么擇日不如撞日,就今天了!
今天,TJ君要和大家分享的是一個簡單、快速、有效為主要特點的mybatis開發框架,fastmybatis
光從名字,就知道,他的特點,就是快快快!!!
尤其對于新人來說,fastmybatis上手難度也是不高的,因為他:
- 零配置快速上手
- 無需編寫xml文件即可完成CRUD操作
- 支持MySQL、sqlserver、oracle、postgresql、sqlite
- 支持自定義sql,對于基本的增刪改查不需要寫SQL,對于其它特殊SQL(如統計SQL)可寫在xml中
- 支持與spring-boot集成,依賴starter即可
- 支持插件編寫
- 支持ActiveRecord模式
- 提供通用Service
- 輕量級,無侵入性,是官方mybatis的一種擴展
總之呢,就是很容易上手,TJ君舉個快速開始的例子:
第一步,新建一個springboot項目。
第二步,在pom.xml中添加如下內容
<dependency>
<groupId>net.oschina.durcframework</groupId>
<artifactId>fastmybatis-spring-boot-starter</artifactId>
<version>最新版本</version>
</dependency>
第三步,就可以快速使用了~例如最基礎的增刪改查表的使用:
/**
* 增刪改查例子
*/
@RestController
public class CrudController {
@Autowired
private UserService userService;
/**
* 分頁查詢
* http://localhost:8080/user/page?id=10
* http://localhost:8080/user/page?pageIndex=1&pageSize=5
*
* @param param
* @return
*/
@GetMApping("/user/page")
public Result<PageInfo<TUser>> page(UserParam param) {
Query query = param.toQuery();
PageInfo<TUser> pageInfo = userService.page(query);
return Result.ok(pageInfo);
}
/**
* 新增記錄,這里為了方便演示用了GET方法,實際上應該使用POST
* http://localhost:8080/user/save?username=jim
*
* @param user
* @return
*/
@GetMapping("/user/save")
public Result<Integer> save(TUser user) {
userService.saveIgnoreNull(user);
// 返回添加后的主鍵值
return Result.ok(user.getId());
}
/**
* 修改記錄,這里為了方便演示用了GET方法,實際上應該使用POST
* http://localhost:8080/user/update?id=10&username=jim
*
* @param user 表單數據
* @return
*/
@GetMapping("/user/update")
public Result<?> update(TUser user) {
userService.updateIgnoreNull(user);
return Result.ok();
}
/**
* 刪除記錄,這里為了方便演示用了GET方法,實際上應該使用DELETE
* http://localhost:8080/user/delete?id=10
*
* @param id 主鍵id
* @return
*/
@GetMapping("/user/delete")
public Result<?> delete(Integer id) {
userService.deleteById(id);
return Result.ok();
}
}
是不是就是那么的簡單?其余的用法小伙伴們可以看下源項目中對于Mapper方法的使用列表,TJ君就不一一闡述,因為在家的TJ君要去燒飯了~誰說程序猿不能上得廳堂下得廚房呢~項目地址如下:
fastmybatis2022:https://gitee.com/durcframework/fastmybatis
另外,我們將之前發過的各種項目及工具進行了整理,收錄到了GitHub項目,歡迎各位小伙伴光臨Star,地址如下:
https://github.com/Wechat-TJ/TJ-WORLD-FORU。
最后,記得關注我喲,帶你了解更多好用軟件、免費資源和開源項目。