皮皮网

皮皮网

【记牌器源码下载】【Remix源码加载】【pytest实例源码】天行源码网_天行源记百度百科

时间:2024-11-15 01:14:02 分类:娱乐

1.详解Spring Boot如何实现每日给女朋友微信推送早安问候语和天气预报浪漫教程
2.使用Sequelize快速构建PostgreSQL数据的天行CRUD操作详解

天行源码网_天行源记百度百科

详解Spring Boot如何实现每日给女朋友微信推送早安问候语和天气预报浪漫教程

       功能点

       实现每日自动给女朋友微信推送早安问候语和天气预报。

       技术栈点

       使用Spring Boot作为核心框架,源码搭配第三方API接口。网天

       源码开放

       源码提供在Gitee和GitHub平台上供参考与使用。行源

       注册微信测试账号,记百编辑推送模板

       确保账号功能可用,度百记牌器源码下载定制个性化早安问候语与天气预报模板。天行

       使用spring boot 做后台开发,源码并且与第三方对接

       集成百度地图开放平台API获取天气数据,网天使用天行数据TianAPI API获取更多天气信息。行源

       Spring Boot后台开发

       构建后台服务,记百实现定时任务,度百自动化处理早安问候与天气预报推送。天行

       部署

       发布CSDN平台相应博文,源码提供部署指南,网天方便开发者学习与应用。

使用Sequelize快速构建PostgreSQL数据的CRUD操作详解

       之前写过一个专栏《布道API》来介绍API的REST风格及推荐实践,今天开始来构建一个管理系统的API服务,首先需要处理的Remix源码加载就是数据存储,本文将结合实际开发总结在NodeJS下使用Sequelize快速构建PostgreSQL数据的CRUD操作。

       项目源代码:github.com/QuintionTang/pretender-service

Sequelize

       Sequelize是一个基于promise的Node.jsORM工具,它具有强大的事务支持、关联关系、预读和延迟加载、读取复制等功能,支持的数据库包括:PostgreSQL、MySQL、MariaDB、pytest实例源码SQLite和MSSQL。

       Sequelize类是引用sequlize模块后获取一个顶级对象,通过它来创建sequlize实例,也可以通过该对象来获取模内其它对象的引用,如:Utils工具类、Transaction事务类等。创建实例后,可以通过实例来创建或定义Model(模型)、执行查询、游戏匹配源码同步数据库结构等操作。

       官方网站:docs.sequelizejs.com/

添加和配置

       在安装模块之前,首先安装开发工具Sequelize-CLI

sudonpminstall-gsequelize-cli

       接下来在项目目录下安装数据存储相关的模块。

npminstallsequelize--savenpminstallpgpg-hstore--save

       现在在项目根目录下创建文件.sequelizerc,代码如下:

constpath=require('path');module.exports={ "config":path.resolve('./config','db.json'),"models-path":path.resolve('./models'),'seeders-path':path.resolve('./seeders'),'migrations-path':path.resolve('./migrations')};

       该文件将告诉Sequelize初始化,以生成config、models到特定目录。接下来,输入命令初始化Sequelize。蜜源视频源码

sequelizeinit

       该命令将创建config/db.json,models/index.js,migrations和seeders目录和文件。命令执行完毕之后打开并编辑config/db.json来配置数据库连接信息。

{ "development":{ "username":"dbusername","password":"dbpassword","database":"crayon-admin","host":".0.0.1","dialect":"postgres","options":{ "operatorsAliases":false},"logging":false},"test":{ "username":"dbusername","password":"dbpassword","database":"crayon-admin","host":".0.0.1","dialect":"postgres"},"production":{ "username":"dbusername","password":"dbpassword","database":"crayon-admin","host":".0.0.1","dialect":"postgres"}}

       目录说明:

       migrations:所有迁移文件,通过sequelizedb:migrate创建相应数据表

       seeders:种子文件,即初始化需要插入到数据库中的数据,运行sequelizedb:seed:all

创建Models和Migrations

       使用CLI工具Sequelize-CLI创建administrators表

sequelizemodel:create--nameadministrators--attributesid:integer,add_time:integer,last_login:integer,username:string,email:string,login_ip:string

       执行后会生成两个文件

       /src/migrations/-create-administrators.js:创建数据表脚本,用于数据库初始化。

"usestrict";module.exports={ up:async(queryInterface,Sequelize)=>{ awaitqueryInterface.createTable("administrators",{ id:{ allowNull:false,autoIncrement:true,primaryKey:true,type:Sequelize.INTEGER,},add_time:{ type:Sequelize.INTEGER,},last_login:{ type:Sequelize.INTEGER,},username:{ type:Sequelize.STRING,},password:{ type:Sequelize.STRING,},email:{ type:Sequelize.STRING,},login_ip:{ type:Sequelize.STRING,},});},down:async(queryInterface,Sequelize)=>{ awaitqueryInterface.dropTable("administrators");},};

       /src/models/administrators.js:生成的model文件

"usestrict";const{ Model}=require("sequelize");module.exports=(sequelize,DataTypes)=>{ classadministratorsextendsModel{ }administrators.init({ id:{ type:DataTypes.INTEGER,autoIncrement:true,primaryKey:true,},add_time:DataTypes.INTEGER,last_login:DataTypes.INTEGER,username:DataTypes.STRING,password:DataTypes.STRING,email:DataTypes.STRING,login_ip:DataTypes.STRING,},{ sequelize,indexes:[{ unique:true,fields:["id"],},],freezeTableName:true,timestamps:false,//是否自动添加时间戳createAt,updateAtmodelName:"administrators",});returnadministrators;};

       现在执行命令:

sequelizedb:migrate

       执行成功后将在连接的数据库中创建数据表:administrators。

创建seed

       seed用于初始化插入数据,如管理员,在系统运行前需要创建一个默认账号,这些默认账号信息就写在seed文件中。

       创建seed命令如下:

sequelizeseed:create--nameadministrator

       执行成功后将会在seeders文件夹中创建文件,修改代码如下:

npminstallsequelize--savenpminstallpgpg-hstore--save0

       现在将seed中的数据插入到数据库中,执行一下命令:

npminstallsequelize--savenpminstallpgpg-hstore--save1创建Services

       创建文件夹services,文件夹中代码封装与model交互的方法,包括所有CRUD(创建,读取,更新和删除)操作,创建administrators.js,实现的逻辑为获取账号信息、更新账号信息,代码如下:

npminstallsequelize--savenpminstallpgpg-hstore--save2创建Controllers

       上面创建的services文件用于控制器,在控制器文件夹中创建一个名为administrators.js的文件,代码如下:

npminstallsequelize--savenpminstallpgpg-hstore--save3创建Routers

       在文件夹routers中创建文件administrators.js文件,代码如下:

npminstallsequelize--savenpminstallpgpg-hstore--save4创建入口

       现在来为服务创建接口,项目根目录下创建文件app.js,代码如下:

npminstallsequelize--savenpminstallpgpg-hstore--save5

       现在执行命令nodeapp.js启动服务,将看到终端效果如下:

       至此,完成一个基本的API登录服务,还有待完善,后续在迭代中完善。文章涉及的代码在GitHub上。

作者:天行无忌