当前位置: 首页 > news >正文

如何建立自己的企业网站html网页期末作业模板

如何建立自己的企业网站,html网页期末作业模板,wordpress 本地化,专业制作标书公司哪家好一点文章目录 一、redis的学习与使用1.Redis的基本介绍2.Redis的安装下载安装包即可3.Redis的基本使用1#xff09;Redis的启动#xff1a;2#xff09;Redis的操作的三种方式3#xff09;说明#xff1a;Redis安装好后#xff0c;默认有16个数据库#xff0c;初始默认使用0… 文章目录 一、redis的学习与使用1.Redis的基本介绍2.Redis的安装下载安装包即可3.Redis的基本使用1Redis的启动2Redis的操作的三种方式3说明Redis安装好后默认有16个数据库初始默认使用0号库编号0...15 4.Redis的五大数据类型和CRUD操作1Redis的五大数据类型是**String(字符串)**、**Hash(哈希)**、**List(列表)**、**Set(集合)**和**zset(sorted set :有序集合)**2String3Hash4List5Set 二、go操作redis1、安装第三方开源的redis库2、使用go语言开始进行操作1操作string2操作hash3批量操作Set/Get数据4给数据设置有效时间5课堂练习6Redis连接池 一、redis的学习与使用 1.Redis的基本介绍 1.Redis是NoSQL数据库不是传统的关系型数据库 官网: http://redis.io/ 和http://www.redis.cn/ 2.RedisREmote DIctionary Server(远程字典服务器)Redis的性能非常高单机可以达到15W gps.通常适合做缓存也可以持久化 3是完全开源免费的高性能的(key/value)分布式内存数据库基于内存运行并支持持久化Nosql数据库是最热门的NoSql数据库之一也称为数据结构服务器 2.Redis的安装下载安装包即可 网址https://github.com/tporadowski/redis/releases 下载好后的目录结构其中有两个是redis的关键文件 redis客户端文件redis-cli.exe redis服务器文件redis-server.exe redis结构示意图 3.Redis的基本使用 1Redis的启动 启动Redis的服务器端程序(redis-server.exe),直接双击即可运行 2Redis的操作的三种方式 说明 1使用telnet操作Redis 2使用redis-cli.exe操作Redis,双击即可进入客户端 3Golang操作redisredis基本指令 http://redisdoc.com(已失效) 3说明Redis安装好后默认有16个数据库初始默认使用0号库编号0…15 -1.添加key-val [set] -2.查看当前redis的所有key [key * 获取key对应的值[get key] -3.切换redis数据库[select index] -4.如何查看当前数据库的key-val数量[dbsize] -5.清空当前数据库的key-val和清空所有数据库的key -val[flush db flushall] 4.Redis的五大数据类型和CRUD操作 1Redis的五大数据类型是String(字符串)、Hash(哈希)、List(列表)、Set(集合)和zset(sorted set :有序集合) 2String (字符串)-介绍 -1.string是redis的基本类型一个key对应一个value -2.string是类型是二进制安全的。除普通的字符串外也可以存放图片数据。 -3.redis中字符串value最大值是512M 举例存放一个地址信息: address北京天安门 说明 key :address value : 北京天安门 127.0.0.1:6379 set address beijing OK 127.0.0.1:6379 get address beijing 127.0.0.1:6379 -4.String字符串-CRUD 举例说明Redis的String字符串的CRUD操作 set如果存在就相当于修改不存在就是添加 /get/del 127.0.0.1:6379 del address (integer) 1 127.0.0.1:6379 get address (nil) 127.0.0.1:6379-5.String(字符串)-使用细节和注意事项 setex(set with expire)键秒值 127.0.0.1:6379 setex mess01 10 hello,you OK 127.0.0.1:6379 get mess01 hello,you 127.0.0.1:6379 get mess01 hello,you 127.0.0.1:6379 get mess01 hello,you 127.0.0.1:6379 get mess01 hello,you 127.0.0.1:6379 get mess01 (nil) //mess01有效期就10秒10秒后就销毁 127.0.0.1:6379mset[同时设置一个或多个key-value对] ​ MSET key vlaue [key value …] ​ 同时设置一个或多个key-value对 ​ 如果某个给定key值已经存在那么MSET会用新值覆盖原来的旧值 127.0.0.1:6379 mset worker01 tom worker02 scott OK 127.0.0.1:6379 get worker01 tom 127.0.0.1:6379 get worker02 scott 127.0.0.1:6379 mget worker01 worker02 1) tom 2) scott3Hash (哈希类似于golang里的Map)-介绍 Redis hash是一个键值对象集合。var user1 map[string]string Redis hash是一个string类型的field和value的映射表hash特别适合用于存储对象 举例。存放一个User信息 user1 name 张三 age 10 说明 key : user1 name 张三 和 age 30 就是两对 field-value实操演示添加user的信息案例(name age job) 127.0.0.1:6379 hset user1 name smith (integer) 1 127.0.0.1:6379 hset user1 age 30 (integer) 1 127.0.0.1:6379 hset user1 job golang coder (integer) 1 127.0.0.1:6379 hget user1 name smith 127.0.0.1:6379 hget user1 age 30 127.0.0.1:6379 hget user1 job golang coder 127.0.0.1:6379Hash使用细节和注意事项 在给user设置name和age时前面我们是一步一步设置使用hmset和hmget可以一次性来设置多个field的值和返回多个field的值 127.0.0.1:6379 hmset user2 name jerry age 110 job java coder OK 127.0.0.1:6379 hmget user2 name age job 1) jerry 2) 110 3) java coder 127.0.0.1:6379hlen统计一个hash有几个元素 127.0.0.1:6379 hlen user2 (integer) 3 127.0.0.1:6379hexists key field 查看哈希表key中给定域field是否存在 127.0.0.1:6379 hexists user2 name (integer) 1 127.0.0.1:63794List -1.(列表)-介绍 列表是简单的字符串列表按照插入顺序排序你可以添加一个元素到列表头部左边或者尾部右边 List的本质是一个链表List的元素的有序的元素的值可以重复 举例存放多个地址信息 city 北京 天津 上海 说明 北京 天津 上海 就是三个元素127.0.0.1:6379 lpush city beijing shanghai tianjing (integer) 3 127.0.0.1:6379 lrange city 0 -10表示开头 -1表示尾部 1) tianjing 2) shanghai 3) beijing 127.0.0.1:6379-2.关于list的基本命令介绍 lpush:从左边插入数据 rpush:从右边插入数据 lrange: 用法 lrange key start stop :返回列表key中指定区间内的元素区间以偏移量start和stop指定,下标(index)参数start和stop都是以0为底也就是说以0表示列表的第一个元素以1表示列表的第二个元素以此类推。你也可以使用函数负数下标以-1表示列表的最后一个元素-2表示列表的倒数第二个元素以此类推 lpop :从我们列表的左边弹出一个数据 rpop :从我们列表的右边弹出一个数据 del : 删掉这个列表 实战演示 127.0.0.1:6379 lpush herolist aa bb cc (integer) 3 127.0.0.1:6379 lrange herolist 0 -1 1) cc 2) bb 3) aa 127.0.0.1:6379 rpush herolist dd eee (integer) 5 127.0.0.1:6379 lrange herolist 0 -1 1) cc 2) bb 3) aa 4) dd 5) eee 127.0.0.1:6379 lpop herolist cc 127.0.0.1:6379 lrange herolist 0 -1 1) bb 2) aa 3) dd 4) eee 127.0.0.1:6379 rpop herolist eee 127.0.0.1:6379 lrange herolist 0 -1 1) bb 2) aa 3) dd 127.0.0.1:6379 del herolist (integer) 1 127.0.0.1:6379 lrange herolist 0 -1 (empty list or set) 127.0.0.1:6379 -3.List-使用细节和注意事项 1index按照索引下标获得元素从左到右编号从0开始 2LLEN key 返回列表key的长度如果key不存在则key被解释为一个空列表返回0 3List的其他说明 List数据可以从左或者右插入添加如果值全移除对应的键也就消失了 5Set (集合)-介绍 Redis的Set是string类型的无序集合。 底层是HashTble数据结构Set也是存放很多字符串元素字符串元素是无序的而且元素的值不能重复 举例存放多个邮件列表信息 email sgggsohu.com tomsohu.com 说明 key :email sgggsohu.com tomsohu.com 这两个就是元素 关于set的基本命令 sadd :添加元素 smembers 取出所有值 sismember 判断是否存在该成员 srem 删除指定值 127.0.0.1:6379 sadd emails tomsohu.com jackqq.com (integer) 2 127.0.0.1:6379 smembers emails 1) tomsohu.com 2) jackqq.com 127.0.0.1:6379 sadd emails kkyy.com uuqq.com (integer) 2 127.0.0.1:6379 smembers emails 1) uuqq.com 2) tomsohu.com 3) jackqq.com 4) kkyy.com 127.0.0.1:6379 sadd emails jackqq.com (integer) 0 //0表示添加失败因为set的元素是不可以重复的 127.0.0.1:6379 sismember emails tomsohu.com (integer) 1 //查看set里面是否含有tomsouhu.com这个元素 1代表存在 0代表不存在 127.0.0.1:6379 sismember emails tom~sohu.com (integer) 0 127.0.0.1:6379 srem emails tomsohu.com (integer) 1 //演示删除元素 127.0.0.1:6379 smembers emails 1) kkyy.com 2) uuqq.com 3) jackqq.com 127.0.0.1:6379 二、go操作redis 1、安装第三方开源的redis库 1使用第三方开源的redis库github.com/garyburd/redigo/redis 2在使用redis前先安装第三方Redis库在GOPATH路径下执行安装指令 D:\myfile\go\projectgo get github.com/garyburd/redigo/redis3安装之后可以看到如下包 特别说明在安装Redis 库之前确保已经安装并配置了git,因为是从github上下载安装库的需要使用到git 2、使用go语言开始进行操作 Set/Get接口 1操作string 说明通过golang添加和获取key-value【比如name-tom~】 package main import (fmtgithub.com/garyburd/redigo/redis )func main() {//通过go向redis写入数据和读取数据//1.连接到redisconn,err : redis.Dial(tcp,127.0.0.1:6379)if err ! nil {fmt.Println(redis.Dial err,err)return}defer conn.Close() //关闭//2.通过go向redis写入数据string [key-val]_, errconn.Do(Set,name,tomjerry毛毛和老鼠)if err ! nil {fmt.Println(set err,err)return}//3.通过go向redis读入数据string [key-val]r, err :redis.String(conn.Do(Get,name))if err ! nil {fmt.Println(Get err,err)return}//返回的r是interfacce{}//因为name对应的值是字符串因此我们需要转换[在一开始就用redis提供的方法进行转换]//nameString : r.(string) errofmt.Println(操作成功!,r) //操作成功! tomjerry毛毛和老鼠 }2操作hash 说明通过Golang对redis操作Hash数据类型 package main import (fmtgithub.com/garyburd/redigo/redis ) func main() {//通过go向redis写入数据和读取数据//1.连接到redisconn,err : redis.Dial(tcp,127.0.0.1:6379)if err ! nil {fmt.Println(redis.Dial err,err)return}defer conn.Close() //关闭//2.通过go向redis写入数据string [key-val]//写入名字_, errconn.Do(HSet,user01,name,john)if err ! nil {fmt.Println(hset err,err)return}//写入age_, errconn.Do(HSet,user01,age,10)if err ! nil {fmt.Println(hset err,err)return}//3.通过go向redis读入数据string [key-val]r1, err :redis.String(conn.Do(HGet,user01,name))if err ! nil {fmt.Println(hGet err,err)return}r2, err :redis.Int(conn.Do(HGet,user01,age))if err ! nil {fmt.Println(hGet err,err)return}fmt.Printf(操作成功! r1%v,r2%v\n,r1,r2) //操作成功! r1john,r210 }3批量操作Set/Get数据 说明通过Golang对Redis操作一次操作可以Set/Get多个key-val数 package main import (fmtgithub.com/garyburd/redigo/redis ) func main() {//通过go向redis写入数据和读取数据//1.连接到redisconn,err : redis.Dial(tcp,127.0.0.1:6379)if err ! nil {fmt.Println(redis.Dial err,err)return}defer conn.Close() //关闭//2.通过go向redis写入数据string [key-val]//写入名字和年龄_, errconn.Do(HMSet,user02,name,tom,age,19)if err ! nil {fmt.Println(HMSet err,err)return}//3.通过go向redis读入数据string [key-val]r, err :redis.Strings(conn.Do(HMGet,user02,name,age))if err ! nil {fmt.Println(hGet err,err)return}// fmt.Printf(r%v\n,r) //r[tom 19]for i,v : range r {fmt.Printf(r[%d]%v\n,i,v)}}4给数据设置有效时间 说明通过golang对redis操作给key-value设置有效时间 core code //给name数据设置有效时间10s _,err c.Do(expire,name,10)5操作List 说明通过golang对redis操作list数据类型 corecode _,errc.Do(lpush,herolist,no1.宋江,30,no2.吴用,28)5课堂练习 package main import (fmtgithub.com/garyburd/redigo/redis )func main() {var names stringvar ages intvar skills string//1.连接到redisconn,err : redis.Dial(tcp,127.0.0.1:6379)if err ! nil {fmt.Println(redis.Dial err,err)return}defer conn.Close() //关闭fmt.Println(请输入names: )fmt.Scan(names)fmt.Println(请输入ages: )fmt.Scan(ages)fmt.Println(请输入skills: )fmt.Scan(skills)//go操作redis进行写的操作_, errconn.Do(HMSet,monster,name,names,age,ages,skill,skills)if err ! nil {fmt.Println(HMSet err,err)return}//go操作redis进行读的操作r, err :redis.Strings(conn.Do(HMGet,monster,name,age,skill))if err ! nil {fmt.Println(HMGet err,err)return}for i,v : range r{fmt.Printf(r[%d]%v\n,i,v)}fmt.Println(操作完成)}6Redis连接池 说明通过Golang对redis的操作还可以通过redis连接池流程如下 -1.事先初始化一定数量的连接放入到连接池 -2.当go需要操作redis时直接从redis连接池取出连接即可 -3.这样可以节省临时获取redis连接的时间从而提高效率 core code var pool *redis.Pool pool redis.Pool{MaxIdle:8MaxActive:0IdleTimeout:100Dial:func()(redis.Conn,error){return redis.Dial(tcp,localhost:6379)}, } c :pool.Get()-4.示意图 package main import (fmtgithub.com/garyburd/redigo/redis ) //定义一个全局的pool var pool *redis.Pool//当启动程序时就初始化连接池 func init() {pool redis.Pool{MaxIdle:8, //最大空闲连接数MaxActive:0,//表示和数据库的最大连接数0表示没有限制IdleTimeout:100,//最大空闲时间Dial:func()(redis.Conn,error){//初始化连接的代码。连接哪个ipreturn redis.Dial(tcp,localhost:6379)},} } func main() {//先从pool池取出一个连接conn : pool.Get()defer conn.Close()_, err :conn.Do(Set,name,汤姆猫~~)if err ! nil {fmt.Println(conn.Do err,err)return}//取出r,err :redis.String(conn.Do(Get,name))if err ! nil {fmt.Println(conn.Do err,err)return}fmt.Println(r,r)}
http://wiki.neutronadmin.com/news/292237/

相关文章:

  • 女孩做网站运营好吗滁州市工程建设网站
  • 苏州区建设局网站做网站的公司现在还 赚钱吗6
  • 免费做苗木网站精品课程网站开发关键技术
  • 国外外贸网站阿里云部署网站教程
  • 重庆做网站公司有哪些定制网络接口报警灯生产厂商
  • 温州做网站中国城乡住建部建设部网站
  • 访问不到自己做的网站生态农庄网站建设
  • 中英文网站源码php电子商务网站建设参考文献2018
  • 搭建一个网站需要多久游戏代理免费
  • 天津做网站制作公司中国建筑股票
  • seo建站是什么wordpress收录查询
  • 长沙门户网站有哪些企业网站建设一站式服务
  • 惠州行业网站设计方案广州越秀发布
  • 网站维护 html跨境电商到什么网站做
  • 美食网站开发步骤grace8WordPress主题
  • 洛阳网站建设启辰网络网站正在建设_敬请期待!
  • 郑州做网站推广的公司哪家好中小型互联网企业有哪些
  • 当今做啥网站能致富gooood谷德设计网站
  • 企业网站seo价格任丘市做网站价格
  • 图片在线编辑网站单页面中添加wordpress的评论
  • 同仁网站建设公司网站开发和嵌入式开发
  • 网站开发技术服务费做商城网站多少钱
  • 做视频网站要什么软件下载网站上资源截图怎么做
  • 长安网站建设流程网站建设策划怎么沟通
  • 找个免费网站这么难吗怎么做游戏自动充值的网站
  • 企业网站建设推广公司旅游新闻最新消息
  • 无锡制作网站价格表做图片视频的网站有哪些问题
  • 怎么做html5网站吗上海教育网站前置审批
  • 私人路由器做网站台北网站建设
  • 专业网站设计发展前景泰安网站制作推荐