当前位置: 首页 > news >正文

企业内部网站模板下载竹溪网站建设

企业内部网站模板下载,竹溪网站建设,保定网站优化哪家好,东莞大岭山中西医结合医院MongoDB快速入门及其SpringBoot实战 MongoDB简介 MongoDB 是一个基于分布式文件存储的数据库。由 C 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。 MongoDB是一个开源、高性能、无模式的文档型数据库#xff0c;当初的设计就是用于简化开发和方便扩展 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。 MongoDB是一个开源、高性能、无模式的文档型数据库当初的设计就是用于简化开发和方便扩展是NoSQL数据库产品中的一种。是最像关系型数据库MySQL的非关系型数据库。 它支持的数据结构非常松散是一种类似于JSON的格式叫BSON所以它既可以存储比较复杂的数据类型又相当的灵活。 MongoDB概念解析 SQL术语/概念MongoDB术语/概念解释/说明databasedatabase数据库tablecollection数据库表/集合rowdocument数据记录行/文档columnfield数据字段/域indexindex索引table joins表连接,MongoDB不支持primary keyprimary key主键,MongoDB自动将_id字段设置为主键 SQL与MongoDB数据存储形式对比如下图所示 MongoDB数据类型 数据类型描述String字符串。存储数据常用的数据类型。在 MongoDB 中UTF-8 编码的字符串才是合法的。Integer整型数值。用于存储数值。根据你所采用的服务器可分为 32 位或 64 位。Boolean布尔值。用于存储布尔值真/假。Double双精度浮点值。用于存储浮点值。Min/Max keys将一个值与 BSON二进制的 JSON元素的最低值和最高值相对比。Array用于将数组或列表或多个值存储为一个键。Timestamp时间戳。记录文档修改或添加的具体时间。Object用于内嵌文档。Null用于创建空值。Symbol符号。该数据类型基本上等同于字符串类型但不同的是它一般用于采用特殊符号类型的语言。Date日期时间。用 UNIX 时间格式来存储当前日期或时间。你可以指定自己的日期时间创建 Date 对象传入年月日信息。Object ID对象 ID。用于创建文档的 ID。Binary Data二进制数据。用于存储二进制数据。Code代码类型。用于在文档中存储 JavaScript 代码。Regular expression正则表达式类型。用于存储正则表达式。 MongoDB特点 高性能MongoDB提供高性能的数据持久性。特别是,对嵌入式数据模型的支持减少了数据库系统上的I/O活动。索引支持更快的查询。 高可用性MongoDB的复制工具称为副本集replica set它可提供自动故障转移和数据冗余。 高扩展性MongoDB提供了水平可扩展性作为其核心功能的一部分。分片将数据分布在一组集群的机器上。海量数据存储服务能力水平扩展 丰富的查询支持MongoDB支持丰富的查询语言支持读和写操作(CRUD)比如数据聚合、文本搜索和地理空间查询等。 MongoDB下载与安装 MongoDB下载网址https://www.mongodb.com/try/download/community 图形化界面MongoDB Compass下载网址: https://www.mongodb.com/try/download/compass 创建数据目录 MongoDB 将数据目录存储在 db 目录下。但是这个数据目录不会主动创建我们在安装完成后需要创建它。 例如在D盘创建一个 data 的目录然后在 data 目录里创建 db 目录。 启动MongoDB 在MongoDB 目录的 bin 目录中执行 mongod.exe 文件 D:\MongoDB\binmongod --dpath d:\data\db MongoDB启动成功后默认端口是27017 Compass连接MongoDB 连接成功后界面如下 SpringBoot实战 功能需求 实现文章评论的增删改查参考示例如图所示 表结构分析 数据库articledb 字段名称字段含义字段类型备注_idIDObjectId或StringMongo的主键的字段articleid文章IDStringcontent评论内容Stringuserid评论人IDStringnickname评论人昵称Stringcreatedatetime评论的日期时间Datelikenum点赞数Int32replynum回复数Int32state状态String0不可见1可见parentid上级IDString如果为0表示文章的顶级评论 文章微服务模块搭建 搭建项目工程article项目目录结构如下 引入MongoDB依赖 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-mongodb/artifactId /dependency创建application.yml 注意需先在MongonDB中创建articledb数据库 spring:data:mongodb:host: 127.0.0.1database: articledbport: 27017创建启动类 SpringBootApplication public class ArticleApplication {public static void main(String[] args) {SpringApplication.run(ArticleApplication.class, args);} }启动项目看能否正常运行。 文章实体类的创建 Data Document(collection comment) // 指定为comment集合 CompoundIndex(def {userid:1}) // 在userid上建立升序索引 public class Comment implements Serializable {Idprivate String id;//主键//该属性对应mongodb的字段的名字如果一致则无需该注解Field(content)private String content;//评论内容private Date publishtime;//发布日期//添加了一个单字段的索引Indexedprivate String userid;//发布人IDprivate String nickname;//昵称private LocalDateTime createdatetime;//评论的日期时间private Integer likenum;//点赞数private Integer replynum;//回复数private String state;//状态private String parentid;//上级IDprivate String articleid; }文章评论持久层的创建 创建持久层时需继承MongoRepository接口 public interface CommentRepository extends MongoRepositoryComment, String { }文章评论service层的创建 Service public class CommentService {Autowiredprivate CommentRepository commentRepository;/*** 保存评论* param comment*/public void saveComment(Comment comment){commentRepository.save(comment);}/*** 更新评论* param comment*/public void updateComment(Comment comment){commentRepository.save(comment);}/*** 根据id删除评论* param id*/public void deleteCommentById(String id){commentRepository.deleteById(id);}/*** 查询所有评论* return*/public ListComment findCommentList(){return commentRepository.findAll();}/*** 根据id查询评论* param id* return*/public Comment findCommentById(String id){return commentRepository.findById(id).get();}/*** 文章评论点赞点赞数1* param id*/public void updateCommentLikenum(String id){Query query new Query(Criteria.where(_id).is(id));Update update new Update();update.inc(likenum);mongoTemplate.updateFirst(query, update, Comment.class);} }文章评论微服务测试 SpringBootTest(classes ArticleApplication.class) RunWith(SpringRunner.class) public class CommentServiceTest {Autowiredprivate CommentService commentService;Testpublic void testFindComment(){ListComment commentList commentService.findCommentList();System.out.println(commentList);}Testpublic void testFindCommentById(){Comment comment commentService.findCommentById(1);System.out.println(comment);}Testpublic void testSaveComment(){Comment comment new Comment();comment.setArticleid(100002);comment.setContent(樊神yyds);comment.setCreatedatetime(LocalDateTime.now());comment.setUserid(1003);comment.setNickname(随缘夏沫);comment.setState(1);comment.setLikenum(0);comment.setReplynum(0);commentService.saveComment(comment);}Testpublic void testFindCommentListByParentid(){PageComment page commentService.findCommentListByParentid(1, 1, 2);System.out.println(page.getContent());}Testpublic void testUpdateCommentLikenum(){commentService.updateCommentLikenum(2);} }
http://www.zqtcl.cn/news/55153/

