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

宝安网站建设定制如何开网站

宝安网站建设定制,如何开网站,天津建设网站分包服务卡,做男女之间的事情的网站目录 1、什么是MongoDB 1、非关系型数据库 2、非关系型数据库分类 3、MongoDB#xff1f;bson格式什么样#xff1f; 2、MongoDB的优势 3、MongoDB应用场景 4、术语 5、操作 1、安装MongoDB 1、查询镜像文件【不操作】 2、拉取镜像文件 3、创建数据挂载目录 4、启…目录 1、什么是MongoDB 1、非关系型数据库 2、非关系型数据库分类 3、MongoDBbson格式什么样 2、MongoDB的优势 3、MongoDB应用场景 4、术语 5、操作 1、安装MongoDB 1、查询镜像文件【不操作】 2、拉取镜像文件 3、创建数据挂载目录 4、启动容器 2、验证安装成功 1、命令及说明 3、删除用户【不操作】 1、命令及说明 4、Navicat连接 5、insert 6、find 7、delete 8、update 9、其他操作【了解】 6、SpringBoot整合 1.添加依赖 2.添加配置 3.编写Entry 4.编写DAO 5.编写DAOImpl 6.编写测试类Test 7.编写启动类 1、什么是MongoDB 1、非关系型数据库 NoSQL泛指非关系型的数据库。随着互联网web2.0网站的兴起传统的关系数据库在处理web2.0网站特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心出现了很多难以克服的问题而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战特别是大数据应用难题。 2、非关系型数据库分类 键值(Key-Value)存储数据库 类似于HashMap的方式例如redis 列存储数据库 以列为概念的用于处理大数据量的数据例如HBase 文档型数据库 是应用比较广泛的以文档形式处理数据的文档不是硬盘上直接对应的文件是个概念例如MongoDB 图形(Graph)数据库 Neo4j是一个高性能的,NOSQL图形数据库它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎但是它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。Neo4j也可以被看作是一个高性能的图引擎该引擎具有成熟数据库的所有特性。程序员工作在一个面向对象的、灵活的网络结构下而不是严格、静态的表中——但是他们可以享受到具备完全的事务特性、企业级的数据库的所有好处。 3、MongoDBbson格式什么样 MongoDB是一个基于分布式文件存储的数据库。由C语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB是一个介于关系数据库和非关系数据库之间的产品是非关系数据库当中功能最丰富最像关系数据库的。它支持的数据结构非常松散是类似json的bson格式因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大其语法有点类似于面向对象的查询语言几乎可以实现类似关系数据库单表查询的绝大部分功能而且还支持对数据建立索引。 ‌JSON的BSON格式‌是一种二进制表示的数据交换格式它是“Binary JSON”的缩写。 2、MongoDB的优势 简单性应用起来比较容易易上手 扩展性指的是mango本身的拓展比如说可以做分片模式集群等等 高性能在Wiretiger存储引擎的加持下数据的读写可以做到更大的吞吐量 高可用自身出现故障的情况很少也可以通过集群的方式再提供高可用性还支持故障转移 存文件mongo天然支持文件存储以桶的形式用的对象是GridFS文件会被切割成多个16M大小存储 3、MongoDB应用场景 它的应用场景非常广泛存储数据、读写网站数据、文件存储、日志存储、缓存等。 从数据角度说mongo关注是未来数据量。 从需求角度说mongo关注是未来的拓展和维护。 4、术语 mongo从5版本对事务的支持更好以后工作用的一定是5版本及以上的。 我们学习用4版本是因为很多电脑安装不了5版本受硬件影响。4版本和5版本在操作上没有什么大区别学习不影响。 5、操作 1、安装MongoDB 基于docker的安装版本号4.4.18 1、查询镜像文件【不操作】 docker search mongo 2、拉取镜像文件 docker pull mongo:4.4.18 3、创建数据挂载目录 mkdir -p /usr/local/docker/mongodb/datacd /usr/local/docker/mongodbchmod 777 data 4、启动容器 docker run -d \--name mongodb \--privileged \-p 27017:27017 \-v /usr/local/docker/mongodb/data:/data/db \-e MONGO_INITDB_ROOT_USERNAMEroot \-e MONGO_INITDB_ROOT_PASSWORD123456 \mongo:4.4.18 mongod --auth 看到此基就启动成功了 --privileged以真正的有权限方式启动 MONGO_INITDB_ROOT_USERNAME设置账户 MONGO_INITDB_ROOT_PASSWORD设置密码 2、验证安装成功 1、命令及说明 # 1.进入容器 docker exec -it mongodb /bin/bash # 2.查看版本 mongo --version # 3.以root用户登录mongo-p是密码--port是端口号--authenticationDatabase是验证权限的数据库   mongo --port 27017 -u root -p 123456 --authenticationDatabase admin   # 4.展示所有的数据库   show dbs # 5.切换到dz14b数据库 use dz14b # 6.创建一个用户用户名是user01密码是123456角色是读写角色作用在dz14b数据库上 db.createUser({user:user01, pwd:123456,roles: [{role:readWrite, db:dz14b}]}) # 7.查看所有的用户数据 show users # 8.退出mongodb数据库 exit # 9.退出mongodb容器 exit # 10.再次进入容器以mongo命令进入进入到dz14b数据库中 docker exec -it mongodb mongo dz14b # 11.查看当前在那个数据库 db # 12.查看数据库发现没有其他数据库我们已经再dz14b了所以查询不到其他数据库 show dbs # 13.授权 db.auth(user01, 123456) # 14.查看数据库发现没有授权影响不到用户的作用范围 show dbs # 15.因为没有权限报错了 show users # 16.向dzdz自定义的名字集合插入了一个文档数据是inser方法的参数。对照sql理解向dz表插入一条记录 db.dz.insert({name:zhangsan}) # 17.查询dz集合下所有的数据 db.dz.find() 【第123步骤】 【第4-9步骤】 【第10-17步骤】 3、删除用户【不操作】 1、命令及说明 # 进入docker容器 docker exec -it mongodb /bin/bash # 以root用户登录mongo-p是密码--port是端口号--authenticationDatabase是验证权限的数据库 mongo --port 27017 -u root -p 123456 --authenticationDatabase admin   # 切换到dz12b数据库 use dz12b # 查看所有的用户数据 show users # 切换到admin数据库 user admin # 授权 db.auth(root, 123456) # 删除用户用户信息再system.users下remove是一个命令 db.system.users.remove({user:user01}) # 重新进入mongo验证删除成功 exit mongo --port 27017 -u root -p 123456 --authenticationDatabase admin   use dz7b show users 4、Navicat连接 5、insert db.dz.insert({name:菲菲, age:20,sex:女}); db.dz.insert({name:张三,sex:男}); db.dz.insert({name:王五,sex:男,hiredate:2024-12-14}); db.dz.save({name:菲菲, age:20,sex:女}); db.dz.save({name:张三,sex:男}); db.dz.save({name:王五,sex:男,hiredate:2024-12-14});insert和save的区别 如果设置了id字段id不重复二者没有区别都是新增一条数据如果id重复insert会报错save执行修改操作。 【执行insert语句同时 创建集合“表”】 db.dz.insert({_id:ObjectId(66f4b95c904baf343400254d),name:高波,age:20}) db.dz.save({_id:ObjectId(66f4b95c904baf343400254d),name:高波,age:20}) 6、find db.dz.find({age : 20} ) db.dz.find({age : {$gt : 21}}) db.dz.find({age:{$gt : 21},name:张三}) 7、delete db.dz.deleteOne({age:20}) db.dz.deleteMany({age:20}) deleteOne是删除按照条件查询到的第一条数据 deleteMany是删除所有符合条件的记录 8、update db.dz.updateOne({age:25},{$set:{age:20}} )db.dz.updateMany({age:25},{$set:{age:20}} ) updateOne是修改按照条件查询到的第一条数据 updateMany是修改所有符合条件的记录 9、其他操作【了解】 # 查看所有数据库 show dbs # 应用到指定数据库 use databasename # 查看数据库下的集合 show collections # 创建集合 db.createCollection(test_collection) # 删除集合test_collection是集合的名字 db.test_collection.drop() 6、SpringBoot整合 1.添加依赖 parentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.6.13/version/parentpropertiesjava.version1.8/java.versionproject.build.sourceEncodingUTF-8/project.build.sourceEncodingproject.reporting.outputEncodingUTF-8/project.reporting.outputEncodingspring-boot.version2.6.13/spring-boot.versionjwt.version0.7.0/jwt.versionfastjson.version1.2.60/fastjson.version/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopecompile/scope/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactId/dependency!--json--dependencygroupIdcom.alibaba/groupIdartifactIdfastjson/artifactIdversion${fastjson.version}/versionscopecompile/scope/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-mongodb/artifactId/dependency/dependenciesbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdconfigurationclassifierexec/classifier/configuration/plugin/plugins/build 2.添加配置 #username: user01 虚拟机数据库名 #database: 自己数据库的名字 #port: 27017 虚拟机中自己定义的 #host: 192.168.146.128 虚拟机ip spring:data:mongodb:username: user01password: 123456port: 27017host: 192.168.146.128database: dz14b mongodb配置有两种方式如果第一种不生效可以用第二种尝试一下 spring:data:mongodb:uri: mongodb://user01:123456192.168.1.101:27017/dz12b 3.编写Entry package com.jr.entry;import lombok.Data; import org.springframework.data.annotation.Id;Data public class User {Idprivate String id;private String name;private String password; } 4.编写DAO package com.jr.dao;import com.jr.entry.User;import java.util.List;public interface UserDao {/*** 新增** param user 目标对象*/void insert(User user);/*** 删除** param id 对象主键*/void delete(String id);/*** 修改** param user 目标对象*/void update(User user);/*** 通过主键查询** param id 主键* return user对象*/User findById(String id);/*** 查询** param user 条件对象* return user集合*/ListUser query(User user);}5.编写DAOImpl MongoTemplate常用方法 mongoTemplate.insert(user);  //添加user对象  mongoTemplate.findById(id, User.class);  //根据主键id查询单个user对象。  mongoTemplate.remove(user);  //删除指定user对象  mongoTemplate.remove(条件对象Query, User.class);   // 删除符合条件的user对象  mongoTemplate.updateMulti(条件对象query, 修改对象update, User.class);  //修改符合条件的user对象  mongoTemplate.find(条件对象query, User.class);  //查询符合条件的user对象 条件对象Query常用方法 #将构建好的查询条件添加到查询对象中 query.addCriteria(Criteria.where(_id).is(id)); Criteria常用方法 #用于定义查询条件的接口它提供了一系列的方法来构建复杂的查询条件。 Criteria.where(_id).is(id); 修改对象Update常用方法 update.set(password, user.getPassword()); 测试代码 package com.jr.dao.impl; import com.jr.dao.UserDao; import com.jr.entry.User; 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.Repository; import java.util.List;Repository public class UserDaoImpl implements UserDao {Autowiredprivate MongoTemplate mongoTemplate;Overridepublic void insert(User user) {mongoTemplate.insert(user);}Overridepublic User findById(String id) {return mongoTemplate.findById(id, User.class);}// Overridepublic void delete1(String id) {User user findById(id);if (user ! null) {mongoTemplate.remove(user);} else {System.out.println(没有找到要删除的数据);}}Overridepublic void delete(String id) {Query query new Query();query.addCriteria(Criteria.where(_id).is(id));mongoTemplate.remove(query, User.class);}Overridepublic void update(User user) {Query query new Query();query.addCriteria(Criteria.where(_id).is(user.getId()));Update update new Update();update.set(name, user.getName());update.set(password, user.getPassword());mongoTemplate.updateMulti(query, update, User.class);}Overridepublic ListUser query(User user) {Query query new Query();if(user.getId() ! null){query.addCriteria(Criteria.where(_id).is(user.getId()));}if(user.getName() ! null){query.addCriteria(Criteria.where(name).is(user.getName()));}if(user.getPassword() ! null){query.addCriteria(Criteria.where(password).is(user.getPassword()));}return mongoTemplate.find(query, User.class);} }6.编写测试类Test package com.jr; import com.SpringBootMain; import com.jr.dao.UserDao; import com.jr.entry.User; import lombok.extern.slf4j.Slf4j; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest;Slf4j SpringBootTest(classes SpringBootMain.class) SuppressWarnings(all) public class MongoDbTest {Autowiredprivate UserDao userDao;Testpublic void testInsert() {User user new User();user.setPassword(123);user.setName(zhangsan);userDao.insert(user);}Testpublic void testFindById() {User byId userDao.findById(661794efd775ee4bd7a6d069);System.out.println(byId);}Testpublic void testDelete() {userDao.delete(6617970547fbc57ef66a962f);}Testpublic void testUpdate() {User user new User();user.setId(661797ee479a0c02f0dd9212);user.setPassword(123456);user.setName(lisi);userDao.update(user);}Testpublic void testQuery() {User user new User(); // user.setId(661797ee479a0c02f0dd9212);user.setPassword(123); // user.setName(lisi);System.out.println(userDao.query(user));}}7.编写启动类 package com;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;SpringBootApplication public class SpringBootMain {public static void main(String[] args) {SpringApplication.run(SpringBootMain.class);} }
http://www.w-s-a.com/news/199064/

