sqlite

如何使用 Gin 和 Gorm 搭建一个简单的 API 服务 (三)

有些话、适合烂在心里 提交于 2020-08-09 11:14:47
修改数据结构   基本的 API 已经定义好了,现在是个修改 Person 对象结构的好时机。只要修改 Person 结构体,数据库和 API 都会自动做出相应的修改。   我要做的是在 Person 结构体中添加 city 字段,就这一行,没有其他改动。 type Person struct { ID uint `json:"id"` FirstName string `json:"firstname"` LastName string `json:"lastname"` City string `json:"city"` }   刷新浏览器,你就会看到 city 字段已经添加进去了。 [ { "id" : 2 , "firstname" : "Elvis" , "lastname" : "Presley" , "city" : "" } , { "id" : 3 , "firstname" : "Tom" , "lastname" : "Sawyer" , "city" : "" } ]   Gin 可以创建和修改字段,而不需要做其他任何改动。 $ curl -i -X PUT http : / /localhost : 8080 /people / 2 -d '{ "city": "Memphis" }' HTTP / 1.1 200 OK Content -Type :

阿里云新品发布会周刊第56期 丨 如何用云服务占据全球化先机,让产品服务触达全球用户?

谁说胖子不能爱 提交于 2020-08-09 11:11:02
点击订阅新品发布会 ! 新产品、新版本、新技术、新功能、价格调整,评论在下方,下期更新!关注更多内容, 了解更多 新品发布会专属福利 1、 全球加速GA产品免费试用:加速任意跨地域公网服务,零改造提升用户访问体验 2、 全速重构云网络年中促:企业出海全球网络必选 新品低至55折 3、 2020年6月30日前,CDN加速10Mbps以内带宽免费试用1个月,30Gbps DDoS防护、高级版WAF试用1周,并赠送一次漏洞扫描服务,总名额限100个,填写表单先到先得 4、 EDAS产品免费试用 5、 观看《云原生架构师培训课程》领取新用户折扣 企业出海全球化网络新品发布会 2020年6月11日15时,4位阿里云大咖分享:中国企业全球化正当时,在国内人口红利见顶,国家政策支持的双背景之下,“全球化”被越来越多的企业视为发展新赛道。出海浪潮下,企业如何利用云服务快速占据先机?本议题将为您分享阿里云对出海战略的洞察,详解阿里云网络服务如何全力支持的各领域海外业务拓展。 查看产品 快速了解 政企安全加速解决方案全新发布 2020年5月20日,政企安全加速解决方案全新发布。在政企数字化转型,以及关键信息基础设施安全监管不断加强的背景下,既要网络化、在线化,又要符合安全监管要求,成为各类政企互联网应用服务需要面临并解决的问题。阿里云政企安全加速解决方案集成了CDN和云安全能力,提供一站式加速

Where is “SetPassword” or “ChangePassword” in SQLiteConnection class?

若如初见. 提交于 2020-08-09 09:13:19
问题 I'm just learning how to encrypt/decrypt SQLite database. I found a way to encrypt, as in this post SQLite with encryption/password protection This page's best answer said that we can use SEE , wxSQLite , SQLCipher , SQLiteCrypt , etc... to encrypt. I can understand. And, another answer said that we can use: SQLiteConnection conn = new SQLiteConnection("Data Source=MyDatabase.sqlite;Version=3;"); conn.SetPassword("password"); conn.open(); This page also says the same: Password Protect a

sqlmap详细使用教程

有些话、适合烂在心里 提交于 2020-08-09 05:27:18
sqlmap简介 sqlmap是一款基于python编写的渗透测试工具,在sql检测和利用方面功能强大,支持多种数据库。 sqlmap常用命令 -h 显示基本帮助信息 -hh 显示高级帮助信息 --version 显示版本号 -v 详细等级(0-6 默认 1) 0:只显示python错误以及重要信息 1:显示信息以及警告 2:显示debug消息 3:显示注入payload 4:显示http请求 5:显示http响应头· 6:显示http响应内容 Target: -u 指定目标url -d 直接连接数据库 -l 从burp代理日志的解析目标 -r 从文件中加载http请求 -g 从google dork的结果作为目标url -c 从INI配置文件中加载选项 Request -A 指定user-agent头 -H 额外的header -method= 指定HTTP方法(GET/POST) --data= 通过POST提交数据 --param-del= 指定参数分隔符 --cookie= 指定cookie的值 --cookie-del= 指定cookie分隔符 --drop-set-cookie 扔掉response中的set-cookie头 --random-agent 使用随机的user-agent头 --host= 设置host头 --referer= 指定referer头 -

造轮子-AgileConfig基于.NetCore的一个轻量级配置中心

﹥>﹥吖頭↗ 提交于 2020-08-09 04:04:47
微服务确实是行业的一个趋势,我自己也在把一些项目往微服务架构迁移。玩微服务架构配置中心是一个绕不过去的东西,有很多大牌的可以选,比如spring-cloud-config,apoll,disconf等等。而我为什么还要造一个轮子呢?一来这些都不是.net实现的,我就想试试用.net core实现一个,而且他们也对.net不太友好,也只有apoll提供了官方的.net客户端。二来这些组件都太重量级了,比如apoll,光跑起来就要部署多个节点(admin,portal,meta sevice)还要依赖eureka。很多旧的项目往微服务迁移的时候并不是一下次全部调整完成的,可能是一步步来的,比如先把所有的服务都容器化,并没有使用微服务全家桶。而且有的项目也不需要微服务全家桶,毕竟微服务不是银弹,很多项目单体结构就足够了,有些项目传统的SOA架构也可以了。(唠叨一句,那种毫无流量毫无并发的项目,几人几天就搞完的强上微服务真的好吗?)但是这些项目也可能是分布式的,容器化部署的,那么这些项目我觉得也是需要配置中心的,因为在分布式、容器化环境下更改配置实在是太麻烦了。可以说配置中心并不是微服务独有的。基于以上原因我提炼了一些配置中心必备的功能,做的尽量简单(陋),开发了AgileConfig,为.net core的生态尽一份绵薄之力。 Github求star: AgileConfig

[开源] .Net orm FreeSql 1.5.0 最新版本(番号:好久不见)

余生颓废 提交于 2020-08-09 02:49:53
废话开头 这篇文章是我有史以来编辑最长时间的,历时 4小时!!!原本我可以利用这 4小时编写一堆胶水代码,真心希望善良的您点个赞,谢谢了!! 很久很久没有写文章了,上一次还是在元旦发布 1.0 版本的时候,今年版本规划是每月底发布小版本(年底发布 2.0),全年的开源工作主要是收集用户需求增加功能,完善测试,修复 bug。FreeSql 1.0 -> 1.5 相隔半年有哪些新功能?只能说每个功能都能让我兴奋,并且能感受到使用者也一样兴奋(妄想症)。 迫不及待的人会问,这更新速度也太快了吧,升级会不会有问题? 不了解版本的更新日志,直接升级不是好的习惯,建议关注我们的更新日志(github 上有专门的文档); 我们的版本开发原则:在尽量保证兼容的情况下,增加新功能,砍掉少量不合理的功能; 我们的单元测试数量:4000+,这是我们引以自豪,发布版本的保障; 入戏准备 FreeSql 是 .Net ORM,能支持 .NetFramework4.0+、.NetCore、Xamarin、XAUI、Blazor、以及还有说不出来的运行平台,因为代码绿色无依赖,支持新平台非常简单。目前单元测试数量:4000+,Nuget下载数量:123K+,源码几乎每天都有提交。值得高兴的是 FreeSql 加入了 ncc 开源社区: https://github.com/dotnetcore/FreeSql

前端使用sqlite心得

限于喜欢 提交于 2020-08-09 02:19:06
做社交app,难点无非: 1.socket连接,发消息,收消息 2.历史消息的处理 在使用uni-app开发时,本来用 uni.setStorage 去存, uni.getStorage 去取,但是这两个家伙有延时,不能满足那种嗖嗖嗖刷页面的感觉,然后自己研究了sqlite客户端数据库存储, 注意sqlite只能在app端使用 ,浏览器不行 1.首先在项目根目录下创建_doc文件夹,然后创建数据库,如test.db; 2.在页面中 使用 plus.sqlite.isOpenDatabase({ name:'数据库名称',path:'数据库的相对路径' }) //判断数据库是否打开, 没打开执行打开数据库操作 plus.sqlite.openDatabase({ name: '数据库名称', path: '数据库的相对路径', success: function(e){ // console.log('打开数据库成功'); // 创建表 }, 来源: oschina 链接: https://my.oschina.net/u/4263597/blog/4276780

AppleScript 实现短信自动转发

佐手、 提交于 2020-08-08 23:28:52
背景:这段时间某位同事需要频繁登录我的账号,并且要验证手机验证码,每次都需要我手动将验证码转发给他,觉得非常的麻烦,便想看一下有没有什么能够解放双手的办法,然后发现了 AppleScript 这么一个非常好用的东西 :) 所需配置 Mac 电脑:既然是使用 AppleScript ,那么一台MAC电脑自然是不可少的(macOS Catalina 10.15.5) iPhone:如果消息类型是iMessage的话,则只需要MAC上登录苹果账号就可以,如果消息类型是SMS的,则需要利用苹果的生态,iphone 上的消息能够自动转发到MAC上(IOS 8 以后支持)。 AppleScript 什么是AppleScript? AppleScript是用来编写运行于mac的脚本的,并且能够操作应用程序。苹果官方也要求开发mac上的软件需要留出能够共AppleScript能够操作的方法。利用AppleScript我们能非常方便实现一些平常工作中重复工作的脚本化,提升工作效率,避免重复劳动。 基础语法 AppleScript 的语法非常接近自然语言,几乎没有标点符号,语法不像其他语言那样严格 变量定义 -- 将百度网址赋值给变量url_str set url_str to "https://www.baidu.com" 通知 -- 将百度网址赋值给变量url_str set url_str to

03.Django-ORM

筅森魡賤 提交于 2020-08-08 11:18:15
ORM 1. 数据库配置 配置使用sqlite3,mysql,oracle,postgresql等数据库 sqlite3数据库配置 DATABASES = { 'default': { # 默认使用的数据库引擎是sqlite3,项目自动创建 'ENGINE': 'django.db.backends.sqlite3', # 指定数据库所在的路径 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } } mysql数据库配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 表示使用mysql数据库引擎 'NAME': 'bwonline', # 数据库名字,先在mysql下创建好 'USER': 'root', # 数据库账号 'PASSWORD': '123456', # 数据库密码 'HOST': '127.0.0.1', # 数据库IP,留空表示"localhost" 'PORT': '3306', # 数据库端口 } } 2. ORM表模型 一对一(one-to-one)概念: 实质就是在主外键(foreign key)的关系基础上,给外键加了一个unique=True的属性。 一对多(one-to-many)概念: 就是主外键关系(foreign

SQLITE order by numeric and not alphabetic

孤街醉人 提交于 2020-08-08 07:15:09
问题 When I order my database SQLITE by Classement I have this : Classement | Nom 1 | clem 10 | caro 11 | flo 12 | raph 2 | prisc 3 | karim 4 | prout I would like to get : Classement | Nom 1 | clem 2 | prisc 3 | karim 4 | prout 10 | caro 11 | flo 12 | raph Here is my code : SELECT t.Classement FROM tableau t WHERE 1 = (SELECT 1 + COUNT (*) FROM tableau t2 WHERE t2.Classement < t.Classement OR ( t2.Classement == t.Classement AND t2.Nom < t.Nom )) Can anyone help me ? Thank you! 回答1: You get