gpt4 book ai didi

java - 为什么 @Query 注解的方法需要主体?

转载 作者:行者123 更新时间:2023-12-01 19:26:24 25 4
gpt4 key购买 nike

我是 Spring 新手。

我写了一个类:

import org.springframework.data.jpa.repository.Query;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class Kontroller
{
@Query( value="select * from teszt"
, nativeQuery = true
)
List<Teszt> osszesSor(); // <-- error
//.....
@RequestMapping("/szam")
public @ResponseBody String szamossag()
{
List<Teszt> sokasag = osszesSor();
return("számosság="+sokasag.size());
}

}

它说(它 = IDE (STS),并且在运行时当我调用 osszesSor() 时):此方法需要正文而不是分号

Teszt 类是:

import java.io.Serializable;
import javax.persistence.*;

@Entity
@IdClass(Teszt.class)
public class Teszt implements Serializable {

@Id
private String kulcs;
@Id
private String ertek;

//getters, setters

}

这是一个非常简单的表(这就是为什么它在 spring 中变得非常复杂,因为它没有单列键):

create table TESZT
(
KULCS VARCHAR2(2000) not null,
ERTEK VARCHAR2(2000) not null,
constraint TESZT_UN
unique (KULCS, ERTEK)
)

最佳答案

现在我知道了。我必须创建一个存储库接口(interface):

public interface TesztRepo extends Repository<Teszt, Teszt>
{
@Query( value="select * from teszt"
, nativeQuery = true
)
List<Teszt> sokasag();
//...
}

并在 Controller 中自动连接它。

  @Autowired
TesztRepo dao;
//...
List<Teszt> sokasag = dao.sokasag();

没那么复杂。

关于java - 为什么 @Query 注解的方法需要主体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59309689/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com