Package com.cyran.tp.server.products
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 productsProducts[]
getFirstProducts(java.lang.Integer count)
Selects first n productsProducts
getProductAccordingName(java.lang.String name)
Get product according namevoid
insertProduct(java.lang.String name, java.lang.String description, java.lang.String url, java.lang.Double price)
Inserts new product to databsevoid
updateProduct(java.lang.String name, java.lang.String description, java.lang.String url, java.lang.Double price)
Updates new product to databseMethods 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
-
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 productdescription
- - description of producturl
- - url of productprice
- - 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 productdescription
- - description of producturl
- - url of productprice
- - price of product
-
findAll
java.util.List<Products> findAll()Gets all products
-