1
bootvue 2022-04-02 10:21:04 +08:00
mybatis & plus spring data 混合双打
|
2
lawler 2022-04-02 10:22:37 +08:00
JPA
|
3
oneisall8955 2022-04-02 10:25:12 +08:00 via Android
mybatis plus 单表查询不需要
|
4
aptupdate 2022-04-02 10:25:49 +08:00 via iPhone
啊? orm 的意义也不是为了解决写不写 sql 啊。。。
操作数据库就避免不了写 sql ,只是直接写在 xml 里或者类似于 mybatisplus 这种工具帮你转换的区别。 |
5
dengkj 2022-04-02 10:54:51 +08:00
MyBatis-Plus 好用吗
|
6
hidemyself 2022-04-02 11:00:00 +08:00
ORM 要解决的不是写不写 SQL 的问题。
有人喜欢 SQL 和代码分离,就 MyBatis ,XML 那一套了。 还有就 Hibernate/JPA 那一套了。 |
7
WebKit 2022-04-02 11:01:37 +08:00 via Android
看你理解的写 sql 是自己手写还是不出现 sql 代码。jpa 可以通过插件,基本不用手写
|
8
wudaye 2022-04-02 11:09:19 +08:00
刚学吗,JPA 没听过?
|
9
potatowish 2022-04-02 11:13:13 +08:00 via iPhone
简单项目 jpa ,复杂点用 mybatis 、mybatis plus
|
10
hay313955795 2022-04-02 11:25:06 +08:00
jooq 。一点 sql 都没有吧...
|
11
cheng6563 2022-04-02 11:28:52 +08:00
ORM 本来就凑合 M 下就行了。完全的 ORM 难用的要死。
|
12
coolair OP @wudaye 刚学,哈哈。感觉为了查询个东西,竟然要写 entity 、mapper.xml 、mapper.java 三个东西,觉得维护困难。
|
13
sheeta 2022-04-02 11:35:27 +08:00
最好用的还是 laravel 的 orm
|
16
coolair OP @zhaofy 也叫 model ?像这样的:
package com.test.helloworld.model; public class Student { private Long id; private String name; public Student() { } public Student(String name, int sex, int age) { this.name = name; } public Long getId() { return id; } public void setId(Long id) { this.id = id; } ... } @knightdf 哈哈,我就是从 sqlalchemy 来的,一行 sql 都不用写啊。 |
17
xuyang2 2022-04-02 12:20:03 +08:00
jOOQ 了解一下。Typesafe SQL
|
18
EscYezi 2022-04-02 13:14:23 +08:00 via iPhone
mybatis X 插件+mybatis-plus ,复杂查询才在 xml 里写 sql
|
19
privatetan 2022-04-02 14:28:22 +08:00
针对于开发的便捷性来说,使用 ORM 框架减少 SQL 编写的是一个不错的选择;
但个人推荐还是多写写 SQL 比较好。 |
20
Bingchunmoli 2022-04-02 14:31:40 +08:00 via Android
@coolair 代码生成,然后增删改查用一个实体,然后前端 vo ,bo ,dto 的
|
21
yejinmo 2022-04-02 15:08:32 +08:00
搭车问一下,Java 有没有类似 C# 的 LINQ to SQL 查询框架
``` var dataList = session.From<Models.MetaData>() .Where(q => q.Type == 1 && q.TableName == tableName) .OrderByDescending(q => q.TagName) .ToList(); ``` |
23
XiLingHost 2022-04-02 15:33:57 +08:00
建议直接用 nosql ,比如 mongodb 或者 es ,一句 sql 都不用写
|
25
paradoxs 2022-04-02 16:12:12 +08:00
假设你是一个小一点的项目,直接用 mybatisplus 这个框架,可以不写任何 SQL 。 就算是多表查询也可以分步查询,不需要写 resultmap 。
|
26
coolair OP @Bingchunmoli @watzds 确实可以使用 generator 自动生成,已经试过了。
@Anshay @potatowish @wudaye @hidemyself @lawler @lawler 刚用了下 JPA ,还不错,小项目应该不用写 SQL 了。 @hay313955795 @xuyang2 jOOQ 用的多吗,很少看到介绍啊。 @yejinmo 这个就跟 python 的 sqlalchemy 很像了,哈哈。 |
27
banmuyutian 2022-04-02 17:39:33 +08:00 1
@yejinmo #21
有类似的(Mybatis-Plus)但是做不到 LINQ 那么强大 |
28
zhazi 2022-04-02 18:23:45 +08:00 1
@yejinmo queryFactory.selectFrom(tableA)
.leftJoin(tableB).on(tableA.filed.eq(tableB.filed)) .leftJoin(tableC).on(tableC.field.eq(tableB.filed)) .where(tableA.field.eq(XXXX)); 刚在项目里粘贴出来一段改了下变量名 |
29
TWorldIsNButThis 2022-04-02 20:30:09 +08:00 via iPhone
@yejinmo querydsl jooq ebean…
国外这类框架挺多的 |
30
hingbong 2022-04-02 22:55:50 +08:00 via Android
jooq 挺舒服
|
31
hay313955795 2022-04-03 18:41:55 +08:00
@coolair 国外用的多吧...毕竟国外的项目目标性比较专一....不想国内啥表都要关联一下..可能就需要用上各种手写的 sql 了.
|