1、重新运行了数据库脚本,导致前台页面的目录内容消失

原因:原来的数据库脚本没有新建的目录信息,数据库表中没有信息,如若依系统

2、掉后台接口:就是调用controller层里面的方法,需要有数据库数据才能把数据上传到页面上。需要用到数据库表

3、在开发中添加了一个对话框,却怎么也弹不出来,最后发现:添加的对话框嵌套在了另一个对话框里面

4、在开发中突然页面显示不出自己的菜单了,也不是数据库的问题,最后发现是vue.config.js里面的路径变了
5、Ambiguous mapping. Cannot map ‘XXXXController’ method
img
解决办法基本上说是controller层的方法指定了两个相同的路径,如果controller层里面没有相同的路径,则看方法里面有没有写路径

判断信息为空

当前端页面不填写任何信息的时候,点击确定会提示“项目信息为空,请填写完整的项目信息”,这个功能后端的处理:

之前的逻辑错误:

之前是想做判断信息全部为空的时候抛出提示,但是这个思路是错误的,因为这里面会允许部分字段为空,有些字段是一定不为空,所以要做的是不为空的校验。

处理方式一:在接口处添加if判断

之前的错误逻辑:

if (rulesNamed == null || rulesNamed.getProjectId() == null) {
            return AjaxResult.error("cregrtber");
        }

遇到的问题:

刚开始只做了rulesNamed == null的判断,但是没有用,debugger之后发现,ruleNamed并不是空的,他有地址,空的只是ruleNamed类中的属性,所以最后又添加了其中的一个属性为空,rulesNamed.getProjectId() == null,最后成功

正确的逻辑:

判断项目id、有效开始日期、有效结束日期不为空即可。(代码略)

处理方式二:添加@NotNull和@Valid注解

①在实体类中的日期上添加@NotNull注解

②接口处参数列表中添加@Valid注解

Logo

快速构建 Web 应用程序

更多推荐