1、添加依赖
复制代码
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> <version>2.1.6.RELEASE</version> </dependency>
完整pom.xm文件
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.7.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.vue</groupId> <artifactId>demo</artifactId> <version>0.0.1-SNAPSHOT</version> <name>demo</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.49</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.26</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.20</version> </dependency> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>2.2.0</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.8.0</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.8.0</version> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-data-mongodb --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> <version>2.1.6.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
2、applicaiton.yml
server: port: 8081 mybatis-plus: typeAliasesPackage: com.vue.demo.entity mapperLocations: classpath:mapper/*.xml spring: datasource: url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=GMT%2B8 username: root password: yang156122 driver-class-name: com.mysql.jdbc.Driver # 使用druid数据源 type: com.alibaba.druid.pool.DruidDataSource redis: #redis单机配置 host: localhost port: 6379 # 选择redis的数据库的分库 database: 5 #redis连接池配置 jedis: pool: max-idle: 10 min-idle: 5 max-active: 100 max-wait: 3000 timeout: 6005 data: mongodb: uri: mongodb://localhost:27017/userArticle
3、Mongodb增删改查
package com.vue.demo.service.serviceimpl; import com.alibaba.fastjson.JSONObject; import com.mongodb.client.result.DeleteResult; import com.mongodb.client.result.UpdateResult; import com.vue.demo.entity.UserArticle; import com.vue.demo.service.UserArticleService; 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.data.mongodb.core.query.Update; import org.springframework.stereotype.Service; import java.util.List; /** * @author yangwj * @date 2020/3/28 11:07 */ @Service public class UserArticleServiceImpl implements UserArticleService { @Autowired private MongoTemplate mongoTemplate; @Override public UserArticle getArticleByTitle(String title) { Query query = new Query(); query.addCriteria(Criteria.where("articleTitle").is(title)); UserArticle article = mongoTemplate.findOne(query, UserArticle.class); return article; } @Override public UserArticle insertArticle(UserArticle userArticle) { List<UserArticle> userArticleList = mongoTemplate.findAll(UserArticle.class); if (userArticleList.isEmpty()) { userArticle.setId(1); } else { userArticle.setId(userArticleList.size() + 1); } UserArticle article = mongoTemplate.save(userArticle); return article; } @Override public List<UserArticle> getAllArticles() { List<UserArticle> userArticles = mongoTemplate.findAll(UserArticle.class); return userArticles; } @Override public DeleteResult delByName(String name) { Query query = new Query(); query.addCriteria(Criteria.where("articleTitle").is(name)); DeleteResult result =mongoTemplate.remove(query,UserArticle.class); return result; } @Override public UpdateResult updateReadNumByTitle(String title) { Query query = new Query(); query.addCriteria(Criteria.where("articleTitle").is(title)); UserArticle article = mongoTemplate.findOne(query, UserArticle.class); Integer readNum = article.getReadNum() == null? 1: article.getReadNum()+1; article.setReadNum(readNum); Update update = new Update(); update.set("readNum",article.getReadNum()); UpdateResult result = mongoTemplate.updateFirst(query,update,UserArticle.class); return result; } @Override public UpdateResult addUserComment(String title, String comment) { JSONObject jsonObject = new JSONObject(); Query query = new Query(); query.addCriteria(Criteria.where("articleTitle").is(title)); UserArticle article = mongoTemplate.findOne(query, UserArticle.class); if(article.getComment() == null){ jsonObject.put(title,comment); }else { jsonObject = (JSONObject) JSONObject.parse(article.getComment()); jsonObject.put(title,comment); } Integer commentNum = article.getCommentNum() == null ? 1:article.getCommentNum()+1; Update update = new Update(); update.set("comment",jsonObject.toJSONString()); update.set("commentNum",commentNum); UpdateResult result = mongoTemplate.updateFirst(query,update,UserArticle.class); return result; } }
github地址:https://github.com/812406210/vue-demo.git
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍hibernate增删改查操作代码,包括了hibernate增删改查操作代码的使用技巧和注意事项,需要的朋友参考一下 Hibernate对数据删除操作 删除User表中个一条数据,是需要更具User表的主键id值来删除的。首先根据id值向数据库中查询出来对应的对象。可以采用两种方式一是session的get方法,一个是session的load方法。 Session的Get方法:调用这
本文向大家介绍Node.js对MongoDB进行增删改查操作的实例代码,包括了Node.js对MongoDB进行增删改查操作的实例代码的使用技巧和注意事项,需要的朋友参考一下 MongoDB简介 MongoDB是一个开源的、文档型的NoSQL数据库程序。MongoDB将数据存储在类似JSON的文档中,操作起来更灵活方便。NoSQL数据库中的文档(documents)对应于SQL数据库中的一行。将一
/** * 用户控制器 */ public class UserController { /** * 用户列表 * @param request * @param response */ public void users(Request request, Response response){ List<User> u
本文向大家介绍mybatis使用xml进行增删改查代码解析,包括了mybatis使用xml进行增删改查代码解析的使用技巧和注意事项,需要的朋友参考一下 MyBatis是支持普通sql查询、存储过程和高级映射的持久层框架。 MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。 MyBatis可以使用 简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Pl
本文向大家介绍Node.js+Express+Mysql 实现增删改查,包括了Node.js+Express+Mysql 实现增删改查的使用技巧和注意事项,需要的朋友参考一下 这次选用nodejs+express+mysql 使用http作为客户端,express框架搭建服务端,从而实现数据的增删改查。这篇文章可以算作上篇文章的升级篇,加入了和数据库的交互。 安装 node 直接去官网下载选择下载
一、前言 在第二章《Memcached源码分析 - Memcached源码分析之命令解析(2)》 和第三章《Memcached源码分析 - Memcached源码分析之消息回应(3)》 中我们主要通过Memcached的get命令,分析了Memcached的命令解析和消息回应的模块功能。这一章,我们主要来详细看一下Memcached常用的增删改查操作。 在看Memcached的增删改查操作前,我们