作者HAUCCUHA (Z)
看板java
标题[问题] 初学spring boot
时间Thu Jun 15 22:48:38 2017
各位好
目前在自学spring boot
这是我使用的第一个framework
觉得真的很方便,一下子就可以轻易写出一个HELLO WORLD
但在往深探索发现与DB关联的便利性好像没有想像中的便利
举例来说,现在都会实作一个JPA
使用findOne、save、findByKey之类的方法
几乎不用写什麽SQL语法
但往往实作上真的能够导入吗?
像简单的SELECT 可能我有一张TABLE 里面有30个栏位
我可能某个功能只要取其中三个栏位,但使用findOne 便会全部捞出
跟我以往学的观念很不一样,尽量不用下『selct *』
而如果搭配@Query 回传又是一个Object的阵列,里面也没有key value的概念
再者Spring 也帮我控制connection
但往往实作中,我可能要一个transaction中,塞四五张table
最後无误再一起commit
或者一个method需要开两次connection,在spring data jpa中
好像都没有这麽便利的去控制
想请问是我学习的方向有误吗?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.225.166.8
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1497538121.A.328.html
1F:→ ssccg: @Query可以直接把结果塞到指定的类别 06/15 23:18
2F:→ ssccg: 放在同个method再加@Transactional就会是个transaction 06/15 23:19
3F:→ ssccg: 是说你觉得JPA(或是任何ORM)弹性不够可以不要用,这不是 06/15 23:31
4F:→ ssccg: spring的核心,spring只是提供当你想用时方便接上的方法 06/15 23:32
5F:推 Rougun: @Query(SELECT s.n1, s.n2 FROM some s Where c:=c) 06/17 11:17
6F:→ Rougun: 回传都是你所建立的Entity啊 如果你回传很多值不就是 06/17 11:19
7F:→ Rougun: List<Object>啊 然後再去操作物件啊~~~ 06/17 11:19
8F:→ Rougun: Spring Data Jpa 把一些常用的DB操作做了封装 但本质还是 06/17 11:21
9F:→ Rougun: Jpa所以如果想要深入了解的话,还是要去看看hibernate的 06/17 11:21
10F:→ Rougun: 的文件,如果觉得Jpa很别扭,有jdbctemplate,jooq,mybaits 06/17 11:22
11F:→ Rougun: 等东东可以试试看 06/17 11:23
12F:推 luoqr: 基本方法是方便你使用 但客制化还是得自己来啊 07/07 12:15
13F:→ luoqr: 可以搭配Creteria api、Specification、...之类的一起服用 07/07 12:16