spring-boot
コントローラ
サーチ…
前書き
このセクションでは、Springブートレストコントローラの例として、GetとPost要求を追加します。
スプリングブートレストコントローラ。
この例では、安易で最小限のコードでJPAを使用してデータベースにデータを取得して投稿するために、残りのコントローラを作成する方法を示します。
この例では、buyerRequirementという名前のデータテーブルを参照します。
BuyingRequirement.java
@Entity @Table(name = "BUYINGREQUIREMENTS")@NamedQueries({@NamedQuery(name = "BuyingRequirement.findAll"、query = "SELECT b FROM BuyingRequirement b"}})パブリッククラスBuyingRequirementは、ドメイン実装を継承します。 serialVersionUID = 1L;
@Column(name = "PRODUCT_NAME", nullable = false)
private String productname;
@Column(name = "NAME", nullable = false)
private String name;
@Column(name = "MOBILE", nullable = false)
private String mobile;
@Column(name = "EMAIL", nullable = false)
private String email;
@Column(name = "CITY")
private String city;
public BuyingRequirement() {
}
public String getProductname() {
return productname;
}
public void setProductname(String productname) {
this.productname = productname;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
}
これは、byuingRequirementテーブルの列を参照するパラメータとそのgetterおよびsetterを含むエンティティクラスです。
IBuyingRequirementsRepository.java(JPAインターフェース)
@Repository
@RepositoryRestResource
public interface IBuyingRequirementsRepository extends JpaRepository<BuyingRequirement, UUID> {
// Page<BuyingRequirement> findAllByOrderByCreatedDesc(Pageable pageable);
Page<BuyingRequirement> findAllByOrderByCreatedDesc(Pageable pageable);
Page<BuyingRequirement> findByNameContainingIgnoreCase(@Param("name") String name, Pageable pageable);
}
BuyingRequirementController.java
@RestController
@RequestMapping("/api/v1")
public class BuyingRequirementController {
@Autowired
IBuyingRequirementsRepository iBuyingRequirementsRepository;
Email email = new Email();
BuyerRequirementTemplate buyerRequirementTemplate = new BuyerRequirementTemplate();
private String To = "[email protected]";
// private String To = "[email protected]";
private String Subject = "Buyer Request From Pharmerz ";
@PostMapping(value = "/buyingRequirement")
public ResponseEntity<BuyingRequirement> CreateBuyingRequirement(@RequestBody BuyingRequirement buyingRequirements) {
String productname = buyingRequirements.getProductname();
String name = buyingRequirements.getName();
String mobile = buyingRequirements.getMobile();
String emails = buyingRequirements.getEmail();
String city = buyingRequirements.getCity();
if (city == null) {
city = "-";
}
String HTMLBODY = buyerRequirementTemplate.template(productname, name, emails, mobile, city);
email.SendMail(To, Subject, HTMLBODY);
iBuyingRequirementsRepository.save(buyingRequirements);
return new ResponseEntity<BuyingRequirement>(buyingRequirements, HttpStatus.CREATED);
}
@GetMapping(value = "/buyingRequirements")
public Page<BuyingRequirement> getAllBuyingRequirements(Pageable pageable) {
Page requirements = iBuyingRequirementsRepository.findAllByOrderByCreatedDesc(pageable);
return requirements;
}
@GetMapping(value = "/buyingRequirmentByName/{name}")
public Page<BuyingRequirement> getByName(@PathVariable String name,Pageable pageable){
Page buyersByName = iBuyingRequirementsRepository.findByNameContainingIgnoreCase(name,pageable);
return buyersByName;
}
}
そこにはメソッドが含まれています
- データをデータベースにポストするPostメソッド。
- purchaseRequirementテーブルからすべてのレコードを取得するメソッドを取得します。
- これはまた、人の名前で購入要件を見つけるgetメソッドです。
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow