什么是泛型
泛型,又称为"参数多态",是一种允许你编写出可以处理不同数据类型(而非单一数据类型)的代码的程序设计范式。泛型有助于提高代码复用性,增加类型安全性,以及有时还能优化性能
如何使用泛型生成增删改查
package main
type Curd[T any] interface {
TableName() string
Get(id int64) (any, error) // id 获取
Create(*T) (int64, error) // 添加
GetList() ([]*T, error) // 获取列表
Delete(id int64) error // 删除
UpdateById(id int64) error // 更新
GetId() int64 // 获取ID
}
goland 快捷键 command + n
选择实现方法 选择对应CURD
实现方法
tab
选择 *Customer
type Customer struct {
}
func (c *Customer) TableName() string {
//TODO implement me
panic("implement me")
}
func (c *Customer) Get(id int64) (any, error) {
//TODO implement me
panic("implement me")
}
func (c *Customer) Create(t *Customer) (int64, error) {
//TODO implement me
panic("implement me")
}
func (c *Customer) GetList() ([]*Customer, error) {
//TODO implement me
panic("implement me")
}
func (c *Customer) Delete(id int64) error {
//TODO implement me
panic("implement me")
}
func (c *Customer) UpdateById(id int64) error {
//TODO implement me
panic("implement me")
}
func (c *Customer) GetId() int64 {
//TODO implement me
panic("implement me")
}