在下面找到我的代码
PensionerDetails.java
package com.pension.model;
import jakarta.persistence.Column;
import jakarta.persistence.Embedded;
import jakarta.persistence.Entity;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Entity
@AllArgsConstructor
@NoArgsConstructor
@Data
@Table(name="pensioner_detail")
public class PensionerDetail {
@Id
private String aadhar;
private String name;
private String DOB;
private String Pan;
private Double salary;
private Double allowance;
private String pension_class;
@Embedded
@Column(name="bank")
private Bank bank;
@Override
public String toString() {
return "PensionerDetail [aadhar=" + aadhar + ", name=" + name + ", DOB=" + DOB + ", Pan=" + Pan + ", salary="
+ salary + ", allowance=" + allowance + ", pension_class=" + pension_class + ", bank=" + bank + "]";
}
}
Bank.java
package com.pension.model;
import jakarta.persistence.Embeddable;
import jakarta.persistence.Entity;
import jakarta.persistence.Id;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Embeddable
@AllArgsConstructor
@Data
@NoArgsConstructor
public class Bank {
private String bank_name;
private long acc_num;
private String bank_type;
@Override
public String toString() {
return "Bank [bank_name=" + bank_name + ", acc_num=" + acc_num + ", bank_type=" + bank_type + "]";
}
}
Pensionrepo.java
package com.pension.repository;
import java.util.List;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.stereotype.Repository;
import com.pension.model.PensionerDetail;
@Repository
public interface Pensionrepo extends JpaRepository<PensionerDetail, String>{
//
// @Query("select p1_0.aadhar,p1_0.DOB,p1_0.Pan,p1_0.allowance,p1_0.acc_num,p1_0.bank_name,p1_0.bank_type,p1_0.name,p1_0.pension_class,p1_0.salary from PensionerDetail p1_0 where p1_0.aadhar=?1")
public List<PensionerDetail> findByAadhar(String adhar);
}
PensionService.java
package com.pension.service;
import java.util.List;
import java.util.Optional;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.pension.model.PensionerDetail;
import com.pension.repository.Pensionrepo;
@Service
public class PensionService {
@Autowired
private Pensionrepo pensionrepo;
public String savePensionDetails(PensionerDetail pensionerDetail) {
pensionrepo.save(pensionerDetail);
return "PensionDetails are saved successfully";
}
public Optional<PensionerDetail> getPensionByAadhar(String Aadhar) {
// TODO Auto-generated method stub
System.out.println(pensionrepo.findById(Aadhar));
return pensionrepo.findById(Aadhar);
}
public List<PensionerDetail> pensionerDetails() {
// TODO Auto-generated method stub
return pensionrepo.findAll();
}
}
PensionController.java
package com.pension.controller;
import java.util.List;
import java.util.Optional;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
import com.pension.model.PensionerDetail;
import com.pension.service.PensionService;
@RestController
public class PensionController {
@Autowired
private PensionService pensionService;
@PostMapping("/savePensionDetails")
public String savePension( @RequestBody PensionerDetail pensionerDetail) {
return pensionService.savePensionDetails(pensionerDetail);
}
@GetMapping("/getByAadhar/{aadhar}")
public Optional<PensionerDetail> getPensionByAadhar(@PathVariable String aadhar) {
return pensionService.getPensionByAadhar(aadhar);
}
@GetMapping("/all")
public List<PensionerDetail> pensionerDetails(){
System.out.println(pensionService.pensionerDetails());
return pensionService.pensionerDetails();
}
}
application.properties
spring.datasource.url=jdbc:mysql://localhost/pension
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.jpa.database-platform=org.hibernate.dialect.MySQLDialect
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
spring.jpa.defer-datasource-initialization=true
Find my mysql table detals here
我已经创建了表和插入值,但当我调用GetMapping方法时,我可以在控制台中看到数据,但在post man中只是显示空列表。有人能帮我这个忙吗?我刚开始学习Spring。
我期待解决我的问题,因为在控制台,我可以看到的数据,然后为什么它不是在 Postman 打印数据。
Postman image
对于PostMapping请求,我得到此错误error
这就是我在postman postman postmapping中传递值的方式。
while executing mvn clean compile i am getting build failure
1条答案
按热度按时间mfuanj7w1#
经过一番评论。要在 Postman 响应机构中产生结果,您应该做一些更改。
控制器层中的Post方法应该有一个
@RequestBody
注解:在Postman中,用你写的评论中的对象,我得到了下一个结果:
毕竟,当我调用
/all
端点时,我会得到下一个结果: