- 博客(14)
- 资源 (1)
- 收藏
- 关注
原创 Golang学习-复合数据类型(结构体,JSON)
结构体成员的输入顺序也有重要的意义,我们可以将Position成员合并(因为也是字符串类型),或者是交换Name和Address出现的先后顺序,那样的话就是定义了不同的结构类型。每个值成为结构体的成员。还有就是成员的命名也是遵循导出规则的,如果结构体成员名字是以大写字母开头的,那么该成员就是导出的。如果结构体的全部成员是可以比较的,那么结构体也是可以比较的,那样的话两个结构体可以使用。,是用来声明序列化为json时的key名称和反序列化时成员对应的json的key的名称。结构体可以作为函数的参数和返回值。
2024-11-12 11:37:30 297
原创 Golang学习-复合数据类型(数组,slice,map)
此处会发现 index并不是 0 1 2 3 递增的,而是直接从0跳到了3,我们之前提到过,string的本质就是字节数组,但是在Unicode编码中,一个字符可能需要一个或者多个字节才能表示,当我们迭代每一个字符时,则会读取到多个字节,导致index的跳跃。它是一个无序的key/value对的集合,其中所有的key都是不用的,然后通过给定的key可以在常数时间复杂度内检索、更新或删除对应的value。迭代Map,需要注意的是,Map的迭代顺序是不确定的,并且不同的哈希函数实现可能导致不同的遍历顺序。
2024-10-29 10:28:12 687
原创 Golang学习-基本数据类型
strings包也有类似的函数,它们是ToUpper和ToLower,将原始字符串的每个字符都做相应的转换,然后返回新的字符串。这里有int8、int16、int32、int64四种大小不同的有符号整数类型,分别对应8、16、32、64bit大小的有符号整数,与此对应的是uint8、uint16、uint32、uint64四种大小不同的无符号整数类型。函数返回的并不是对应的字符数,而是该字符串对应的字节数目(一个字符对应一个或者多个字节),索引返回的也是字节值。true的值为false,更罗嗦的说法是。
2024-10-23 15:29:55 759
原创 Golang学习-类型、包
一个包的源代码保存在一个或多个以.go为文件后缀名的源文件中,通常一个包所在目录路径的后缀是包的导入路径;例如,一个int类型的变量可以用来表示一个循环的迭代索引、或者一个时间戳、或者一个文件描述符、或者一个月份;每个包都对应一个独立的名字空间。变量或表达式的类型定义了对应存储值的属性特征,例如数值在内存的存储大小(或者是元素的bit个数),它们在内部是如何表达的,是否支持一些操作符,以及它们自己关联的方法集等。新命名的类型提供了一个方法,用来分隔不同概念的类型,这样即使它们底层类型相同也是不兼容的。
2023-08-15 16:32:57 91
原创 Golang学习-变量、指针
Go语言中的函数名、变量名、常量名、类型名、语句标号和包名等所有的命名,都遵循一个简单的命名规则:一个名字必须以一个字母(Unicode字母)或下划线开头,后面可以跟任意数量的字母、数字或下划线。对于在包一级声明的变量来说,它们的生命周期和整个程序的运行周期是一致的。而相比之下,局部变量的生命周期则是动态的:每次从创建一个新变量的声明语句开始,直到该变量不再被引用为止,然后变量的存储空间可能被回收。表达式new(T)将创建一个T类型的匿名变量,初始化为T类型的零值,然后返回变量地址,返回的指针类型为*T。
2023-08-07 16:04:42 175
原创 Spring Cloud Alibaba (一) 之Nacos
关于Nacos在微服务概念兴起之后,越来越多的项目使用微服务的架构理念,随着服务节点的逐渐增多,我们需要一个独立的服务或者说组件,对我们的所有微服务节点进行管理。最早还没有SpringCloud的时候,我们在用Dubbo的同时也需要搭建Zokeeper作为注册中心来管理所有的Dubbo的生产者和消费者,Zokeeper也就实现了其中的服务治理的功能,但是这也只是Zokeeper其中一小部分的功能,为了服务治理就是用Zookeeper是一件事倍功半的事,在SpringCloud横空出世后Netflix开源了
2020-11-27 16:54:09 677 1
原创 SpringCloud(三) —— Feign
1. Feign是什么?Feign是一个声明式的伪Http客户端,它使得写Http客户端变得更简单。使用Feign,只需要创建一个接口并注解。它具有可插拔的注解特性,可使用Feign 注解和JAX-RS注解。Feign支持可插拔的编码器和解码器。Feign默认集成了Ribbon,并和Eureka结合,默认实现了负载均衡的效果。2. 用来做什么?1.Feign是用来做服务之间的远程调用的,类似...
2019-02-19 11:17:01 222
原创 SpringCloud(二) —— eureka-服务的注册与发现
上文我们讲到了eureka服务中心的环境搭建,用来作为各个服务的状态监控以及调度。现在就来讲讲各个服务怎么想eureka服务中心注册自己。1. 创建工程创建一个普通的Springboot Model引入eureka-client包,本文选用了web服务所以还需要引入web包 (需要在主POM文件中引入该Model)pom配置<?xml version="1.0&am
2019-02-18 11:30:14 197
原创 SpringCloud(一) —— eureka服务中心
1. 版本兼容问题使用SpringCloud时,需要注意SpringBoot和Cloud的版本兼容问题如果出现启动错误需要先确认是否版本出现了问题2. SpringCloud架构在搭建eureka服务中心前,先简单说明一下eureka在SpringCloud中的定位以及SpringCloud中的各个组件。服务中心又称注册中心,管理各种服务功能包括服务的注册、发现、熔断、负载、降级等,...
2019-02-15 15:08:33 232
原创 springboot中swagger2的使用
pom文件导包<!--swagger--><dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.2.2</version&a
2018-12-11 14:55:32 333 1
原创 Shiro权限管理框架
1.shiro是一个用户权限管理框架2.常用的用户权限管理表设计 用户表 用户角色表 角色表 角色权限表 权限表 (关于表的设计不再赘述,本次只讲关于shiro框架的使用 )3.在Spring中集成shiro(通过Maven) a.依赖:<!--shiro begin--><dependency> <groupId>or...
2018-06-27 17:38:06 301
原创 SpringMVC+自定义注解实现注解拦截器
目的:通过注解标注该请求需要进行拦截1.自定义注解: 创建名为LoginInterceptor的注解//生成javadoc时会包含注解@Documented//作用域@Target( { ElementType.METHOD, ElementType.TYPE })//生命周期@Retention(RetentionPolicy.RUNTIME)public @i...
2018-05-17 21:13:34 3145 2
原创 MyBatis框架
什么是 MyBatis ? MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。
2017-12-07 22:40:27 250
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人