相关文章:

  • 企业网站报价方案北京网上推广
  • 网页模板网站有那些网站要多少钱
  • 商城网站需要多少空间网站建设会销
  • 龙岗网站建设公司哪家好钓鱼网站在线制作
  • 炫酷网站欣赏2016互联网众筹网站怎样建设
  • 邢台医院网站建设广告艺术设计学的是什么
  • 网赌赢了钱被网站黑了需要怎么做网站建设是属于什么岗位
  • 北京朝阳区建设工作办公网站php抽奖网站源码
  • h5做的分销网站长沙外贸建站
  • 网站建设交流群杭州网站怎么做seo
  • 深圳住房建设厅网站首页网站域名地址是什么
  • 分布式移动网站开发技术兰州网站定制公司
  • 军事网站建设怎么打网站建设的意见建议
  • 网站开发 软件开发邢台网站改版制作公司
  • 做网站做得好的公司有哪些北京建设工程造价信息
  • 怎么建淘宝优惠券网站做推广综合型网站建设
  • 优惠网站怎么做黄埔网站建设 信科网络
  • 深圳网站建设总部dw php网站开发
  • 让人做网站需要注意哪些问题天商阳光网站邮箱
  • 开源企业网站内容管理系统网站开发软件科技公司
  • 在dw里可以做网站后台吗白云区住房和建设水务局网站
  • 湛江网站建设制作维护太原网络营销招聘
  • 想搭网站做软件首先要学设么用dw个人网站怎么建立
  • 如何自己做框架开发网站代做关键词收录排名
  • 网站开发 实战沈阳创造价值网站
  • 做公众号封面图的网站重庆永川网站建设价格
  • 专注网站建设怎么样洋县住房和城乡建设管理局网站
  • 0基础学网站建设湖北建科建设工程有限公司网站
  • 做网站时如何上传图片jsp 做网站还是php
  • 宁波新亚建设公司网站专业网站设计发展前景