本文章为作者个人学习笔记,仅作参考。
1.application.properties配置
Lisp
spring.data.mongodb.database=[数据库名]
spring.data.mongodb.host=localhost[主机名,本机:localhost]
spring.data.mongodb.port=[数据库端口,默认:27017]
2.根据数据库文档定义实体类:
java
@RequiredArgsConstructor
@ToString
@Document(collection = "first")
@Setter
public class UserData {
@MongoId
ObjectId id;
@NonNull
private Integer code;
@NonNull
private String name;
@Field("data")
private Data data;
private String message;
@Field("refresh_token")
private String refreshToken;
private String status;
private Integer ttl;
}
java
@Persistent
@Collation
@Inherited
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE})
public @interface Document {
@AliasFor("collection")
String value() default ""; // 指定文档名
@AliasFor("value")
String collection() default ""; // 指定文档名
String language() default ""; // 指定文档语言
@AliasFor(
annotation = Collation.class,
attribute = "value"
)
String collation() default ""; // 指定排序规则
}
3.声明接口,可在接口定义自定义查询方法:
java
public interface FirstRepository extends MongoRepository<UserData, String> {
}
4.注入依赖,可使用自带的插入等方法
java
@Repository
public class Example {
private final FirstRepository firstRepository;
@Autowired
public Example(FirstRepository firstRepository) {
this.firstRepository = firstRepository;
}
public void insert(UserData userData) {
firstRepository.save(userData);
System.out.println("插入完成!");
}
}
5.运行实例即可
java
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
ConfigurableApplicationContext context = SpringApplication.run(DemoApplication.class, args);
UserData userData = new UserData(200, "xzt");
Data data = new Data(400);
userData.setData(data);
Example example = context.getBean(Example.class);
example.insert(userData);
}
}