mongodb+springmvc+spring+maven配置

弄了一天,记录下过程


首先ressources.propeties

database=MYSQL
database.driver=com.mysql.jdbc.Driver
database.password= ***
database.url=********
database.username=**********
database.driverClassName=net.sf.log4jdbc.DriverSpy

mongo.hostport=127.0.0.1:27017
mongo.connectionsPerHost=8
mongo.threadsAllowedToBlockForConnectionMultiplier=4
#\u8FDE\u63A5\u8D85\u65F6\u65F6\u95F4
mongo.connectTimeout=1000
#\u7B49\u5F85\u65F6\u95F4
mongo.maxWaitTime=1500
mongo.autoConnectRetry=true
mongo.socketKeepAlive=true
#Socket\u8D85\u65F6\u65F6\u95F4
mongo.socketTimeout=1500
mongo.slaveOk=true


这是配置中的参数



mongodb.xml


<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
xmlns:mongo="http://www.springframework.org/schema/data/mongo"
xsi:schemaLocation="http://www.springframework.org/schema/context   
          http://www.springframework.org/schema/context/spring-context-3.0.xsd   
          http://www.springframework.org/schema/data/mongo   
          http://www.springframework.org/schema/data/mongo/spring-mongo-1.0.xsd   
          http://www.springframework.org/schema/beans   
          http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">


<!-- 加载mongodb的属性配置文件 -->
<context:property-placeholder location="classpath:META-INF/spring/resources.properties"/>


<!-- 定义mongo对象,对应的是mongodb官方jar包中的Mongo,replica-set设置集群副本的ip地址和端口 -->
<mongo:mongo id="mongo" replica-set="${mongo.hostport}">
<!-- 一些连接属性的设置 -->
<mongo:options connections-per-host="${mongo.connectionsPerHost}"
threads-allowed-to-block-for-connection-multiplier="${mongo.threadsAllowedToBlockForConnectionMultiplier}"
connect-timeout="${mongo.connectTimeout}" max-wait-time="${mongo.maxWaitTime}"
auto-connect-retry="${mongo.autoConnectRetry}" socket-keep-alive="${mongo.socketKeepAlive}"
socket-timeout="${mongo.socketTimeout}" slave-ok="${mongo.slaveOk}"
write-number="1" write-timeout="0" write-fsync="true" />
</mongo:mongo>
<mongo:db-factory dbname="database" mongo-ref="mongo" />
<bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<!-- <constructor-arg ref="mongo" />

<constructor-arg name="databaseName" value="database" /> --> 
<constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />
</bean>


</beans>

mongoTemplate这个是用来操作数据库的,我们在是service注入注解注入这个,就可以对数据库操作


比如

@Service
public class ClassesServiceImpl implements ClassesService {


@Inject
protected ClassesMapper classesMapper;



@Inject  
protected MongoTemplate mongoTemplate; 


@Override
public Classes getClasses4(Classes classes) {
// TODO Auto-generated method stub
DB db=mongoTemplate.getDb();
System.out.println(db);
return null;
}

}




 //user 实体类

public class User{


@Id
private String id;


private String name;


private String username;


private String password;


private String telephone;


private String salt;


private String mobile;


private String email;


private Date loginDate;


private String loginIp;


private Boolean locked;


private Boolean isStaff;


private Boolean isAdmin;


private Boolean isApply;
private String wechatID;


private String imageUrl;


private Integer status;

//get set 方法省略

}

@Service
public class UserServiceImpl implements UserService {

@Inject
protected MongoTemplate mongoTemplate;

@Override
public List<User> findAlls() {
// TODO Auto-generated method stub
return mongoTemplate.findAll(User.class, "user");
}


@Override
public void deletemongo(Integer id) {
// TODO Auto-generated method stub
mongoTemplate.remove(new org.springframework.data.mongodb.core.query.Query(Criteria.where("id").is(id)), User.class, "user");
}
@Override
public User findOnemongo(Integer id) {
//return mongoTemplate.findOne(new org.springframework.data.mongodb.core.query.Query(Criteria.where("_id").is(id)), User.class, "user");
return mongoTemplate.findById(id, User.class, "user");
}


@Override
public WriteResult updateOnemongo(Integer id) {
//Update update=new Update();
//update.set("username", "chengxuemnan");

return mongoTemplate.updateMulti(new org.springframework.data.mongodb.core.query.Query(Criteria.where("id").is(id)), new Update().set("username", "che"), User.class,"user");
}

}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值