Java连接Mongodb数据库
Java连接Mongodb数据库,操作数据
·
一、依赖
<!-- mongodb -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>3.12.0</version>
</dependency>
二、application配置
spring:
application:
name: mongodb
data:
mongodb:
host: 192.168.1.1 # ip
port: 27017 # 端口 默认27017
database: book # 数据库名
三、实体类
@Data
@Document(collection="表名")
public class MongodbData {
@Id
private String id;
/**
* 数据类型为data 使用自定义类接入
*/
private List<MongodbChildData> data;
}
/**
* child子类
*/
@Data
@Document
public class MongodbChildData {
private String id;
private String name;
private int length;
}
四、使用实例
/**
* mongodb接口
*/
public interface MongodbDao {
/**
* 列表
* @return
*/
List<MongodbData> queryList();
/**
* 根据条件查询
* @return
*/
MongodbData query(int id);
void insert(MongodbData model);
void update(MongodbData model);
void delete(MongodbData model);
MongodbData findById(MongodbData model);
}
public class MongodbService implements MongodbDao{
@Resource
private MongoTemplate mongoTemplate;
/**
* 列表
* @return
*/
@Override
public List<MongodbData>getBookList() {
List<MongodbData> all = mongoTemplate.findAll(MongodbData.class);
all.forEach(System.out::print);
return all;
}
/**
* 根据条件查询
* @return
*/
@Override
public MongodbData query(int id) {
Query query = new Query();
query.addCriteria(Criteria.where("id").is(id));
MongodbData one = mongoTemplate.findOne(query, MongodbData.class);
System.out.println(one);
return one;
}
/**
* 新增
*/
public void insert(MongodbData model){
mongoTemplate.save(model);
}
/**
* 编辑
*/
public void update(MongodbData model){
mongoTemplate.save(model);
}
/**
* 删除
*/
public void deleteById(MongodbData model){
MongodbData data = mongoTemplate.findById(model, MongodbData.class);
if(data != null){
mongoTemplate.remove(data);
}
}
/**
* 根据id查询
*/
public MongodbData findById(MongodbData model){
return mongoTemplate.findById(model, MongodbData.class);
}
}
更多推荐
已为社区贡献1条内容
所有评论(0)