Spring Boot学习进阶笔记(三)-Spring-data-jpa
Spring-data-jpa:简化数据库访问的流程
知识储备:Spring-data-jpa基于hibernate,所以需要了解hibernate的相关知识。
一、首先建立自己的数据库(test)和表(user),表的属性如下图
二、建立实体类“User.java"
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
@Entity
public class User {
@Id
@GeneratedValue
private Long id;
@Column(nullable = false)
private String name;
@Column(nullable = false)
private Integer age;
public User() {
super();
}
public User(String name, Integer age) {
super();
this.name = name;
this.age = age;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
}
三、application.properties添加数据库链接属性
spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.jpa.properties.hibernate.hbm2ddl.auto=validate
四、创建数据库访问类
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import com.zh.SpringBootDemo.domain.User;
public interface UserRepository extends JpaRepository<User, Long> {
User findByName(String name);
User findByNameAndAge(String name, Integer age);
@Query("from User u where u.name=:name")
User findUser(@Param("name") String name);
}
Spring-data-jpa根据方法名解析或者通过@Query配置获取访问方法。
具体使用功能很强大,使用的小伙伴再单独学习吧。
开发工作着,生活快乐着,留下总结,相互交流,共同进步