Spring数据中的服务层

时间:2017-05-21 09:33:00

标签: java spring spring-mvc spring-data spring-data-jpa

我正在Spring和Spring Data JPA中构建一个小应用程序。 我需要serval层。我不知道自己表现不错。

这是一个例子:
POJO

@Entity
public class Product {
    @Id
    @GeneratedValue
    private long Id;
    @NotBlank
    private String name;
    @NotNull
    private int price;

    public long getId() {
        return Id;
    }

    public String getName() {
        return name;
    }

    public int getPrice() {
        return price;
    }

    public void setId(long id) {
        Id = id;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setPrice(int price) {
        this.price = price;
    }

    @Override
    public String toString() {
        return "Product{" +
                "Id=" + Id +
                ", name='" + name + '\'' +
                ", price=" + price +
                '}';
    }
}


REPOSITORY

public interface ProductRepository extends CrudRepository<Product, Long> {
    Product findByName(String name);
    List<Product> getAllProducts();
    Product getProductById(String productId);
    void addProduct(Product product);
}


SERVICE

public interface ProductService  {

    List<Product> getAllProducts();
    Product getProductById(String productId);
    void addProduct(Product product);
}


存储库实施

@Service
public class ProductServiceImpl implements ProductService {
    @Autowired
    private ProductRepository productRepository;

    @Override
    public List<Product> getAllProducts() {
        return productRepository.getAllProducts();
    }

    @Override
    public Product getProductById(String productId) {
        return productRepository.getProductById(productId);
    }

    @Override
    public void addProduct(Product product) {
        productRepository.addProduct(product);

    }

}
这是好事吗? 除非如何在Spring中创建与数据库的通信?

1 个答案:

答案 0 :(得分:1)

在sources文件夹中,您创建一个资源文件 src / main / resources / application.properties 并提到以下属性

spring.jpa.hibernate.ddl-auto=create
spring.datasource.url=jdbc:mysql://localhost:3306/db_example
spring.datasource.username=springuser
spring.datasource.password=ThePassword