zoukankan      html  css  js  c++  java
  • Spring Boot MongoDB JPA 简化开发

    使用SpringBoot提供的@Repository接口,可以完成曾经需要大量代码编写和配置文件定制工作。这些以前让新手程序员头疼,让有经验的程序员引以为傲的配置,由于框架的不断完善,变得不那么重要,同时,也提升了程序员的工作效率。

    本文介绍的是如何通过springboot操作MongoDB。

    一.先配置pom.xml

    <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>1.4.1.RELEASE</version>
            <relativePath /> <!-- lookup parent from repository -->
    </parent>
    
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-tomcat</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-data-mongodb</artifactId>
            </dependency>
        </dependencies>

    二.在application.properties中配置MongoDB配置

    spring.data.mongodb.uri=mongodb://root:root@localhost:27017/test

    三.声明entity和repository

    @Document(collection = "t_app")
    @Data
    public class App
    {
        @Id
        private ObjectId id;
        @Field("api_key")
        private String apiKey;
        private String appname;
        private List<Object> activities;
    }
    @Repository
    public interface AppRepository extends MongoRepository<App, ObjectId>
    {
        App findOneByApiKey(String apiKey);
    }

    四.支持的Repository

    image

    image

    ps:KeyWord可以用and方法连起来。

    如:

    List<DiscountCode> findFirst5ByActivityIdInAndEndTimeAfterAndStatus(List<ObjectId> activityIds, Date endTime,String status);

    五.Repository声明和使用

    @Autowired
    private AppRepository appRepository;
  • 相关阅读:
    关于89S51单片机数码管显示的小工具
    重新启动IIS的小工具
    有没有朋友做过动态表结构的,请教一下
    使用PPC的朋友慎用 星空极速3.2.070416_GD
    自定义app_offline.htm,让网站升级提示更专业
    2010全面兼容IE6/IE7/IE8/FF的CSS HACK写法
    CSS Sprites
    自适应宽度圆角按钮,导航,用到了滑动门技术
    设置frameset的高度
    jquey checkbox全选,反选
  • 原文地址:https://www.cnblogs.com/arli/p/7001158.html
Copyright © 2011-2022 走看看