最近在学习Spring Boot,继续前面的学习,这一次我们加入MySQL数据库和JPA。
配置:
pom.xml文件
1
2
3
4
5
6
7
8
9
|
<!-- 添加Mysql和JPA-->
< dependency >
< groupId >org.springframework.boot</ groupId >
< artifactId >spring-boot-starter-data-jpa</ artifactId >
</ dependency >
< dependency >
< groupId >mysql</ groupId >
< artifactId >mysql-connector-java</ artifactId >
</ dependency >
|
在Application.properties(在resource文件夹下新建,进行配置)文件中添加数据进行配置:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
spring.datasource.url = jdbc:mysql://localhost:3306/spring_boot
spring.datasource.username = root
spring.datasource.password = root
spring.datasource.driverClassName = com.mysql.jdbc.Driver
# Specify the DBMS
spring.jpa.database = MYSQL
# Show or not log for each sql query
spring.jpa.show-sql = true
# Hibernate ddl auto (create, create-drop, update)
spring.jpa.hibernate.ddl-auto = update
# Naming strategy
spring.jpa.hibernate.naming-strategy = org.hibernate.cfg.ImprovedNamingStrategy
# stripped before adding them to the entity manager)
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
|
User类
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
package com.seawater.bean;
import javax.persistence.*;
import javax.validation.constraints.NotNull;
/**
* Created by zhouhs on 2016/12/30.
*/
@Entity
@Table (name = "user" )
public class User {
@Id
@GeneratedValue (strategy = GenerationType.AUTO)
private Long id;
private String name;
private int 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 int getAge() {
return age;
}
public void setAge( int age) {
this .age = age;
}
}
|
UserController
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
package com.seawater.controller;
import com.seawater.Dao.UserDao;
import com.seawater.bean.User;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
/**
* Created by zhouhs on 2016/12/30.
*/
@RestController
@RequestMapping (value = "/user" )
@Api (description = "用户" )
public class UserController {
@Resource
UserDao userDAO;
@ApiOperation (value = "添加用户" )
@ApiImplicitParams ({
@ApiImplicitParam (name = "name" , value = "name" , paramType = "query" , required = true ),
@ApiImplicitParam (name = "age" , value = "age" , paramType = "query" , required = true )
})
@RequestMapping (value = "/addUser" , method = RequestMethod.POST)
public String addUser( @RequestParam (value = "name" ) String name, @RequestParam (value = "age" ) int age){
User user = new User();
user.setName(name);
user.setAge(age);
userDAO.save(user);
return "add user success !" ;
}
@ApiOperation (value = "查找用户" )
@ApiImplicitParam (name = "id" , value = "id" , paramType = "query" , required = true , dataType = "int" )
@RequestMapping (value = "/findById" , method = RequestMethod.POST)
public String findById( @RequestParam (value = "id" ) Long id){
User user = userDAO.findById(id);
if (user == null ){
return "error" ;
} else {
return "name:" + user.getName() + " , age:" + user.getAge();
}
}
@ApiOperation (value = "查询所有用户" )
@RequestMapping (value = "/findAll" , method = RequestMethod.POST)
public Iterable findAll(){
Iterable<User> userList = userDAO.findAll();
return userList;
}
@ApiOperation (value = "删除用户" )
@ApiImplicitParam (name = "id" , value = "id" , paramType = "query" , required = true , dataType = "int" )
@RequestMapping (value = "/deleteById" , method = RequestMethod.POST)
public String deleteById( @RequestParam (value = "id" ) Long id){
userDAO.delete(id);
return "delete success !" ;
}
}
|
数据表(id定义为Integer):
UserDao:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
package com.seawater.Dao;
import com.seawater.bean.User;
import org.springframework.data.repository.CrudRepository;
/**
* Created by zhouhs on 2016/12/30.
*/
public interface UserDao extends CrudRepository<User, Long> {
public User findById(Long id);
}
|
然后启动项目:访问http://localhost:8081/swagger-ui.html
结果:
方法我就不一一操作了。
源码地址(项目中的源码可能会更多哦,需要自己找到对应源码):SpringBootLearning.rar
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:http://blog.csdn.net/zhouseawater/article/details/53945073