引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
配置
spring.datasource.url = jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai
spring.datasource.username = root
spring.datasource.password = ccc+022599
spring.datasource.driver-class-name = com.mysql.cj.jdbc.Driver
spring.jpa.generate-ddl=false
spring.jpa.show-sql = true
编写实体类
@Slf4j
@Data
@AllArgsConstructor
@NoArgsConstructor
@Entity
@Table(name = "user")
public class User implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
private Long id;
@Column(name = "name")
private String name;
@Column(name = "password")
private String password;
}
编写dao
@Repository
public interface UserDao extends JpaRepository<User, Long>{
@Transactional
@Modifying
@Query("update User u set u.name=?1 where u.id=?2")
void update(String username,Long id);
@Query(value = "select u from User u where u.name like %?1%")
Page<IUser> testPage(String name, Pageable page);
}
增删改查
@SpringBootTest
@Slf4j
public class JPATest {
@Autowired
IUserDao userDao;
@Test
void update(){
userDao.update("哈哈哈哈", 12L);
}
@Test
void testSort(){
Sort sort = Sort.by(Sort.Order.desc("id"), Sort.Order.asc("name"));
List<User> all = userDao.findAll(sort);
}
@Test
void testPage() {
Page<IUser> page = userDao.testPage("哈哈哈", PageRequest.of(0, 4));
}
}
相关文章
juejin.cn/post/684490…
juejin.cn/post/719502…
juejin.cn/post/684490…