- 浏览: 264138 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (88)
- JAVA / base (26)
- JAVA / web (12)
- JAVA / Lib-tools (5)
- SERVER / tomcat (4)
- DB / mysql (4)
- DB / mongodb (2)
- DB / memcached (2)
- DB / redis (2)
- WEB / Front-end (3)
- WEB / security (4)
- WEB / css (2)
- WEB / js (4)
- OS / linux (3)
- IT / Architecture (4)
- IT / other (2)
- Android (9)
- Go (1)
- Other (1)
- OS / Mac (2)
最新评论
-
Zero2Max:
哈哈,马士兵老师也发现了。
java实现接口的bug -
xly1981:
能像CSRF攻击一样带个图就更棒了
XSS跨站攻击 -
xmong:
df274119386 写道在javascript中看到下面的 ...
CSRF攻击与防御策略 -
df274119386:
在javascript中看到下面的语句 e.value = t ...
CSRF攻击与防御策略 -
xmong:
yzxqml 写道xmong 写道yzxqml 写道tomca ...
Tomcat集群
Spring Mongodb
目录
1 SPRING整合MONGODB 1
1.1 环境准备 1
1.2 包依赖 1
1.3 配置 2
2 案列 5
2.1 SPRING MVC整合MONGODB代码案例 5
1 Spring整合Mongodb
1.1 环境准备
1. mongodb官网 http://www.mongodb.org/,下载mongodb安装包和mongodb的java驱动包。
mongodb安装包(下载地址http://www.mongodb.org/downloads)。Mongodb的安装和使用可见mongodb权威指南。
mongodb驱动包(下载地址https://github.com/mongodb/mongo-java-driver/downloads)
2. Spring下载中心(http://www.springsource.org/download/community)下载spring,spring-data-mongodb,spring-data-commons包。
1.2 包依赖
项目所需依赖包如下:
Mongodb驱动包:
mongo-2.8.0.jar
spring包:
aopalliance-1.0.jar
commons-logging-1.1.jar
org.springframework.aop-3.1.RELEASE.jar
org.springframework.asm-3.1.RELEASE.jar
org.springframework.beans-3.1.RELEASE.jar
org.springframework.context-3.1.RELEASE.jar
org.springframework.context.support-3.1.RELEASE.jar
org.springframework.core-3.1.RELEASE.jar
org.springframework.expression-3.1.RELEASE.jar
org.springframework.transaction-3.1.RELEASE.jar
org.springframework.web-3.1.RELEASE.jar
org.springframework.web.servlet-3.1.RELEASE.jar
log4j-1.2.16.jar
slf4j-log4j12-1.6.4.jar
slf4j-api-1.6.4.jar
Spring Data Mongodb包:
spring-data-mongodb-1.1.0.M2.jar
Spring Data Commons包:
spring-data-commons-core-1.4.0.M1.jar
1.3 配置
(1)配置Web.xml
注意:url-pattern的配置为‘/’。
(2)配置applicationContext.xml
(3)配置mongo-config.xml
注意:官方文档和案例配置都是旧版本的配置案例,spring-data-mongo从1.0.0.M1到1.0.0.M3的版本叫做Spring Data Document。1.0.0.M4开始更名为Spring Data MongoDB 1.0.0 M4,不过官网并没有特别说明,乍一看有点莫名其妙,尤其是MongoTemplate从org.springframework.data.document.mongod移动到org.springframework.data.mongodb.core,官网的HelloWorldExample却还是用org.springframework.data.document.mongodb做配置案例。多少会导致使用时的误导。
(4)配置spring-servlet.xml
注意:spring-servlet.xml的命名是根据web.xml中配置spring DispatcherServlet的名字 (<servlet-name>spring</servlet-name>)加上-servlet命名的。
2 案列
2.1 Spring mvc整合mongodb代码案例
(1),control层
(2),service层
(3),domain层
(4)测试
http://localhost:8080/TestSpringMongodb/user/save?name=xiaohong&age=23
save:{USER:{uid:5020bef0fe7d16eb86275c7a,name:xiaohong,age:23}}
http://localhost:8080/TestSpringMongodb/user/find?name=xiaohong
find:{USER:{uid:5020bef0fe7d16eb86275c7a,name:xiaohong,age:23}}
目录
1 SPRING整合MONGODB 1
1.1 环境准备 1
1.2 包依赖 1
1.3 配置 2
2 案列 5
2.1 SPRING MVC整合MONGODB代码案例 5
1 Spring整合Mongodb
1.1 环境准备
1. mongodb官网 http://www.mongodb.org/,下载mongodb安装包和mongodb的java驱动包。
mongodb安装包(下载地址http://www.mongodb.org/downloads)。Mongodb的安装和使用可见mongodb权威指南。
mongodb驱动包(下载地址https://github.com/mongodb/mongo-java-driver/downloads)
2. Spring下载中心(http://www.springsource.org/download/community)下载spring,spring-data-mongodb,spring-data-commons包。
1.2 包依赖
项目所需依赖包如下:
Mongodb驱动包:
mongo-2.8.0.jar
spring包:
aopalliance-1.0.jar
commons-logging-1.1.jar
org.springframework.aop-3.1.RELEASE.jar
org.springframework.asm-3.1.RELEASE.jar
org.springframework.beans-3.1.RELEASE.jar
org.springframework.context-3.1.RELEASE.jar
org.springframework.context.support-3.1.RELEASE.jar
org.springframework.core-3.1.RELEASE.jar
org.springframework.expression-3.1.RELEASE.jar
org.springframework.transaction-3.1.RELEASE.jar
org.springframework.web-3.1.RELEASE.jar
org.springframework.web.servlet-3.1.RELEASE.jar
log4j-1.2.16.jar
slf4j-log4j12-1.6.4.jar
slf4j-api-1.6.4.jar
Spring Data Mongodb包:
spring-data-mongodb-1.1.0.M2.jar
Spring Data Commons包:
spring-data-commons-core-1.4.0.M1.jar
1.3 配置
(1)配置Web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>TestSpringMongodb</display-name> <!— spring mvc dispatcher servlet --> <servlet> <servlet-name>spring</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>spring</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
注意:url-pattern的配置为‘/’。
(2)配置applicationContext.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:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <!-- Activates various annotations to be detected in bean classes --> <context:annotation-config /> <!-- Scans the classpath for annotated components that will be auto-registered as Spring beans.For example @Controller and @Service. Make sure to set the correct base-package--> <context:component-scan base-package="bgi.contrl" /> <context:component-scan base-package="bgi.service" /> <!-- Configures the annotation-driven Spring MVC Controller programming model.Note that, with Spring 3.0, this tag works in Servlet MVC only! --> <mvc:annotation-driven /> <!-- Loads MongoDB configuraton --> <import resource="mongo-config.xml"/> </beans>
(3)配置mongo-config.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:p="http://www.springframework.org/schema/p" xmlns:mongo="http://www.springframework.org/schema/data/mongo" 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.xsd"> <!-- Default bean name is 'mongo' --> <mongo:mongo host="localhost" port="27017"/> <!-- Offers convenience methods and automatic mapping between MongoDB JSON documents and your domain classes. --> <bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate"> <constructor-arg ref="mongo"/> <constructor-arg name="databaseName" value="test"/> </bean> </beans>
注意:官方文档和案例配置都是旧版本的配置案例,spring-data-mongo从1.0.0.M1到1.0.0.M3的版本叫做Spring Data Document。1.0.0.M4开始更名为Spring Data MongoDB 1.0.0 M4,不过官网并没有特别说明,乍一看有点莫名其妙,尤其是MongoTemplate从org.springframework.data.document.mongod移动到org.springframework.data.mongodb.core,官网的HelloWorldExample却还是用org.springframework.data.document.mongodb做配置案例。多少会导致使用时的误导。
(4)配置spring-servlet.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:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <!-- Declare a view resolver --> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/" p:suffix=".jsp" /> </beans>
注意:spring-servlet.xml的命名是根据web.xml中配置spring DispatcherServlet的名字 (<servlet-name>spring</servlet-name>)加上-servlet命名的。
2 案列
2.1 Spring mvc整合mongodb代码案例
(1),control层
package bgi.contrl; import java.util.logging.Logger; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; import bgi.pojo.User; import bgi.service.UserService; @Controller @RequestMapping("/user") public class UserCtrl { private static Logger logger = Logger.getLogger(UserCtrl.class.getName()); @Autowired UserService userService; @RequestMapping("/index") public ModelAndView index(){ ModelAndView mav = new ModelAndView("/user/index"); return mav; } @RequestMapping("/save") public ModelAndView saveUser(User user){ ModelAndView mav = new ModelAndView("/user/index"); logger.info("save:"+user); userService.saveUser(user); return mav; } @RequestMapping("/find") public ModelAndView findUser(User user){ ModelAndView mav = new ModelAndView("/user/index"); user = userService.findUserByName(user.getName()); logger.info("find:"+user); return mav; } }
(2),service层
package bgi.service; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Query; import org.springframework.stereotype.Service; import bgi.pojo.User; @Service public class UserService { private static String USER_COLLECTION = "user"; @Autowired MongoTemplate mongoTemplate; /** * * @param user */ public void saveUser(User user){ mongoTemplate.save(user, USER_COLLECTION); } /** * * @param name * @return */ public User findUserByName(String name){ return mongoTemplate.findOne(new Query(Criteria.where("name").is(name)), User.class, USER_COLLECTION); } }
(3),domain层
package bgi.pojo; import java.io.Serializable; import org.springframework.data.annotation.Id; public class User implements Serializable{ private static final long serialVersionUID = 1L; @Id String uid; String name; int age; public String getUid() { return uid; } public void setUid(String uid) { this.uid = uid; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public String toString() { return "{USER:{uid:"+this.uid+",name:"+this.name+",age:"+this.age+"}}"; } }
(4)测试
http://localhost:8080/TestSpringMongodb/user/save?name=xiaohong&age=23
save:{USER:{uid:5020bef0fe7d16eb86275c7a,name:xiaohong,age:23}}
http://localhost:8080/TestSpringMongodb/user/find?name=xiaohong
find:{USER:{uid:5020bef0fe7d16eb86275c7a,name:xiaohong,age:23}}
发表评论
-
Webx3 学习笔记
2014-01-23 16:08 3241Webx学习笔记 1. 什么是webx Webx是一web ... -
mongodb
2012-08-08 14:46 1536Mongodb 目录 1 MONGODB简 ... -
Servlet 3.0 新特性详解
2012-07-04 14:11 1166Servlet 3.0 新特性详解 Se ... -
hibernate的懒加载策略
2012-06-14 11:15 1324所谓懒加载(lazy)就是延时加载 至于为什么要用懒加载呢, ... -
log4j配置相对路径
2012-06-08 15:26 1827log4j相对路径的配置 从网上简单搜索了一下,发现有三种 ... -
log4j的几个配置问题
2012-06-08 11:36 1834Log4j几个问题 1,Log4j输出日志乱码 如果log4 ... -
log4j配置
2012-06-08 11:11 1256Log4j的配置 目录 1 LOG4J基本配置 1 1.1 ... -
Spring RPC远程服务
2012-02-25 21:12 4008Spring RPC远程服务 目录 1 SPRING远程调 ... -
OSGI+SpringDM+Hessian
2011-12-29 22:13 2258OSGI+SpringDM+Hessian 目录 1 ... -
keytool配置tomcat的https
2011-12-13 21:58 2255Keytool配置Tomcat的HTTPS ... -
spring mvc
2011-12-09 19:42 1431Spring MVC 目录 1 SPRINGMV ... -
spring调度任务
2011-12-07 18:57 1828Spring调度任务 目录 1 调度任务 1 1.1 实 ...
相关推荐
总结,Spring整合MongoDB提供了强大的数据访问支持,通过简单的接口和注解,可以让开发者专注于业务逻辑,而不是底层数据库操作。在实际开发中,了解并熟练运用这些知识点,能显著提升开发效率和代码质量。
下面将详细介绍Spring集成MongoDB的相关知识点。 1. **Spring Data MongoDB**: Spring Data项目提供了一套统一的API,使得操作各种持久化存储变得简单。Spring Data MongoDB是该项目的一个模块,它允许开发者通过...
- 这些特性极大地丰富了与 MongoDB 交互的方式,使得 **Spring Data MongoDB** 成为了与 MongoDB 集成的理想选择。 总之,**Spring Data MongoDB** 是一个强大的工具,它不仅简化了与 MongoDB 数据库的交互,还提供...
Spring集成MongoDB官方指定jar包:spring-data-mongodb-1.4.1.RELEASE.jar
**Spring整合MongoDB基于Maven** 在现代Java开发中,Spring框架与MongoDB数据库的集成是常见的选择,尤其是在处理非关系型数据时。MongoDB是一个高性能、无模式的文档型数据库,而Spring提供了强大的框架支持,使得...
同时,Spring Framework提供了对SpringData MongoDB的支持,可以实现依赖注入和与Spring框架的无缝集成。 当需要扩展SpringData的功能时,SpringData MongoDB也提供了一定的扩展机制,例如使用Query DSL扩展进行...
首先,集成MongoDB到Spring项目中,我们需要在`pom.xml`文件中添加MongoDB和Spring Data MongoDB的相关依赖。这通常包括`mongodb-driver`、`spring-data-mongodb`和`spring-boot-starter-data-mongodb`等。例如: `...
当我们需要将Spring与MongoDB整合时,目的是利用Spring的优秀管理和组织能力来操作MongoDB的数据存储。 首先,我们要了解Spring Data MongoDB项目,这是Spring框架对MongoDB支持的一部分。Spring Data MongoDB提供...
在本示例中,我们将深入探讨如何在Spring 3框架中集成Spring Data MongoDB 1.5.6,以便高效地处理MongoDB数据库。...通过学习这些示例,你可以更好地理解和掌握Spring 3与Spring Data MongoDB 1.5.6的整合技巧。
- **Querydsl 支持**:Spring Data MongoDB 集成了 Querydsl,允许开发者使用类型安全的方式来构建复杂的查询。 - **方法命名查询**:通过在 Repository 方法名上遵循一定的命名规则,Spring Data 自动将方法名...
Spring MongoDB模块使得在Spring应用中集成MongoDB变得简单。 首先,我们来了解Spring框架的核心概念。Spring是一个依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)的...
Spring Data MongoDB 是一个用于简化MongoDB数据库操作的框架,它为Spring应用提供了强大的支持,使得开发者可以更加方便地集成和操作非关系型数据库。在这个"spring data mongodb代码参考"中,我们将深入探讨如何...
**Spring Data MongoDB 3.2 整合指南** 在当今的软件开发中,Spring框架以其强大的功能和灵活性深受开发者喜爱,而MongoDB作为一款非关系型数据库,因其高性能、高可扩展性和灵活的数据模型,成为了大数据和实时...
【Spring+MongoDB整合项目详解】 在现代软件开发中,Spring框架和MongoDB数据库的结合是常见的技术选型,尤其适用于需要快速开发、高可扩展性的应用。本项目结合了Spring框架的灵活性与MongoDB的非关系型数据处理...
本文将深入探讨如何在Spring 3.1版本中整合MongoDB,以及提供的jar包资源。 首先,Spring 3.1对MongoDB的支持主要体现在Spring Data MongoDB项目中,它提供了一套完整的抽象层,简化了与MongoDB的交互。Spring Data...
将MongoDB与Spring整合,可以充分利用Spring的IoC(Inversion of Control,控制反转)和AOP(Aspect-Oriented Programming,面向切面编程)特性,以及MongoDB的文档型数据存储优势,实现高效、灵活的数据管理。...