NutzCN Logo
问答 @Prev 注解未生效
发布于 2186天前 作者 menglinxi 2143 次浏览 复制 上一个帖子 下一个帖子
标签:
@Table("g_company")
public class Company extends BasePojo{
    @Id
    protected int id;
    @Column
    @Comment("厂商名称")
    protected String name;
    @Column
    @Comment("官网地址")
    @ColDefine(width = 150)
    protected String url;
    @Column
    @Comment("厂商简介")
    @ColDefine(width = 500)
    protected String description;
    @Column
    @Comment("厂商头像")
    @ColDefine(width = 150)
    protected String head;

    @Prev(@SQL("select name from g_company where name=@name"))
    public String checkname;

    @Column
    @Comment("公司类型")
    @ColDefine(width = 2)
    protected int type=1;

插入逻辑

 @At
    public Object add(@Param("..")NutMap np){
        try {
            Company company = new Company();
            company.setName(np.getString("name", ""));
            company.setUrl(np.getString("url"));
            company.setDescription(np.getString("description"));
            company.setHead(np.getString("head"));
            company.setType(np.getInt("type"));
//            if (company.checkname.equals(company.getName())) {
//                return NutMap.NEW().setv("fail", -1).setv("msg", "公司名称已存在").setv("company", company);
//            }
            dao.insert(company);
            return NutMap.NEW().setv("ok", 1).setv("msg", "新增公司成功").setv("company", company);
        }catch (Exception e)
        {
            e.printStackTrace();
            return NutMap.NEW().setv("fail", -1).setv("msg", "添加公司失败");
        }
    }

数据库做了唯一性约束。
插入之前,想检查一下名称是否重复。

没能实现,插入前查询 已存在的 公司名称。

3 回复

要执行insert的时候才会执行@Prev你想提前获取的话,只能count/fetch一下

明白了,本质上是填充要入库的字段值?

添加回复
请先登陆
回到顶部