mybatis中的#和$的区别?

 时间:2024-10-13 22:42:04

1、在xml文件中书写如下代码,有$和#。<select id="findById" resultTyp髫潋啜缅e="Dept" parameterType="long"> SELECT deptno,dname,loc FROM ${deptno} WHERE deptno=#{deptno} </select>

mybatis中的#和$的区别?

2、执行单元测试。There is no getter for property named 'deptno' in 'class java.lang.Long'

mybatis中的#和$的区别?

3、说明${deptno}被解析成带有引号的'deptno'.

mybatis中的#和$的区别?

4、$一般被用于传递表名,$将传入的数据直接显示生成在sql中<sele罕铞泱殳ct id="fin颊俄岿髭dById" resultType="Dept" parameterType="long"> SELECT deptno,dname,loc FROM ${deptTable} WHERE deptno= #{deptno} ;</select>

mybatis中的#和$的区别?

5、#{}会把传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。

mybatis中的#和$的区别?

6、#{}方式能够很大程度防止sql注入,${}方式无法防止Sql注入。

mybatis中的#和$的区别?
  • ubuntu下编译试用bullet3物理引擎
  • CentOS如何添加PATH路径?
  • Windows11系统如何固定开始菜单#校园分享#
  • 怎么让service一直运行
  • 如何检查CPU是否支持硬件辅助虚拟化
  • 热门搜索
    toner什么意思 贴墙纸用什么胶水 本人成分填什么 什么是阴极保护 亡羊补牢的意思和道理 什么是hifi 乐趣的意思 泄露的意思 什么是准备金率 量力而行的意思