首页 新闻 搜索 专区 学院

在updata中用Param注解自定义的参数

0
悬赏园豆:100 [已解决问题] 解决于 2022-04-26 17:13

我实在写增删改查中的修改

在点击修改后,会将JSON转化为java,并获取其中的id使用update方法来完成修改。

假如修改功能完成后,我会让新增功能与修改共用一个表单,通过判断有无id传入。有id传入的是修改,没有的是新增。
但是,卡死在了第一步,请求高人解惑。。

<---BrandMapper--->

@Update("UPDATE tb_brand SET brand_name=brandName,company_name =companyName,ordered =ordered,description =description,status =status WHERE id = #{id}")
void update(@Param("brand") Brand brand ,@Param("id") Integer id);

<----BrandServlet----->

public void update(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
{
BufferedReader br = req.getReader();
String params = br.readLine();
Brand brand = JSON.parseObject(params,Brand.class);
Integer id =(Integer) brand.getId();
brandService.update(brand,id);
resp.getWriter().write("success");

}

但是在运行时报错
如下
Caused by: org.apache.ibatis.exceptions.PersistenceException:

Error updating database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'brandName' in 'field list'

The error may exist in com/itheima/mapper/BrandMapper.java (best guess)

The error may involve com.itheima.mapper.BrandMapper.update-Inline

The error occurred while setting parameters

tengjingshu的主页 tengjingshu | 初学一级 | 园豆:114
提问于:2022-04-23 21:31
< >
分享
最佳答案
0

解决方案:
1、检查实体类属性跟数据表字段名称是否一致
2、检查数据表字段有没有空格或者回车
3、检查数据库编码和数据表字段编码是否一致
4、检查数据库有没有用对

收获园豆:100
三人乐乐 | 老鸟四级 |园豆:4306 | 2022-04-24 10:47
其他回答(1)
1

brand_name=brandName

brand_name = #{brand.brandName}

你这个SQL好几个字段都有这个问题。

mowen285 | 园豆:420 (菜鸟二级) | 2022-04-26 17:09
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册