记录一下今天做项目出现的问题以及解决方案。

一.项目的部分代码

  1. pojo层
public class Attendance {private Integer id;private Staff staff;@DateTimeFormat(pattern = "yyyy-MM-dd")@JsonFormat(timezone = "GMT-8",pattern = "yyyy-MM-dd")private Date adate;private String type;private String remarks;public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public Staff getStaff() {return staff;}public void setStaff(Staff staff) {this.staff = staff;}public Date getAdate() {return adate;}public void setAdate(Date adate) {this.adate = adate;}public String getType() {return type;}public void setType(String type) {this.type = type;}public String getRemarks() {return remarks;}public void setRemarks(String remarks) {this.remarks = remarks;}@Overridepublic String toString() {return "Attendance{" +"id=" + id +", staff=" + staff +", adate=" + adate +", type='" + type + '\'' +", remarks='" + remarks + '\'' +'}';}
  1. dao层
public interface AttendanceDao {@Insert(value = "insert into attendance(id,sid,adate,type,remarks) values(default,#{sid},#{adate},#{type},#{remarks})")int insAttendance(@Param("sid")Integer sid,@Param("attendance")Attendance attendance);
}
  1. service和serviceImpl层略(因为都差不多)
  2. controller层
public class AttendanceController {@Autowiredprivate AttendanceService attendanceService;@RequestMapping(value = "/attendanceAdd")public ModelAndView attendanceAdd(ModelAndView mv, Attendance attendance,@RequestParam("attdate") String attdate,String name,Integer did){Staff staff = attendanceService.selByNameDid(name, did);if(staff!=null){attendance.setAdate(Date.valueOf(attdate));attendanceService.insAttendance(staff.getId(),attendance);mv.setViewName("redirect:/attendance/attendance-list/select");}else{mv.addObject("msg","alert('该用户不存在,请检查输入的姓名和部门名称是否正确!')");mv.setViewName("/right");}return mv;}

二.解决过程

  1. 起初看了一些csdn相关的文章,因为传递的参数较多所以出现这种异常。解决方案有两种。
    第一种使用@Param参数,
    第二种用#{0},#{1}。
    以上方法第一种我就是使用注解来让mybatis识别的,但还是出现这种错误!
    第二种更不可能,我传递的有对象肯定不能以这种方式。
    还有一种说法@Param注解导包问题,导入的是mybatis的而不是spring下的,在这里我导入的是org.apache.ibatis.annotations.Param也没有问题。
    这就很奇怪了!!!
  2. 然后就看到了这篇文章,算是已有一些启发https://blog.csdn.net/xu1227233860/article/details/77387088
    因为我想我这里也就额外添加了一个参数,为什么不把它放在同一个实体类中呢?
    在Attendance实体类中新加入一个私有属性sid,加上get/set方法,而dao层接口中自然也就变成了int insAttendance(Attendance attendance); ,其他层的代码相继稍微修改一下。
    结果一试,插入数据成功了!到现在我还是实在想不明白为什么添加注解也无法插入成功,有机会一定要问问大佬。

Parameter 'attendance' not found. Available parameters are [param1, attendance, sid, param2]解决方法相关推荐

  1. 解决Parameter ‘MP_OPTLOCK_VERSION_ORIGINAL‘ not found. Available parameters are [param1, et]的问题

    在练习ssmp整合的时候遇到了下面报错信息 Caused by: org.apache.ibatis.binding.BindingException: Parameter 'MP_OPTLOCK_V ...

  2. Parameter 'goodsName' not found. Available parameters are [ param1, goods]

    1. 报错 (mybatis) nested exception is org.apache.ibatis.binding.BindingException: Parameter 'goodsName ...

  3. 错误:Parameter ‘0‘ not found.Available parameters are [arg1, arg0, param1, param2]的解决方法

    错误:Parameter '0' not found.Available parameters are [arg1, arg0, param1, param2]的解决方法 参考文章: (1)错误:Pa ...

  4. Parameter ‘username‘ not found. Available parameters are [arg1, arg0, param1, param2] 绑定参数异常

    出现绑定异常 绑定参数username找不到,这是一个知识点的补漏,这篇文章相信对你肯定有所帮助! org.apache.ibatis.binding.BindingException: Parame ...

  5. idea运行报错Parameter ‘name‘ not found. Available parameters are [arg1, arg0, param1, param2]

    Parameter 'name' not found. Available parameters are [arg1, arg0, param1, param2] 出现问题: 在mapper或者dao ...

  6. 【问题记录】04 MyBatis报错:Parameter ‘XXX‘ not found. Available parameters are [page, hashMap, param1, param

    1.报错信息如下: nested exception is org.apache.ibatis.binding.BindingException:Parameter 'XXX' not found. ...

  7. Parameter 'propertyName' not found. Available parameters are [propertyInformation, id, param1, para

    报错: Parameter 'propertyName' not found. Available parameters are [propertyInformation, id, param1, p ...

  8. Parameter ‘ew‘ not found. Available parameters are [wrapper, page, param1, param2]

    Parameter 'ew' not found. Available parameters are [wrapper, page, param1, param2] 源码 Impl类 @Overrid ...

  9. 批量插入报错:Parameter ‘id‘ not found. Available parameters are [forlonList, param1]

    项目场景: 在开发中,需要通过批量插入,生成主键id,然后进行数据关联操作 问题描述 Caused by: org.apache.ibatis.executor.ExecutorException: ...

最新文章

  1. HDOJ_ACM_折线分割平面
  2. C语言经典例5-输入三个数由小到大输出
  3. 如何求一个数的因数 c语言代码,【代码】求一个数的因数和、求优化、顺便也供新人参考算法...
  4. 学习笔记Hive(七)—— 自定义函数
  5. JSON序列化(stringify)对象时排除某些属性的两种方法
  6. UML中类之间的几种关系
  7. 微型计算机最早提出于,计算机基础题1、世界上第一台电子计算机诞生于A)1943年B-查字典问答网...
  8. 用lambda表达式实现Runnable
  9. 673. Number of Longest Increasing Subsequence
  10. 华为在中国建立其全球最大的网络安全透明中心
  11. 【iOS】Swift3:context.executeFecthRequest(request, error: nil)
  12. 【Codeforces 1421 D】Hexagons,贪心,模拟
  13. 系统学习NLP(二十二)--主题模型LDA
  14. mysql 冷备搭建_从MySQL冷备说起_MySQL
  15. window.print()后针式打印机打印出的内容成虚线问题
  16. 从零开始学centos(一)
  17. Ubuntu磁盘分区和挂载
  18. 26. 简述队列和栈的异同
  19. 抖音sdk,抖音开发api接口
  20. 关于虚拟机.vmdk与.ovf 磁盘装载问题

热门文章

  1. uva10375 选择与除法 唯一分解定理
  2. [Halcon标定] 单相机标定
  3. ubuntu18和win7双系统安装完成---wifi上网慢和中文输入法配置记录
  4. 应届毕业生为什么要参加IT培训?
  5. eclipse连接mysql提示404_致banq: eclipse数据源连接池提示Missing application web.xml, *错误 ?...
  6. 2023最新国内外主流短信平台汇总
  7. qpython3l如何使用_qpython3l怎么用
  8. Creo 钣金设计视频教程
  9. ffplay出现h264或者no frame或者missing picture in access unit with size 1392错误
  10. HelloCarbide Example详细解读