请大师指点:现在JAVA web开发后台持久层框架:Hibernate和 Mybatis 市场使用率都各占多少?哪个用的更多
答案:2 悬赏:0 手机版
解决时间 2021-01-22 17:32
- 提问者网友:献世佛
- 2021-01-22 08:07
请大师指点:现在JAVA web开发后台持久层框架:Hibernate和 Mybatis 市场使用率都各占多少?哪个用的更多
最佳答案
- 五星知识达人网友:从此江山别
- 2021-01-22 09:06
大一点的项目用hibernate,小一点的项目用mybatis,不过我用的话基本都是用的hibernate,但是我不会用到关联关系的东西,因为使用关联关系的话hibernate访问会影响效率追问先多谢 指教,
另外我想多问一下: 大项目的复杂业务逻辑不就得需要关联关系表吗?追答不用关联关系,手动维护关系就OK。
觉例子,首先我有User和Group。肯定是有关联关系的。那么user中有一个Groupid,这个ID不建立关联关系,在另外一个数据类中调用。多写一个类,查询的时候多写一个方法。
。追问那就是 多查一遍SQL语句 是吧?连接查询 分开,各自查 ? 要是 多表连接关联 怎么办?追答对,按照需求多查一遍。如果hibernate的话每一次查询都会查询一遍。关联查询的话分开来查询,利用一个dto来传递就ok。
举个例子八:
public class User{
//user model 类中的属性
private int id;
private int groupid;
private int roleid;
}
public class Role{
//role model 类中的属性
private int id;
private String name;
}
public class Group{
//group model 类中的属性
private int id;
private String name;
}
查询的时候需要分别查询出group 和 role 以及user
首先查询user 获取到roleid和groupid
然后分别查询 role和group
然后建立一个dto类
public class UserDto{
private int id;
private Group group;
private Role role;
}
查询出来的结果就直接放到UserDto中。
另外我想多问一下: 大项目的复杂业务逻辑不就得需要关联关系表吗?追答不用关联关系,手动维护关系就OK。
觉例子,首先我有User和Group。肯定是有关联关系的。那么user中有一个Groupid,这个ID不建立关联关系,在另外一个数据类中调用。多写一个类,查询的时候多写一个方法。
。追问那就是 多查一遍SQL语句 是吧?连接查询 分开,各自查 ? 要是 多表连接关联 怎么办?追答对,按照需求多查一遍。如果hibernate的话每一次查询都会查询一遍。关联查询的话分开来查询,利用一个dto来传递就ok。
举个例子八:
public class User{
//user model 类中的属性
private int id;
private int groupid;
private int roleid;
}
public class Role{
//role model 类中的属性
private int id;
private String name;
}
public class Group{
//group model 类中的属性
private int id;
private String name;
}
查询的时候需要分别查询出group 和 role 以及user
首先查询user 获取到roleid和groupid
然后分别查询 role和group
然后建立一个dto类
public class UserDto{
private int id;
private Group group;
private Role role;
}
查询出来的结果就直接放到UserDto中。
全部回答
- 1楼网友:毛毛
- 2021-01-22 09:48
毫无疑问现在Mybatis用的多,我们公司就是摒弃了Hibernate了追问谢谢~~
想顺便问一下:为什么要摒弃Hibernate 框架呢?追答臃肿,封装得太厉害,不如mybatis直接写sql来得简洁实在
想顺便问一下:为什么要摒弃Hibernate 框架呢?追答臃肿,封装得太厉害,不如mybatis直接写sql来得简洁实在
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