10.Beego框架ORM原生SQL查询

[TOC]一、概述beego orm包除了支持model查询的方式,也支持直接编写sql语句的方式查询数据。sql原生查询有如下特点:使用 Raw SQL 查询,无需使用 ORM 表定义多数据库,都可直接使用占位符号 ?,自动转换查询时的参数,支持使用 Model Struct 和 Slice, Array在遇到比较复杂的查询的时候,使用sql语句更加灵活和直观,也比较容易把控sql查询的性能。二、方法说明Exec执行 sql 语句,返回 sql.Result 对象res, err := o.Raw("UPDATE user SET name = ?", "...

GO 2022-08-05 PM 39℃ 0条

09.Beego框架ORM高级查询

[TOC]前言ORM 以 QuerySeter 来组织查询,每个返回 QuerySeter 的方法都会获得一个新的 QuerySeter 对象。一、基本使用o := orm.NewOrm() // 获取 QuerySeter 对象,user 为表名 qs := o.QueryTable("user") // 也可以直接使用 Model 结构体作为表名 qs = o.QueryTable(&User) // 也可以直接使用对象作为表名 user := new(User) qs = o.QueryTable(user) // 返回 QuerySeter说明Q...

GO 2022-08-05 PM 41℃ 0条

08.Beego框架ORM介绍

[TOC]一、介绍对象关系映射(Object Relational Mapping,简称ORM), 它的作用是映射数据库和对象之间的关系,方便我们在实现数据库操作的时候不用去写复杂的sql语句,把对数据库的操作上升到对于对象的操作。beego ORM 是一个强大的 Go 语言 ORM 框架。它的灵感主要来自 Django ORM 和 SQLAlchemy。它支持go语言中所有的类型存储,允许直接使用原生的SQL语句,采用GRUD风格能够轻松上手,能自动Join关联表,并允许跨数据库兼容查询。beego支持的数据库类型MySQL:github.com/go-sql-driver/mysql...

GO 2022-08-04 AM 42℃ 0条

07.Beego框架请求参数和响应数据

[TOC]一、请求参数处理beego.Controller基础控制器,提供了多种读取请求参数的函数,下面分别介绍各种获取参数的场景。1.1 默认获取参数方式beego.Controller基础控制器提供了GetXXX序列获取参数的函数, XXX指的就是返回不同的数据类型。示例// 处理get请求 func (this *UserController) Get() { // 获取参数, 返回int类型 id ,_:= this.GetInt("id") // 获取参数,返回string类型, 如果参数不存在返回none作为默认值 use...

GO 2022-08-01 PM 57℃ 0条

06.Beego框架控制器函数

一、介绍控制器函数是 beego的 RESTful api 的实现方式,在 beego 的设计中,控制器就是一个嵌套了beego.Controller的结构体对象。示例// 定义一个新的控制器 type UserController struct { // 嵌套beego基础控制器 beego.Controller }前面介绍过,struct嵌套,就类似其他高级语言的 继承 特性,嵌套了beego.Controller控制器,就拥有了beego.Controller定义的属性和函数。控制器命名规则约定:XxxControllerXxx就是控制器名字, 这是为了便于阅读,看...

GO 2022-07-31 PM 42℃ 0条

05.Beego路由配置

[TOC]前言beego存在三种方式的路由:固定路由、正则路由、自动路由,接下来详细的讲解如何使用这三种路由。一、基本路由该方式相当于直接将一个url路由和一个函数绑定起来。示例一package routers import ( "github.com/astaxie/beego" "github.com/astaxie/beego/context" ) func init() { //将请求url和一个闭包函数绑定起来, 这个url的Get请求由这个闭包函数处理。 beego.Get("/base1&...

GO 2022-07-31 PM 61℃ 0条

04.Beego框架参数配置

[TOC]前言beego 目前支持 INI、XML、JSON、YAML 格式的配置文件解析,但是默认采用了 INI 格式解析,用户可以通过简单的配置就可以获得很大的灵活性。一、概述beego 默认使用了 INI 格式解析配置文件,通常在项目中会存在很多系统参数、业务参数配置,这些参数通常都是通过配置文件进行配置,而且不是写死在代码里面。例如: mysql 账号密码之类的系统参数,如果写死在代码里面,每次修改参数都得重新打包升级,非常不灵活。使用配置文件就比较方便,无需重新编译代码。注意:修改配置文件后,需要重启应用,配置才生效,即使使用bee run运行项目也得重启。二、Beego系统参...

GO 2022-07-30 PM 73℃ 0条

03.Beego框架快速入门

[TOC]前言本篇通过一个简单的查询示例,演示整个Beego框架的使用。代码编辑工具:Goland需求连接MySQL数据库,通过GET请求,传入id值查询出对应学生信息一、控制器逻辑在controllers目录下创建GoDemoController.go文件package controllers import ( "github.com/astaxie/beego" "go_project/models" ) //定义一个控制器结构体 //一般一个模块定义一个控制器 type GoDemoController struct { ...

GO 2022-07-30 AM 74℃ 0条

02.Beego框架安装详解

[TOC]前言安装Go SDK(选择1.13及以上版本)下载地址:https://golang.google.cn/dl/一直下一步,修改安装路径即可。配置代理windows系统中在终端执行如下命令:go env -w GO111MODULE=on go env -w GOPROXY=https://goproxy.cn,direct检查配置是否成功go env本人使用的是windows 11系统,肯定支持windows 10系统一、安装Beego1.1 安装命令beego 的安装是典型的 Go 安装包的形式go get github.com/astaxie/beego1.2 常见问题g...

GO 2022-07-28 PM 85℃ 0条

01.Beego框架介绍

一、Beego简介Beego 是一个快速开发 Go 应用的 HTTP 框架,它可以用来快速开发 API、Web 及后端服务等各种应用,是一个 RESTful 的框架,主要设计灵感来源于 tornado、sinatra 和 flask 这三个框架,但是结合了 Go 本身的一些特性(interface、struct 嵌入等)而设计的一个框架。该框架采用模块封装,使用简单,容易学习。方便技术开发者快速学习并进行实际开发。对程序员来说,beego掌握起来非常简单,只需要关注业务逻辑实现即可,框架自动为项目需求提供不同的模块功能。Beego官网:https://beego.vip/Github地址...

GO 2022-07-27 AM 101℃ 0条