spring boot中使用spring-data-jpa
2017-04-08 21:01
465 查看
在spring boot中使用spring-data-jpa很方便,但是一些问题要注意
注解主键ID的时候导入包一定要注意,导入包的时候一定是以下示例,否则会出现no identifier specified for entity的错误
import javax.persistence.Id; import javax.persistence.*;
此外,在实体类中如果自己写了构造方法,一定要补上空的构造方法,否则运行可能会出现问题
使用toString()方法时,大部分时候需要重写该方法
以下是示例代码:
package com.example.domain;
import javax.persistence.Id; import javax.persistence.*;
/**
* Created by lenovo on 2017/4/8.
*/
@Entity
public class User {
@GeneratedValue(strategy = GenerationType.AUTO)
@Id
private int id;
@Column(nullable = false)
private String name;
@Column(nullable = false)
private Integer age;
public User() {
}
public User(String name, Integer age) {
this.name = name;
this.age = age;
}
@GeneratedValue(strategy = GenerationType.AUTO)
@Id
public int getId() {
return id;
}
public void setId(int 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;
}
@Override
public String toString() {
return "id: " + id + ", name: " + name + ", age: " + age;
}
}
然后新建一个接口类继承自JpaRepository<>
package com.example.domain;
import org.springframework.data.jpa.repository.JpaRepository;
/**
* Created by lenovo on 2017/4/8.
*/
public interface UserRepository extends JpaRepository<User, Long> {
User findByName(String name);
User findByNameAndAge(String name, Integer age);
}
在使用jdbctemplate的时候要注解@Autowired
以下是示例:
package com.example.web;
import com.example.domain.User;
import com.example.domain.UserRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
/**
* Created by lenovo on 2017/4/8.
*/
@Controller
public class TestControl {
@Autowired
private UserRepository userRepository;
@ResponseBody
@RequestMapping("/create")
public String Save() {
userRepository.save(new User("小明",20));
userRepository.save(new User("小红",19));
userRepository.save(new User("张三",20));
userRepository.save(new User("李四",20));
return "save success";
}
@ResponseBody
@RequestMapping("/findbyname")
public String findbyname() {
User user = userRepository.findByName("小明");
return user.toString();
}
}
相关文章推荐
- 深入学习spring-boot系列(二)--使用spring-data-jpa
- 深入学习spring-boot系列(二)--使用spring-data-jpa
- 深入学习spring-boot系列(二)--使用spring-data-jpa
- 深入学习spring-boot系列(二)--使用spring-data-jpa
- 在spring Boot中使用Spring-data-jpa操作数据库
- 深入学习spring-boot系列(二)--使用spring-data-jpa
- 深入学习spring-boot系列(二)--使用spring-data-jpa
- Spring Boot中使用Spring-data-jpa让数据访问更简单、更优雅
- 深入学习spring-boot系列(二)--使用spring-data-jpa
- 深入学习spring-boot系列(二)--使用spring-data-jpa
- springboot(五):spring data jpa的使用
- Spring Boot中使用Spring-data-jpa让数据访问更简单、更优雅
- 深入学习spring-boot系列(二)--使用spring-data-jpa
- • Spring Boot 进 阶- 数 据 访 问-使用spring-data-jpa 操作数据库
- springboot 学习笔记【3】Spring Boot中使用Spring-data-jpa
- 深入学习spring-boot系列(二)--使用spring-data-jpa
- 深入学习spring-boot系列(二)--使用spring-data-jpa
- 深入学习spring-boot系列(二)--使用spring-data-jpa
- 深入学习spring-boot系列(二)--使用spring-data-jpa
- 深入学习spring-boot系列(二)--使用spring-data-jpa