spring-boot-starter-data-mongodb操纵MongoDB入门
1.引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
application.yml引入依赖
spring:
data:
mongodb:
host: 127.0.0.1
port: 27017
database: students
2.实体类
/**
* @Author 编程无忧
* @Date 2022/1/27 11:32
* @Desc MongoDB实体类 学生集合
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
//java实体类映射
@Document("students")
public class Students implements Serializable {
@Id
private String _id;
private String id;
private String name;
private Integer age;
}
3.Dao层
/**
* @Author wuyou_python@163.com
* @Date 2022/1/27 12:42
* @Desc
*/
public interface StudentsDao extends MongoRepository<Students,String>{
}
4.service
/**
* @Author wuyou_python@163.com
* @Date 2022/1/27 12:44
* @Desc
*/
public interface StudentsService {
List<Students> findAll();
Students findById(String id);
}
5.实现类
/**
* @Author wuyou_python@163.com
* @Date 2022/1/27 12:45
* @Desc
*/
@Service
public class StudentsServiceImpl implements StudentsService {
@Autowired
private StudentsDao studentsDao;
/**
* @return
*/
@Override
public List<Students> findAll() {
return studentsDao.findAll();
}
/**
* @return
*/
@Override
public Students findById(String id) {
return studentsDao.findById(id).get();
}
}
6.Controller控制层
/**
* @Author wuyou_python@163.com
* @Date 2022/1/27 12:46
* @Desc
*/
@RestController
@CrossOrigin
@RequestMapping("/students")
public class StudentController {
@Autowired
private StudentsService studentsService;
@GetMapping
public Result findAll(){
System.out.println("-----------------------------");
List<Students> list = studentsService.findAll();
for (Students comment : list) {
System.out.println(comment);
}
System.out.println("------------------------------"+list.size());
return new Result(true, StatusCode.OK,list);
}
@GetMapping(value = "/{id}")
public Result<Students> findById(@PathVariable String id){
Students student = studentsService.findById(id);
return new Result(true, StatusCode.OK,student);
}
}
7.结果
以及全局异常拦截: