golang获取数据表转换为json通用方法
package main import (
"database/sql"
"fmt"
"log"
"net/http"
"time" _ "github.com/go-sql-driver/mysql"
)
import "strings" func main() {
http.HandleFunc("/getuser", getuser)
s := &http.Server{
Addr: ":7080",
ReadTimeout: * time.Second,
WriteTimeout: * time.Second,
MaxHeaderBytes: << ,
}
log.Fatal(s.ListenAndServe())
} func getuser(w http.ResponseWriter, r *http.Request) { w.Write([]byte(getuser_json()))
} func getuser_json() string {
db, err := sql.Open("mysql", "root:root@tcp(localhost:3306)/jeecg?charset=utf8")
if err != nil {
panic(err.Error())
}
defer db.Close() rows, err := db.Query("select * from t_s_user")
if err != nil {
panic(err.Error())
} columns, err := rows.Columns()
if err != nil {
panic(err.Error())
} values := make([]sql.RawBytes, len(columns)) scanArgs := make([]interface{}, len(values))
for i := range values {
scanArgs[i] = &values[i]
} list := "[" for rows.Next() {
err = rows.Scan(scanArgs...)
if err != nil {
fmt.Println("log:", err)
panic(err.Error())
} row := "{"
var value string
for i, col := range values {
if col == nil {
value = "NULL"
} else {
value = string(col)
} columName := strings.ToLower(columns[i]) cell := fmt.Sprintf(`"%v":"%v"`, columName, value)
row = row + cell + ","
}
row = row[ : len(row)-]
row += "}"
list = list + row + "," }
list = list[ : len(list)-]
list += "]"
fmt.Println(list)
return list
}
调用url : http://localhost:7080/getuser
golang获取数据表转换为json通用方法的更多相关文章
- Oracle数据表转换为Shapefile(二)
在上一篇博文<Oracle数据表转换为Shapefile(一)>中详细描述了一种基于Oracle数据表生产Shapefile的技术方法,本文同样以详细图解的方式描述一种更便捷的方法来完成同 ...
- (笔记)Mysql命令desc:获取数据表结构
desc命令用于获取数据表结构. desc命令格式: desc 表名;同样 show columns from 表名;也能获取数据表结构. 举例如下:mysql> desc MyCl ...
- Oracle数据表转换为Shapefile(一)
严格来说,文章标题中的“转换”并不完全合适.本文的主要内容是基于Oracle数据表的数据来生产出Shapefile文件.进行该工作的一个前提条件是:Oracle数据表中包含坐标数值字段,一般来说就是x ...
- 用java语言将数据库中的数据表转换为xml文件的通用程序(细化)
转自:https://www.cnblogs.com/wudage/p/7650685.html 总是在网络上copy别人的源代码,今天我也贴出自己今天写的源码,相信这个程序会对大家在平时的工作中需要 ...
- DataTable数据赋值给Model通用方法
注:该文属本人原创,今后项目中发现该方法存在BUG会实时更新,转载记得附上原文出处,方便大家获得最新代码. 相信大家在做项目中,经常会根据不同的表new各种不同的Model,当需要对Model进行实例 ...
- Oracle中新建数据表的两种方法
首发微信公众号:SQL数据库运维 原文链接:https://mp.weixin.qq.com/s?__biz=MzI1NTQyNzg3MQ==&mid=2247485212&idx=1 ...
- Spring MVC和Spring Data JPA之获取数据表数据放在List集合,显示在JSP页面
涉及到很多xml配置没写:只写具体实现的所有类 1.实体类 对应数据表SYS_SBGL, 主键是SBBM,主键是自动生成的uuid 数据表内容如下(有图有真相): package com.jinhet ...
- 定时导出Oracle数据表到文本文件的方法
该实例实现了通过windows定时任务来实现了将数据库中指定数据表数据导出为txt文本格式.其思路是通过可执行的bat文件去调用导出数据脚本,然后再在windows定时任务中调用该bat文件来实现.该 ...
- MySQL数据库修改数据表类型(引擎)的方法
MySQL数据库使用事务,相关数据表必须为InnoDB引擎 查看数据表状态: SHOW TABLE STATUS FROM wawa WHERE NAME='ww_invite_code_temp'; ...
随机推荐
- golang protobuf SetExtension
对golang protobuf 的扩展字段赋值时候一直提示proto: bad extension value type clkUrl:="z.cn" proto.SetExte ...
- Fiddler-010-网络延时应用小技巧-模拟低网速环境
在日常的网络测试中,经常需要测试网络超时或在网络传输速率不佳的情况的应用场景,而与此同时我们有时手边资源有限,实现在各种真实网络(2G\3G)环境下测试有些局限性.其实 fiddler 已经提供了类似 ...
- validate 的插件用法
1.不推荐使用控件方式验证的方式(因为他严重的影响的html代码,也不便于语义化) <input type="text" class="required" ...
- Java Servlet(九):转发请求与重定向请求区别
转发: <% pageContext.setAttribute("pageContextAttr", "pageContextAttribute"); r ...
- [原创]java WEB学习笔记94:Hibernate学习之路---session 的管理,Session 对象的生命周期与本地线程绑定
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- IPC
IPC,全名Inter Process Communication即进程间通讯,在同一台机器上的两个进程就用IPC,不能跨物理机器。IPC包括共享内存、队列、信号量等几种方式,由于IPC通讯效率之高, ...
- 《zw版·Halcon-delphi系列原创教程》 Halcon分类函数004·edge,边缘处理
<zw版·Halcon-delphi系列原创教程> Halcon分类函数004·edge,边缘处理 为方便阅读,在不影响说明的前提下,笔者对函数进行了简化: :: 用符号“**”,替换:“ ...
- 处理SecureCRT中使用vim出现中文乱码问题
处理SecureCRT中使用vim出现中文乱码问题 引用原文:http://blog.chinaunix.net/uid-20639775-id-3475608.html因为cat没有问题,定位是vi ...
- Why does pthread_cond_signal not work?【转】
转自:http://stackoverflow.com/questions/16819169/why-does-pthread-cond-signal-not-work# 0 down vote fa ...
- samba的rpm包,只有tar.gz文件安装
tar.gz包是源代码的包,不能直接运行,需要安装tar xvf samba-3.5.1.tar.gz cd samba-3.5.1 &&cd source3 &&./ ...