是不是用hibernate就不用写sql语句了
8个回答
展开全部
可用可不用,在hibernate中检索对象有多种方式,具体得看你用那种方式查询了,方式不同查询语句就不同:
1)导航对象图检索(对象图导航):
根据已经获取的对象,去检索相关联的对象
User user = ...
Address address = user.getAddress();
2)OID检索(通过对象标识符查询):
session.get(Student.class,OID)
session.load(Student.class,OID)
3)HQL检索(面向对象查询):
session.createQuery(HQL);
4)QBE 检索(按样例查询,Query By Example);
5)本地SQL(传统的SQL查询):
session.createSQLQuery(SQL);
6)QBC检索(按条件查询,Query By Criteria) 。
1)导航对象图检索(对象图导航):
根据已经获取的对象,去检索相关联的对象
User user = ...
Address address = user.getAddress();
2)OID检索(通过对象标识符查询):
session.get(Student.class,OID)
session.load(Student.class,OID)
3)HQL检索(面向对象查询):
session.createQuery(HQL);
4)QBE 检索(按样例查询,Query By Example);
5)本地SQL(传统的SQL查询):
session.createSQLQuery(SQL);
6)QBC检索(按条件查询,Query By Criteria) 。
展开全部
可以写,也可以不写,hibernate已经提供了许多数据库操作的方法,可以支持大部门的数据库操作;但它也没有限制开发人员以灵活的方式编写自己的sql语句。可以是HQL也可以是SQL,可以在代码里进行封装,也可以在配置文件中插入一些子查询,这就看具体需求和个人喜好了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
还不是根据业务需要嘛 hibernate 虽然可以代替大部分sql 但是有的地方也不是很灵活 还是要写sql的
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
HQL虽然比SQL更加面向对象,但是到今日都还没有完全成熟,所以Hibernate仍然支持sql的查询。在应用中加入业务特别复杂还是避免不了要用sql的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是可以不要写,但有的还要写hql
hql 跟sql语法也是类似
表名成了对象名,字段名成了对象属性名
hql 跟sql语法也是类似
表名成了对象名,字段名成了对象属性名
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询