毕设第六周记录

周六、日

下载安装mongodb:

一般下载的为社区版 Mongodb官网.
1.下载安装压缩包
在这里插入图片描述

2.开始安装,点击next
在这里插入图片描述
3.点击complete
在这里插入图片描述

在这里插入图片描述Mongodb一般放在 C:\Program Files 路径下
点击next,然后等待安装。

配置Mongodb

1.打开本电脑的高级系统设置,配置Mongodb的环境,在系统变量里点击path,
在这里插入图片描述
2.点击新建,把bin的路径复制过来,点击确认。
在这里插入图片描述

启动Mongodb

1.输入命令,

mongod.exe

在这里插入图片描述

创建数据目录:

MongoDB将数据目录存储在db目录下。但是这个数据目录不会主动创建,我们在安装完成后需要创建它。

我的目录是C:\Program Files\MongoDB\data\db,其中db文件夹也需要创建,其不会自动生成
方法:手动创建文件夹:C:\Program Files\MongoDB\data\db
运行命令:

 mongod.exe --dbpath C:\Program Files\MongoDB\data\db

检查是否可以连接

在浏览器输入http://localhost:27017 (27017是mongodb的端口号)查看,若显示:
在这里插入图片描述

配置本地windows mongodb 服务

1.先在data文件下创建一个新文件夹log(用来存放日志文件)
在这里插入图片描述
2.创建.config配置文件
在Mongodb新建配置文件mongo.config

先创建一个mongo.txt文件,再打开,点击”另存为“,将底下的文件类型更改为”全部类型“,并更改文件名称为mongo.config。

这样就可以创建一个config的配置文件了。
在这里插入图片描述
3.用记事本打开mongo.config ,并输入:


dbpath=C:\Program Files\MongoDB\data\db

logpath=C:\Program Files\MongoDB\data\log\mongo.log

4.配置windows服务:

cmd先跳转到 C:\Program Files\MongoDB\Server\5.0\bin目录下。

输入:

mongod --config "C:\Program Files\MongoDB\mongo.config" --install --serviceName "MongoDB"

在这里插入图片描述

即根据刚创建的mongo.config配置文件安装服务,名称为MongoDB。
5.打开计算机管理,查看服务列表

在这里插入图片描述
至此安装完成

周一

Typegoose

我们已经把接口架构搭建好了,接下来用数据库保存帖子,创建与保存数据,这里将会用到Typegoose,
Typegoose: link.
里面有关于官方文档的解说

在这里插入图片描述

import { prop, getModelForClass } from '@typegoose/typegoose';
import * as mongoose from 'mongoose';

class User {  //user表结构
  @prop() //装饰器,表示下面的属性定义为mongoose的字段
  public name?: string;

  @prop({ type: () => [String] })
  public jobs?: string[];
}

底层依旧是mongoose,上层用了面向对象的方式。

点击红框里的网址,里面可以参考有关版本的一些教程
在这里插入图片描述
1.安装语法,在终端啊输入:

npm i @typegoose/typegoose

在这里插入图片描述
2.安装好之后,我们需要在入口处(main.ts)连接数据库
在这里插入图片描述

3.连接好后,我们需要建立模型文件post.model.ts
在这里插入图片描述

import { getModelForClass, prop } from '@typegoose/typegoose'
 
export class Post{
    @prop()
    title:string
    @prop()
    conent:string
}
export const PostModel = getModelForClass(Post)

在这里插入图片描述
注释:
1.定义表结构:两个字段,title和conent,
@prop表示字段定义,在()里可以传递参数,比如default、set、select等
2.定义模型:用getModelForClass的方法,传进去表结构的类,Post Model就成为一个帖子模型。

周二

查看帖子

1.定义好模型之后,我们需要打开posts.controller.ts,将帖子列表换为模型的查询,需要用到await ,然后方式是异步的,
在这里插入图片描述
2.当框架定义好之后,我们只需要把内容改为数据库的查询就可以了,接口框架不变,
在这里插入图片描述

创建帖子

1.我们需要打开posts.controller.ts,将创建帖子换为模型的创建,需要用到await ,然后方式是异步的,

在这里插入图片描述

    @Post()
    @ApiOperation({summary:'创建帖子'})
    async create(@Body()createPostDto:CreatePostDto){
        await PostModel.create(createPostDto)
        return {
            success:true
        }
    
   }

2.在http://localhost:3000/api-docs中,点击创建帖子,执行之后,返回了如下信息:
在这里插入图片描述

