1. Create an entity class bean
PackageCom.example.bean;ImportJavax.persistence.*; @Table (name= "Grade") @Entity Public classGrade {@Id @GeneratedValue (strategy= Generationtype.auto)//ID and Generatedvalue must be used simultaneously Private intID; PrivateString Gradenm; Private intTeacherid; @Override PublicString toString () {return"grade{" + "id=" + ID + ", gradenm=" + gradenm + "\" + ", teacherid=" + Tea Cherid + '} '; } Public intgetId () {returnID; } Public voidSetId (intID) { This. ID =ID; } PublicString Getgradenm () {returnGradenm; } Public voidsetgradenm (String gradenm) { This. Gradenm =Gradenm; } Public intGetteacherid () {returnTeacherid; } Public voidSetteacherid (intTeacherid) { This. Teacherid =Teacherid; }}
2. Create Repository
1) crudrepository
Packagecom.example.reposittory;ImportCom.example.bean.Grade;ImportOrg.springframework.data.jpa.repository.Query;Importorg.springframework.data.repository.CrudRepository;ImportOrg.springframework.data.repository.query.Param; Public InterfaceGradecrudrepositoryextendsCrudrepository<grade,integer> { PublicGrade findbygradenm (String gradenm); @Query (Value= "from Grade b where gradenm=:nm") PublicGrade Findmygrade (@Param ("NM") String gradenm); }
2) Repository
Packagecom.example.reposittory;ImportCom.example.bean.Grade;ImportOrg.springframework.data.jpa.repository.Query;Importorg.springframework.data.repository.Repository;ImportOrg.springframework.data.repository.query.Param; Public InterfaceGraderepositoryextendsRepository<grade,integer> { PublicGrade findbygradenm (String gradenm); @Query (Value= "from Grade b where gradenm=:nm") PublicGrade Findmygrade (@Param ("NM") String gradenm);}
3) Pagingandsortingrepository
Packagecom.example.reposittory;ImportCom.example.bean.Grade;ImportOrg.springframework.data.jpa.repository.Query;Importorg.springframework.data.repository.CrudRepository;Importorg.springframework.data.repository.PagingAndSortingRepository;ImportOrg.springframework.data.repository.query.Param; Public InterfaceGradepageandsortrepositoryextendsPagingandsortingrepository<grade,integer>{Grade findbygradenm (String gradenm); @Query (Value= "from Grade b where gradenm=:nm") Grade Findmygrade (@Param ("NM") String gradenm); }
3. Create service
PackageCom.example.service;ImportCom.example.bean.Grade;Importcom.example.reposittory.GradeRepository;Importcom.example.reposittory.GradeCrudRepository;Importorg.springframework.data.domain.PageRequest;Importorg.springframework.data.repository.PagingAndSortingRepository;ImportOrg.springframework.stereotype.Service;ImportJavax.annotation.Resource;Importjavax.transaction.Transactional; @Service Public classGradeservice {@ResourcePrivategraderepository graderepository; @ResourcePrivategradecrudrepository GradeRepository2; @ResourcePrivatepagingandsortingrepository GradeRepository3; PublicGrade findbygradenm (String gradenm) {Grade bygradenm=Graderepository.findbygradenm (GRADENM); returnBygradenm; } PublicGrade Findmygrade (String gradenm) {Grade bygradenm=Graderepository.findmygrade (GRADENM); returnBygradenm; } @Transactional Public voidSave (Grade Grade) {graderepository2.save (Grade); } @Transactional Public voidDeleteintID) {graderepository2.delete (ID); } PublicIterable<grade>GetAll () {returnGraderepository3.findall (NewPagerequest (0,3)); }}
4. Create control
PackageCom.example.controller;ImportCom.example.bean.Grade;ImportCom.example.service.GradeService;Importorg.springframework.web.bind.annotation.*;ImportJavax.annotation.Resource;Importjava.util.ArrayList;ImportJava.util.Iterator;Importjava.util.List; @RestController Public classGradecontroller {@ResourcePrivateGradeservice Gradeservice; @RequestMapping ("/findbygradenm") PublicGrade findbygradenm (String gradenm) {Grade bygradenm=Gradeservice.findbygradenm (GRADENM); returnBygradenm; } @RequestMapping ("/findmygradenm") PublicGrade Findmygrade (String gradenm) {Grade bygradenm=Gradeservice.findmygrade (GRADENM); returnBygradenm; } @RequestMapping ("/save") PublicString Save (@RequestParam ("Gradenm") string gradenm, @RequestParam ("id")intID) {Grade Grade=NewGrade (); Grade.setgradenm (GRADENM); Grade.setteacherid (ID); Gradeservice.save (grade); return"Success"; } @RequestMapping ("/delete") PublicString Delete (intID) {gradeservice.delete (ID); return"Success"; } @RequestMapping (Value= "/getall", method =requestmethod.get) Public@ResponseBody list<grade>GetAll () {iterable<Grade> all =Gradeservice.getall (); Iterator<Grade> iterator =All.iterator (); List<Grade> grades =NewArraylist<>(); while(Iterator.hasnext ()) {Grade Grade=Iterator.next (); Grades.add (grade); } returngrades; }}
5. Spring Boot entry
Package com.example; Import org.springframework.boot.SpringApplication; Import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication Public class hctspringbootapplication { publicstaticvoid main (string[] args ) { Springapplication.run (hctspringbootapplication. class , args);} }
6. Testing
1) Check All
2) Save data
Spring boot and Spring Data JPA