Employee employee = new Employee("...");
//save employee object into "employee" collection
mongoOperation.save(employee);
//save employee object into "newCollection" collection
mongoOperation.save("newCollection",employee );
//save employee object into "employee" collection
mongoOperation.insert(employee);
//save employee object into "newCollection" collection
mongoOperation.insert("newCollection", employee );
//save list of employee objects into "employee" collection
mongoOperation.insertList(employeeInList);
//save list of employee objects into "newCollection" collection
mongoOperation.insertList("newCollection", employeeInList);
void save (Object objectToSave) Save the object to the default collection.void save (Object objectToSave, String collectionName) Save the object to the specified collection.void insert (Object objectToSave) Insert the object to the default collection.void insert (Object objectToSave, String collectionName) Insert the object to the specified collection.public void save(Object objectToSave) {
save(getEntityCollection(objectToSave), objectToSave);
}

package com.dineshonjava.mongo.dto;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;
/**
* @author Dinesh Rajput
*
*/
@Document(collection = "dojCollection")
public class Employee {
@Id
private int empId;
private String empName;
private long salary;
private int empAge;
public int getEmpId() {
return empId;
}
public void setEmpId(int empId) {
this.empId = empId;
}
public String getEmpName() {
return empName;
}
public void setEmpName(String empName) {
this.empName = empName;
}
public long getSalary() {
return salary;
}
public void setSalary(long salary) {
this.salary = salary;
}
public int getEmpAge() {
return empAge;
}
public void setEmpAge(int empAge) {
this.empAge = empAge;
}
@Override
public String toString() {
return "Employee [age=" + empAge + ", empName=" + empName + ", empId="
+ empId + ", salary=" + salary + "]";
}
}
<beans xmlns:context="http://www.springframework.org/schema/context" xmlns:mongo="http://www.springframework.org/schema/data/mongo" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans" xsi:schemalocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/data/mongo
http://www.springframework.org/schema/data/mongo/spring-mongo-1.0.xsd">
<!-- Default bean name is 'mongo' -->
<mongo:mongo host="localhost" port="27017"/>
<!-- Default bean name is 'mongo' -->
<mongo:mongo>
<mongo:options connections-per-host="100"
threads-allowed-to-block-for-connection-multiplier="5"
max-wait-time="120000000"
connect-timeout="10000000"
socket-keep-alive="true"
socket-timeout="15000000"
auto-connect-retry="true"/>
</mongo:mongo>
<context:annotation-config/>
<context:component-scan base-package="com.dineshonjava.mongo">
<context:exclude-filter type="annotation" expression="org.springframework.context.annotation.Configuration"/>
</context:component-scan>
<!-- Offers convenience methods and automatic mapping between MongoDB JSON documents and your domain classes. -->
<bean class="org.springframework.data.mongodb.core.MongoTemplate" id="mongoTemplate">
<constructor-arg ref="mongo"/>
<constructor-arg name="databaseName" value="dineshonjavaDB"/>
</bean>
</beans>
package com.dineshonjava.mongo.main;
import static org.springframework.data.mongodb.core.query.Criteria.where;
import static org.springframework.data.mongodb.core.query.Query.query;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoOperations;
import org.springframework.stereotype.Repository;
import com.dineshonjava.mongo.dto.Employee;
/**
* @author Dinesh Rajput
*
*/
@Repository
public class HelloMongoDB {
@Autowired
MongoOperations mongoOperations;
public void execute() {
if (mongoOperations.collectionExists(Employee.class)) {
mongoOperations.dropCollection(Employee.class);
}
// Case1 - insert a employee, put "DOJ" as collection name
Employee employee = new Employee();
employee.setEmpId(1001);
employee.setEmpName("Anamika Rajput");
employee.setSalary(30000);
employee.setEmpAge(23);
mongoOperations.save(employee, "DOJ");
// find
Employee employee1 = mongoOperations.findOne(query(where("empId").is(1001)), Employee.class,"DOJ");
System.out.println(employee1);
// Case2 - insert a employee, put entity as collection name
Employee employee2 = new Employee();
employee2.setEmpId(1002);
employee2.setEmpName("Dinesh Rajput");
employee2.setSalary(70000);
employee2.setEmpAge(26);
mongoOperations.save(employee2);
// find
Employee employee3 = mongoOperations.findOne(query(where("empId").is(1002)), Employee.class);
System.out.println(employee3);
// Case3 - insert a list of employees
Employee employee4 = new Employee();
employee4.setEmpId(1003);
employee4.setEmpName("Adesh Rajput");
employee4.setSalary(30000);
employee4.setEmpAge(23);
Employee employee5 = new Employee();
employee5.setEmpId(1004);
employee5.setEmpName("Vinesh Rajput");
employee5.setSalary(32000);
employee5.setEmpAge(23);
Employee employee6 = new Employee();
employee6.setEmpId(1005);
employee6.setEmpName("Sweety Rajput");
employee6.setSalary(50000);
employee6.setEmpAge(22);
List<Employee> empList = new ArrayList<Employee>();
empList.add(employee4);
empList.add(employee5);
empList.add(employee6);
mongoOperations.insert(empList, "Employee-List");
List<Employee> results = mongoOperations.find(query(where("empAge").is(23)), Employee.class, "Employee-List");
System.out.println("Results: " + results);
}
}
package com.dineshonjava.mongo.main;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
/**
* @author Dinesh Rajput
*
*/
public class HelloMongoTestApp {
/**
* @param args
*/
public static void main(String[] args) {
ConfigurableApplicationContext context = new ClassPathXmlApplicationContext("mongo-config.xml");
HelloMongoDB hello = (HelloMongoDB) context.getBean("helloMongoDB");
hello.execute();
System.out.println( "DONE!" );
}
}
Labels: mongodb