3.点击帖子列表,刷新之后,会发现新建了数据
在这里插入图片描述
4.因为之前有数据建立,为了区别,在posts.controller.ts中,修改代码:建立实例
在这里插入图片描述
5.刷新之后,发现内容已经更改:

在这里插入图片描述
在这里插入图片描述
6.有了实例之后,点击执行,刷新帖子列表之后,发现新数据
在这里插入图片描述

7.打开http://localhost:3000/posts后,得到如下结果:

在这里插入图片描述
说明运行成功

周三

Get数据

在帖子详情中,复制得到的真实id,可以取得数据库中的数据,修改代码:
在这里插入图片描述
代码如下:

    @Get(":id")
    @ApiOperation({summary:'帖子详情'})
    async detail(@Param('id')id:string){
        return await PostModel.findById(id)
    }
    

复制得到的真实id例如
在这里插入图片描述

在这里插入图片描述
执行后,从数据库中取得:
在这里插入图片描述

Update数据

在编辑帖子中,输入id,修改title和content的内容:
在这里插入图片描述
修改代码:
在这里插入图片描述
点击excute后,可以发现在帖子列表中存在更新
在这里插入图片描述

删除数据

在删除帖子中,修改代码,用mongoose语言

    async remove(@Param('id')id: string){
        await PostModel.findByIdAndDelete(id)

在这里插入图片描述
例如,删除此条数据:
在这里插入图片描述
在delete里面复制id信息,点击执行
在这里插入图片描述
再次查看帖子列表:再无此条数据
在这里插入图片描述

周四

管道

在这里插入图片描述
从客户端到服务端,Get某个服务器端点的时候,要预先通过管道,我们需要加入各种东西让请求一步步通过管道,包括验证管道、数据格式转换的管道之类,最终到达接口。
而从接口返回客户端时候,通过一层层的过滤器,再到达客户端

1.在main里面开启全局验证:确保信息为必填选项:

使用全局管道:
在这里插入图片描述
2.终端提醒,我们需要安装一些包

npm i class-validator //用于验证
npm i class-transformer //用于数据格式转换

安装之后,程序正常运行
在这里插入图片描述
3.声明符合的验证;
引入class-validator包

import{ IsNotEmpty } from'class-validator'

IsNotEmpty声明title不为空,如果为空的话,会返回消息:填写标题

@IsNotEmpty({message:'请填写标题'})

在这里插入图片描述
4.创建帖子中,删除title并运行
发现报错:
在这里插入图片描述

下周计划

1.周末跑通一遍官方教程
2.整理信息,开始构建自己的项目

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版毕设最终版
在基于ssm网上商城系统的毕设中,我的周工作记录如下: 周一:这一天主要是研究整个网上商城系统的功能需求和架构,以及准备开发环境和工具,如Eclipse、MySQL、Tomcat等。同时也开始阅读相关技术文档,如MyBatis、Spring、SpringMVC的使用手册,细节的问题都在这一天梳理好了。 周二:开始着手搭建后端部分,包括数据库的设计,用MyBatis搭建实体类、Mapper映射文件等。这一天主要是进行数据库的设计和搭建,设计表结构、添加数据等。在此过程中,还需要根据后续的业务逻辑来不断优化表结构,从而确保数据库有更良好的扩展性。 周三:后端部分的继续开发,包括编写Service层和Controller层的代码。主要是完成登录、注册、商品管理等基本功能。我的实现是按照功能拆分Service接口,并针对每个接口写对应的单元测试,确保接口的正确性和可行性,同时发现一些代码中的问题并进行调试。 周四:前端部分的开发,主要是实现网页的静态部分和前端框架的搭建,如Bootstrap、jQuery等。因为我并不是专门的前端开发人员,所以这一天主要是学习已有框架的使用和一些相关知识,如HTML、CSS、JavaScript的语法,页面的布局、样式细节等,并进行前端页面的设计和制作。 周五:整个项目的bug修复和完善。因为之前开发过程中可能会有一些没有注意到的问题,所以这一天主要是进行代码的重构和完善,优化代码的性能和可编程性,确保整个系统的稳定性和可持续性。 通过以上周工作记录,我深刻体会到了开发一个良好的网上商城系统的复杂性和互动性,整个过程除了代码的实现,还需要高度的关注性能、安全,以及对用户的体验和反馈。在梳理需求、设计整个系统架构、开发和测试的过程中,我更加深入了解到了各个部分之间的耦合度,进一步认识了软件工程和软件项目管理的重要性。我将更加努力,不断提升自己的技能和能力,开发出更加完善的网上商城系统应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值