(1)pom添加相关依赖
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb</artifactId>
<version>1.10.18.RELEASE</version>
</dependency>
(2)注册相关bean
package cn.coreqi.config; import com.mongodb.Mongo;
import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
import com.mongodb.ServerAddress;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.mongodb.config.AbstractMongoConfiguration;
import org.springframework.data.mongodb.repository.config.EnableMongoRepositories;
import java.util.Arrays; @Configuration
@EnableMongoRepositories(basePackages = "cn.coreqi.dao.mongodb")
public class MongodbConfig extends AbstractMongoConfiguration { @Override
protected String getDatabaseName() {
return "springmongo";
} @Override
public Mongo mongo() throws Exception {
MongoCredential credential = MongoCredential.createCredential("fanqi","springmongo","123456".toCharArray());
return new MongoClient(new ServerAddress("192.168.205.128",27017), Arrays.asList(credential));
}
}
(3)编写实体类
package cn.coreqi.entities; import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;
import org.springframework.data.mongodb.core.mapping.Field; import java.io.Serializable; @Document
public class User implements Serializable {
@Id
private Integer Id;
@Field("age")
private Integer Age;
private String UserName;
private String PassWord;
private Integer Enabled; public User(Integer id, Integer age, String userName, String passWord, Integer enabled) {
Id = id;
Age = age;
UserName = userName;
PassWord = passWord;
Enabled = enabled;
} public Integer getId() {
return Id;
} public void setId(Integer id) {
Id = id;
} public Integer getAge() {
return Age;
} public void setAge(Integer age) {
Age = age;
} public String getUserName() {
return UserName;
} public void setUserName(String userName) {
UserName = userName;
} public String getPassWord() {
return PassWord;
} public void setPassWord(String passWord) {
PassWord = passWord;
} public Integer getEnabled() {
return Enabled;
} public void setEnabled(Integer enabled) {
Enabled = enabled;
} @Override
public String toString() {
return "User{" +
"Id=" + Id +
", Age=" + Age +
", UserName='" + UserName + '\'' +
", PassWord='" + PassWord + '\'' +
", Enabled=" + Enabled +
'}';
}
}
(4)编写dao
package cn.coreqi.dao.mongodb; import cn.coreqi.entities.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoOperations;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Repository; @Repository
public class UserMongoDao {
@Autowired
private MongoOperations mongo; public long count(){
return mongo.getCollection("user").count();
}
public void addUser(User user){
mongo.save(user,"user");
}
public User getById(int id){
return mongo.findById(id,User.class);
}
public User getByUserName(String userName){
return mongo.findOne(Query.query(Criteria.where("UserName").is(userName)),User.class);
}
public void delById(int id){
mongo.remove(Query.query(Criteria.where("Id").is(id)),User.class);
}
}