一.entity上定义
1.entity定义SQL
@Entity
@Table(name = "user", schema = "test", catalog = "")
@NamedQuery(name = "UserEntity.all", query = "select u from UserEntity u ")
public class UserEntity {
private int id;
private String name;
private String email;
2.repository中调用
List<UserEntity> all();
二.repository中定义
1.非原生SQL-注意与原生SQL写法的区别
@Query("select u from UserEntity u")
List<UserEntity> getAll();
2.原生SQL
@Query(value = "select u.id,u.name,u.email from user u",nativeQuery = true)
List<UserEntity> getAllNative();
3.带有参数的SQL-原生/非原生 相同
@Query(value = "select u from UserEntity u where u.name = :name")
List<UserEntity> getByName(@Param("name") String name);
// ?1 表示第一个形参,?2表示第二个形参,依次类推
@Query(value = "select u from UserEntity u where u.name = ?1")
List<UserEntity> getByName(String name);