一、所需要的工具
1、mongodb数据库
2、idea
3、jdk 1.8
二、使用步骤
1.引入依赖
代码如下(示例):
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency>
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency>
2、创建实体类
本实例中是使用了lombok插件,所以不用手写set,get方法。
代码如下(示例):
@Data
public class User {
@Id
private String id;
private String username;
private String password;
private String address;
private String[] tags;
}
@Data
@ApiModel("删除")
public class DeleteUserParam {
private String id;
}
@Data
@ApiModel("查找")
public class FindUserParam {
private String id;
}
3.在controller层中创建MongoController类
代码如下(示例):
import com.ddq.springboot_mongodb.entity.User;
import com.ddq.springboot_mongodb.param.DeleteUserParam;
import com.ddq.springboot_mongodb.param.FindUserParam;
import com.ddq.springboot_mongodb.service.Mongoservice;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Optional;
/**
* @author :Dongdequan
* @date :Created in 2022/4/1 14:22
* @modified By:
*/
@RestController
@RequestMapping("/mongodb")
public class MongoController {
@Autowired
private Mongoservice mongoService;
@PostMapping("/hello")
public String test() {
return "hello!";
}
@PostMapping("/findUser")
public Optional<User> findUser(@RequestBody FindUserParam param) {
return mongoService.findUser(param);
}
@PostMapping("/findAll")
public List<User> findAll() {
return mongoService.findAll();
}
@PostMapping("/updateUser")
public String updateUser(@RequestBody User param) {
return mongoService.updateUser(param);
}
@PostMapping("/insertUser")
public String insertUser(@RequestBody User param) {
return mongoService.insertUser(param);
}
@PostMapping("/delete")
public String deleteUser(@RequestBody DeleteUserParam param) {
return mongoService.deleteUser(param);
}
}
4、创建业务层
public interface Mongoservice {
Optional<User> findUser(FindUserParam param);
List<User> findAll();
String updateUser(User param);
String insertUser(User param);
String deleteUser(DeleteUserParam param);
}
@Service
public class MongoServiceImpl implements Mongoservice {
@Autowired
private MongoUserDao mongoDao;
public Optional<User> findUser(FindUserParam param) {
Optional<User> users = mongoDao.findById(param.getId());
return users;
}
public List<User> findAll() {
List<User> users = mongoDao.findAll();
return users;
}
@Override
public String updateUser(User param) {
if (mongoDao.findById(param.getId()).isPresent()) {
mongoDao.save(param);
return "success";
} else {
return "fail";
}
}
@Override
public String insertUser(User param) {
User user = mongoDao.insert(param);
return user.getId();
}
@Override
public String deleteUser(DeleteUserParam param) {
mongoDao.deleteById(param.getId());
return "success";
}
}
5、创建数据持久层
@Repository
public interface MongoUserDao extends MongoRepository<User, String> {
}
到这里就基本实现mongodb的增删查改功能了。
最后就是本人写的代码,里面是引入了swagger.
项目代码:https://gitee.com/ddq168e/springboot_mongodb.git
本文含有隐藏内容,请 开通VIP 后查看