Spring Boot 这是java中的方法链接吗?我不明白链接的某些部分

wsxa1bj1  于 2022-11-05  发布在  Spring
关注(0)|答案(1)|浏览(87)

我有一个这样的代码:

上面的代码是可以理解的。这是可能的,因为每个方法(concat(),toupperclass(),trim()...)都有相同的对象,都是“String name”。
所以我的问题是像下面这样的代码。

@PersistenceContext
private EntityManager em;

em.createQuery("select m from Member m",Member.class)
        .getResultList();

他们都有不同的返回类型。不像我在顶部陈述的那个,这个是不同的。我应该如何理解这个?有人能帮助我理解这个吗?
我试着看看是否有同样的问题得到了回答,但不幸的是,我找不到我想要的确切答案。

lyr7nygr

lyr7nygr1#

以后请为您的代码上传文本文件而不是图片。
答案是,你不需要返回类型相同,你只需要知道在每一步中,你可以对对象调用什么方法。在你的例子中:em.createQuery("select m from Member m",Member.class).getResultList(),您也可以在多行上展开:

TypedQuery<Member> query = em.createQuery("select m from Member m",Member.class);
List<Member> result = query.getResultList();

因为TypedQuery类有getResultList方法,你可以在查询对象上调用这个方法。但是如果你以后不需要它,你不必把query显式地存储在变量中。这就是为什么在这种情况下首选一个行程序。

相关问题