Interface ProductsRepository

All Superinterfaces:
org.springframework.data.repository.CrudRepository<Products,​java.lang.Integer>, org.springframework.data.jpa.repository.JpaRepository<Products,​java.lang.Integer>, org.springframework.data.jpa.repository.JpaSpecificationExecutor<Products>, org.springframework.data.repository.PagingAndSortingRepository<Products,​java.lang.Integer>, org.springframework.data.repository.query.QueryByExampleExecutor<Products>, org.springframework.data.repository.Repository<Products,​java.lang.Integer>

public interface ProductsRepository
extends org.springframework.data.jpa.repository.JpaRepository<Products,​java.lang.Integer>, org.springframework.data.jpa.repository.JpaSpecificationExecutor<Products>
Product repository for making query to Product table
Author:
Jakub Perdek
  • Method Summary

    Modifier and Type Method Description
    java.util.List<Products> findAll()
    Gets all products
    Products[] getFirstProducts​(java.lang.Integer count)
    Selects first n products
    Products getProductAccordingName​(java.lang.String name)
    Get product according name
    void insertProduct​(java.lang.String name, java.lang.String description, java.lang.String url, java.lang.Double price)
    Inserts new product to databse
    void updateProduct​(java.lang.String name, java.lang.String description, java.lang.String url, java.lang.Double price)
    Updates new product to databse

    Methods inherited from interface org.springframework.data.repository.CrudRepository

    count, delete, deleteAll, deleteAll, deleteById, existsById, findById, save

    Methods inherited from interface org.springframework.data.jpa.repository.JpaRepository

    deleteAllInBatch, deleteInBatch, findAll, findAll, findAll, findAllById, flush, getOne, saveAll, saveAndFlush

    Methods inherited from interface org.springframework.data.jpa.repository.JpaSpecificationExecutor

    count, findAll, findAll, findAll, findOne

    Methods inherited from interface org.springframework.data.repository.PagingAndSortingRepository

    findAll

    Methods inherited from interface org.springframework.data.repository.query.QueryByExampleExecutor

    count, exists, findAll, findOne
  • Method Details

    • getFirstProducts

      @Query(value="SELECT * FROM products LIMIT ?1", nativeQuery=true) Products[] getFirstProducts​(java.lang.Integer count)
      Selects first n products
      Parameters:
      count - - number n which limits number of obtained products
      Returns:
      array of products obtained according name - max count products
    • getProductAccordingName

      @Query(value="SELECT * FROM products WHERE name = ?1 LIMIT 1", nativeQuery=true) Products getProductAccordingName​(java.lang.String name)
      Get product according name
      Parameters:
      name - - name which identifies product
      Returns:
      array of products obtained according name
    • insertProduct

      @Query(value="INSERT INTO products(name, description, url, price) VALUES (password = ?1, description = ?2, url = ?3, price = ?4)", nativeQuery=true) @Modifying @Transactional void insertProduct​(java.lang.String name, java.lang.String description, java.lang.String url, java.lang.Double price)
      Inserts new product to databse
      Parameters:
      name - - name of product
      description - - description of product
      url - - url of product
      price - - price of product
    • updateProduct

      @Query(value="UPDATE products SET description = ?2, url = ?3, price = ?4 WHERE name = ?1", nativeQuery=true) @Modifying @Transactional void updateProduct​(java.lang.String name, java.lang.String description, java.lang.String url, java.lang.Double price)
      Updates new product to databse
      Parameters:
      name - - name of product
      description - - description of product
      url - - url of product
      price - - price of product
    • findAll

      java.util.List<Products> findAll()
      Gets all products
      Specified by:
      findAll in interface org.springframework.data.repository.CrudRepository<Products,​java.lang.Integer>
      Specified by:
      findAll in interface org.springframework.data.jpa.repository.JpaRepository<Products,​java.lang.Integer>
      Returns:
      all products from database