前言
最近开发新项目中用到MongoDB,为方便以后使用便记录下用法。
本文的数据库操作是以model对象进行展开,但是MongoDB是接受以Json,Map等为对象的操作的。
(本人的项目中是以Json为数据库实体的)。【用词可能有不妥请见谅】
一、连接数据库,插入数据
先创建一个普通的Spring boot项目,具体的自己去查吧。配置MongoDB的连接信息:
// 配置信息如下,使用test数据库,注:本人在使用过程发现并不能用 username为admin的账号去操作数据库
spring
.data.mongodb.host=
45.78.X.XXX
spring
.data.mongodb.port=
27017
spring
.data.mongodb.username=hjh
spring
.data.mongodb.password=pwd
spring
.data.mongodb.database=test
创建连接实例MongoTemplate。 本文就不创建controller层了,直接用单元测试跑,代码如下:
@RunWith(SpringRunner.class)
@SpringBootTest
public class SpringbootdemoApplicationTests {
@Autowired
protected MongoTemplate mongoTemplate;
@Test
public void contextLoads() {
testModel testmodel =
new testModel();
testmodel.setAge(
2);
testmodel.setName(
"hjh");
mongoTemplate.insert(testmodel,
"test");
}
}
testModel 对象代码如下:
@Document(collection =
"test")
public class testModel implements Serializable {
/** serialVersionUID */
private static final long serialVersionUID =
1L;
@Id
private String id;
@Field
private String name;
@Field
private int age;
public testModel() {
}
public testModel(String name,
int age) {
this.name = name;
this.age = age;
}
public String
getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public String
getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public void setAge(
int age) {
this.age = age;
}
}
二、运行结果如下: