Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Spring Data JPA - Berikan nama dan nilai kolom sebagai parameter

Lihat Spesifikasi data sping . Anda dapat menemukan solusi Anda di sana!
Membaca dokumen Anda dapat melihat bahwa jika Calendar adalah domain Anda (saya akan mencoba mencari nama lain untuk domain saya, ada Kalender class di Java SE), maka Anda bisa menggunakan sesuatu seperti di atas,

@Repository
public interface CalendarRepository extends JpaRepository<Calendar, Integer>, JpaSpecificationExecutor<Calendar> {
}


public class CalendarSpecification implements Specification<Calendar> {

    private String randomColumnName; // A varchar column.
    private String valueToSearchFor;

    public CalendarSpecification(String randomColumnName, String valueToSearchFor) {
        this.randomColumnName = randomColumnName;
        this.valueToSearchFor = valueToSearchFor;
    }

    @Override
    public Predicate toPredicate(Root<Calendar> root, CriteriaQuery<?> query, CriteriaBuilder builder) {
        return builder.and(builder.equal(root.<String>get(this.randomColumnName), this.valueToSearchFor));
    }
}


@Service
public class CalendarService {

    @Autowired
    private CalendarRepository calendarRepository;

    public List<Calendar> findCustom(String randomColumnName, String valueToSearchFor) {
        CalendarSpecification cs = new CalendarSpecification(randomColumnName, valueToSearchFor);
        return calendarRepository.find(cs);
        // Or using lambda expression - without the need of CalendarSpecification class.
//      return calendarRepository.find((Root<ProductCategory> root, CriteriaQuery<?> query, CriteriaBuilder builder) -> {
//          return builder.and(builder.equal(root.<String>get(randomColumnName), valueToSearchFor));
//      });
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menambahkan nama Skema ke entitas di data Spring?

  2. Perilaku kinerja Oracle yang tidak konsisten dari kueri

  3. Oracle ke Derby - ConnectBy dan Mulai Dengan Setara di Derby

  4. ORA-01000:kursor terbuka maksimum terlampaui di asp.net

  5. Bagaimana cara menghubungkan Android dengan database Oracle?