check if a record exist in database using spring boot and JPA repository

16,187

Solution 1

interface ProgramDao extends JpaRepository<CarModel, Integer> {
    boolean existsByRegnoAndName(String regno, String name);
}

Solution 2

You can also use exists method:

  1. Create an object you're looking for and set desired fields.
  2. convert it to Example.
  3. Use repository's exists method.

    CarModel carModel = new CarModel();
    carModel.setRegno(regno);
    carModel.setName(name);
    repo.exists(Example.of(carModel));
    

This is a generic way, that does not require creating a bunch of methods in repository.

Share:
16,187
Hotdot Cyber
Author by

Hotdot Cyber

Updated on July 07, 2022

Comments

  • Hotdot Cyber
    Hotdot Cyber almost 2 years

    I want to check whether a record exist in database before I save. If possible I want to check using two fields i.e regno and name. method to be like checkIfRegNoAndNameExists(){}. my model class

    @Entity
    public class Car {
         @Id
        @GeneratedValue
        private int id;
        private String regno;
        private String name;
        // getters, setters, ...
    }
    

    my dao class

    import org.springframework.data.jpa.repository.JpaRepository;
    public interface ProgramDao extends JpaRepository<CarModel, Integer> {
    }
    

    my service class

    @Service
    public class CarServiceImpl implements ProgramService {
        @Autowired
        private CarDao carDao;
        @Override
        public carModel saveProgram(carModel car) { 
            return carDao.save(program);
        }
    }