我在前端写Java SpringBoot项目( 五 )


import{InjectModel }from'@nestjs/sequelize';
import{User }from'./user.model';
@Injectable
exportclassUserService{
constructor(
@InjectModel(User)
privateuserModel:typeofUser,
){}
// 创建新数据
asynccreate(user:User){
constnewUser =awaitthis.userModel.create(user);
returnnewUser;
}
// 查找所有数据
asyncfindAll{
returnthis.userModel.findAll;
}
// 按要求查找单个
asyncfindOne(id:string){
returnthis.userModel.findOne({where:{id }});
}
// 按要求更新
asyncupdate(id:string,user:User){
awaitthis.userModel.update(user,{where:{id }});
returnthis.userModel.findOne({where:{id }});
}
// 按要求删除
asyncdelete(id:string){
constuser =awaitthis.userModel.findOne({where:{id }});
awaituser.destroy;
}
}
Tips: 进行删除的时候,我们可以进行假删除,两个数据库,一个是备份数据库 , 一个是主数据库 。主数据库可以直接删除或者增加标识表示删除 。备份数据库,可以不用删除只写入和更新操作,这样可以进行数据还原操作 。
此外,为了防止 SQL 数据库注入 , 大家需要对数据来源进行统一校验处理或者直接进行 encode 处理,对于重要数据可以直接进行 MD5 加密处理,防止数据库被直接下载泄露 。关于 SQL 数据库的安全处理,网上教程有很多 , 大家找一找就可以啦~
部署就比较简单了,我们就不需要一一赘述了,数据库可以用集团提供的云数据库,而 Nest 就是普通的 node 部署 。

【我在前端写Java SpringBoot项目】


推荐阅读