@Formula  计算临时属性。

相当于可以关联查询字段,然后放在实体中当做属性使用。

任务:在User实体层,增加一个额外的属性,来获取Test表中的name字段。

1 表结构

User表

Test表

2 User实体层(省略了部分字段。)

@Entity
@Table(name = "user", catalog = "testdb")
@DynamicUpdate
public class User {
private Integer id;
private String uuid; private String test; @Id
@GeneratedValue
@Column(name = "id")
public Integer getId() {
return id;
} public void setId(Integer id) {
this.id = id;
} @Column(name = "uuid")
public String getUuid() {
return uuid;
} public void setUuid(String uuid) {
this.uuid = uuid;
} @Formula("(select t.name from test as t where t.id=id)")
public String getTest() {
return test;
} public void setTest(String test) {
this.test = test;
}
}

我们可以看到,在getTest上,增加了@Formula注解。查询表时,就会关联Test表的name到属性上。

注意:

首先 表增加别名。

其次 注意sql两段的小括号()

最后 t.id=id 的最后那个id,对应属性上的@Colun(value = "id")

3 通过jpa创建一个dao

@Repository
public interface UserDao extends JpaRepository<User,Integer> {
}

4 测试

@Autowired
private UserDao userDao; @Test
public void contextLoads() {
System.out.println(userDao.findById(2).get().getTest());
}

最新文章

  1. 常用Javascript语法
  2. javascript 中的 true 或 false
  3. 《SQL Server企业级平台管理实践》读书笔记——关于SQL Server数据库的还原方式
  4. 【Linux】/dev/null 2&gt;&amp;1 详解
  5. linux sysvinit与upstart [转]
  6. hdu 5335 Walk Out(bfs+寻找路径)
  7. wordpress教程之get_option()
  8. perl 访问网站一些useragent的设置
  9. java它们的定义ArrayList序列, 大神跳跃
  10. 让浏览器支持 jquery ajax load 前进、后退 功能
  11. Java反射机制剖析(四)-深度剖析动态代理原理及总结
  12. SecureCRT 设置彩色和显示中文
  13. 20175316 盛茂淞 2018-2019-2 《Java程序设计》实验一 Java开发环境的熟悉 实验报告
  14. B - 可能的路径(gcd变形)
  15. leetcode 22括号生成
  16. centos7 sentry部署指南
  17. IOS子视图超过父视图frame后,无法交互响应
  18. 树链剖分-点的分治(点数为k且距离最长的点对)
  19. &quot;WannaCry&quot;勒索病毒用户处置指南
  20. 成都Uber优步司机奖励政策(3月23日)

热门文章

  1. 拾遗:vim 快捷键设置
  2. HTML中改变列表的序号类型
  3. vue项目使用js-xlsx进行excel表格的导入和导出方法的简单原型封装
  4. 并发编程之CAS(二)
  5. hdu6350 /// tarjan+并查集+组合+最大流思想
  6. 自定义可点击的ImageSpan并在TextView中内置“View“
  7. 基于LNMP部署DiscuzX
  8. pycharm破解教程
  9. CF755G PolandBall and Many Other Balls/soj 57送饮料
  10. Delphi实现屏幕截图、窗口截图、指定区域截图