相关文章:

  • 精通网站开发阅读网页视频下载慢怎么办
  • 网站标题的选择巴音郭楞库尔勒网站建设
  • 成都市网站建设服务商怎么进网站后台管理系统
  • 企业网站站内优化30岁做网站编辑
  • 与安网站建设网站建设征求意见稿
  • 学校网站推广做网站手把手
  • 网站开发遇到的难题wordpress文章调用
  • 网站建设做的好在线logo免费设计生成器标智客
  • 郑州做网站齿轮网站排名怎么做 site
  • 船员专用网站开发建议wordpress 图片占用id
  • 桌面软件开发跟网站开发那个上海网站备案在哪里查询
  • 罗湖网站建设陕西省建设网官网住房和城乡厅官网
  • 做一个网站的详细教学wordpress 忘记用户名密码
  • 建设银行的网站是多少wordpress添加新页面跳转
  • 网站设计费用抓取网站访客qq号码
  • 驾校视频网站模板郑州网站建设价格
  • 上海 有哪些做网站的公司成都企业网站备案流程
  • 移动端快速建站的方法青海公司网站建设
  • 网站重新搭建程序要多少钱移动互联网应用的使用情况
  • 学建站论坛给别人做网站怎么赚钱吗
  • 响应式网站代码校友会网站建设的目的
  • 北京公司网站网站建设html模板
  • 专门做医疗器械的网站免费网页制作系统团队
  • 网站开发技术 html临夏网站建设
  • flash网站模板免费下载拍卖网站开发多少钱
  • 北京网站建设制作颍州网站建设
  • 网站制作报价表做网站上海公司
  • 简洁大气蓝色文章资讯网站百度搜索广告推广
  • 河南建设工程协会网站网站收银系统建设
  • 网站制作 服务企业网站案例展示