1 Star 0 Fork 0

wenj91 / dubbo-go-hessian2

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
user.go 1.85 KB
一键复制 编辑 原始数据 按行查看 历史
wenj91 提交于 2024-01-08 20:36 . first commit
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package user
import (
"fmt"
"strconv"
"time"
)
import (
hessian "gitee.com/wenj91/dubbo-go-hessian2"
)
type Gender hessian.JavaEnum
const (
MAN Gender = iota
WOMAN
)
var genderName = map[Gender]string{
MAN: "MAN",
WOMAN: "WOMAN",
}
var genderValue = map[string]Gender{
"MAN": MAN,
"WOMAN": WOMAN,
}
func (g Gender) JavaClassName() string {
return "org.apache.dubbo.sample.Gender"
}
func (g Gender) String() string {
s, ok := genderName[g]
if ok {
return s
}
return strconv.Itoa(int(g))
}
func (g Gender) EnumValue(s string) hessian.JavaEnum {
v, ok := genderValue[s]
if ok {
return hessian.JavaEnum(v)
}
return hessian.InvalidJavaEnum
}
type User struct {
// !!! Cannot define lowercase names of variable
ID string
Name string
Age int32
Time time.Time
Sex Gender // notice: java enum Object <--> go string
}
func (u User) String() string {
return fmt.Sprintf(
"User{ID:%s, Name:%s, Age:%d, Time:%s, Sex:%s}",
u.ID, u.Name, u.Age, u.Time, u.Sex,
)
}
func (u *User) JavaClassName() string {
return "org.apache.dubbo.sample.User"
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/wenj91/dubbo-go-hessian2.git
git@gitee.com:wenj91/dubbo-go-hessian2.git
wenj91
dubbo-go-hessian2
dubbo-go-hessian2
6bc30ac5943c

搜索帮助

344bd9b3 5694891 D2dac590 5694891