当前位置: 首页 > 知识库问答 >
问题:

如何在Spring Boot中获取json格式的select数据

淳于凯
2023-03-14
@Repository
public interface UserDao extends JpaRepository<User, Long> {
    @Query(value = "SELECT ss.name AS name, \n" +
            " SUM(pp.amount) AS amount, \n" +
            " REPLACE(ss.name, 'SomeName', 'DifferentName') AS cname \n" +
            " FROM payments AS pp\n" +
            " INNER JOIN auth_user AS au ON au.id = pp.creator_id\n" +
            " INNER JOIN services AS ss ON ss.id = pp.service_id\n" +
            " WHERE\n" +
            " pp.created_dt >= '2021-09-28' AND pp.created_dt < '2021-09-29' \n" +
            " AND ss.name = 'SomeName' AND pp.status = 'SUCCESS' \n" +
            " GROUP BY ss.name\n" //+
             , nativeQuery = true)
    List<User> findAll();
}
@Entity
//@Table(name = "payment")
public class User {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private long id;

    //@Column(name = "name")
    private String name;

    //@Column(name = "amount")
    private long amount;

   // @Column(name = "name")
    private String cName;

    public User(
            @JsonProperty("name") String name,
            @JsonProperty("amount")long amount,
            @JsonProperty("cName")String cName) {
        this.name = name;
        this.amount = amount;
        this.cName = cName;
    }

    public User(long id, String name, long amount, String cName) {
        this.id = id;
        this.name = name;
        this.amount = amount;
        this.cName = cName;
    }

    public long getId() {
        return id;
    }

    public String getName() {
        return name;
    }

    public long getAmount() {
        return amount;
    }

    public String getcName() {
        return cName;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", amount=" + amount +
                ", cName='" + cName + '\'' +
                '}';
    }
}
@Service(value = "userService")
public class UserServiceImpl implements UserService {

    @Autowired
    private UserDao userDao;

    private List<SimpleGrantedAuthority> getAuthority() {
        return Arrays.asList(new SimpleGrantedAuthority("ROLE_ADMIN"));
    }

    public List<User> findAll() {
        List<User> list = new ArrayList<>();
        userDao.findAll();
        return list;
    }

    @Override
    public User save(User user) {
        return userDao.save(user);
    }
}
@RestController
@RequestMapping("/users")
public class UserController {

    @Autowired
    private UserService userService;

    @GetMapping("/users")
    public List<User> getAllUsers() {
        return userService.findAll();
    }

    @RequestMapping(value = "/user", method = RequestMethod.GET)
    public List<User> listUser() {
        return userService.findAll();
    }

    @RequestMapping(value = "/user", method = RequestMethod.POST)
    public User create(@RequestBody User user) {
        return userService.save(user);
    }

                                                                                                                  

共有1个答案

池麒
2023-03-14

在UserServiceImpl类的公共列表用户findAll()方法上添加@Override

试试看,

http://localhost:8080/users/users

http://localhost:8080/users/user
 类似资料:
  • 我想要的是这样的JSON格式: 现在我把我的代码: 我的基本数据结构定义在实体包中,使用方法可以返回字符串类型的blog标题: 模型视图中,在这个类中,我使用,它的工作原理是: 服务类代码,我使用JPA方法从MySQL:: 那么,我如何通过获得JSON格式字符串列表

  • 我试图在我的应用程序中创建一个搜索功能,它基本上根据用户的查询(如任何产品名称)过滤json数据(如产品列表),并显示最接近的结果。我已经成功实现了这个搜索栏和过滤逻辑,但它是在我的应用程序中我的产品列表的本地json数据上工作的。我想要的是从网络调用(http调用)中获取json数据,然后进行过滤。但是我的实时数据库中有数据,我不知道如何以json格式检索它们。我可以设置云函数(节点js)来将j

  • 因此,我想在我的客户机应用程序上使用HttpScalable云函数加载firestore文档。在我使用典型的getDocuments函数加载文档并返回一组简单的JSON格式快照之前,如下所示: 现在我想加载我的文档,并返回一个HttpScalable云函数。因此,我的云功能运行良好,可以返回文档数据。但我遇到的问题是函数的返回格式。我从云功能接收的数据格式如下: 我通过如下调用函数来观察这一点:

  • 问题内容: 如何使用PHP从JSON对象获取数据? 这是我拥有的PHP代码: 问题答案: foreach($json as $i){ echo $i[‘name’]; }

  • 问题内容: 我需要将一些参数传递给服务器,我需要按照以下格式传递 那么如何在Android中生成这种格式。 我尝试使用如示例5.3中所示的方法,但此行显示错误。任何人都可以帮助解决这个问题。 提前致谢 问题答案: 并不是全部,您想要的输出是JSONObject内的JSONArray和另一个JSONObject内的JSONObject。因此,您可以单独创建它们,然后将它们放在一起。如下。 输出-

  • 问题内容: 我正在尝试将响应数组和响应数组转换为JSON格式。我已经试过被贴在SO和其他网站一样,所有的答案WEB1,web2的增加,然后 但我一直都想与文本格式的输出。有人可以帮我解决这个问题吗? 助手类: 我的控制器: 我尝试打印,它看起来像这样: Json输出:(html / text) 问题答案: 组 在控制器的动作之前。