开发中的问题
1、重新运行了数据库脚本,导致前台页面的目录内容消失原因:原来的数据库脚本没有新建的目录信息,数据库表中没有信息,如若依系统2、掉后台接口:就是调用controller层里面的方法,需要有数据库数据才能把数据上传到页面上。需要用到数据库表3、在开发中添加了一个对话框,却怎么也弹不出来,最后发现:添加的对话框嵌套在了另一个对话框里面4、在开发中突然页面显示不出自己的菜单了,也不是数据库的问题,最后发
1、重新运行了数据库脚本,导致前台页面的目录内容消失
原因:原来的数据库脚本没有新建的目录信息,数据库表中没有信息,如若依系统
2、掉后台接口:就是调用controller层里面的方法,需要有数据库数据才能把数据上传到页面上。需要用到数据库表
3、在开发中添加了一个对话框,却怎么也弹不出来,最后发现:添加的对话框嵌套在了另一个对话框里面
4、在开发中突然页面显示不出自己的菜单了,也不是数据库的问题,最后发现是vue.config.js里面的路径变了
5、Ambiguous mapping. Cannot map ‘XXXXController’ method
解决办法基本上说是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注解
更多推荐
所有评论(0)