1. idea new project,勾选 web, jpa 和mysql
pom内容如下:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.4</version>
</dependency>
2. 修改application.properties
server.port = 8080
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/jpa
spring.datasource.username= root
spring.datasource.password= xxxx0510
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.jpa.database=mysql
# 显示后台处理的SQL语句
spring.jpa.show-sql=true
# 自动检查实体和数据库表是否一致,如果不一致则会进行更新数据库表
spring.jpa.hibernate.ddl-auto=update
3. 编写实体类
@Entity
@Table(name="employee")
public class Employee {
@Id
@Column(name="id")
private String id;
@Column(name="name")
private String name;
@Column(name="gender")
private String gender;
@Column(name="age")
private int age;
...getter setter方法代码略}
4. 编写dao层接口
public interface EmployeeRepository extends JpaRepository<Employee,String> {
}
5.编写controller代码
@RestController
@RequestMapping("/employee")
public class EmployeeController {
@Autowired
private EmployeeRepository employeeRepository;
@RequestMapping("/queryall")
@ResponseBody
public List<Employee> queryAll(){
List<Employee> list = new ArrayList<Employee>();
list = employeeRepository.findAll();
return list;
}
@RequestMapping("/querybyid")
@ResponseBody
public Employee queryById(@RequestParam String id){
Employee employee = employeeRepository.findById(id).get();
return employee;
}
findById返回后,需要用get()方法获取实际返回的值。
6. 打包运行测试
![](https://i-blog.csdnimg.cn/blog_migrate/8112a687e2e98bf83402d328b32ab912.png)
7. demo代码地址:https://github.com/wuxidemo/springjpa