10.$和#的区别 | 11.添加对象时如何把生成的id返回

Posted banzhuanlaowang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了10.$和#的区别 | 11.添加对象时如何把生成的id返回相关的知识,希望对你有一定的参考价值。

一. Mybatis中$和#的区别。

1. $: 解析时不会为内容添加”” 他是sql语句的拼接存在sql注入的危害。传入的为表结构时。

2. #: 解析时会为内容添加””,它的sql时采用占位符,防止sql注入。

 

 

11.添加对象时如何把生成的id返回

  用:keyProperty="id"

技术图片

 1 <!--逆向工程自动生成-->
 2 <insert id="insertSelective" parameterType="com.zhiyou100.wc.bean.Users">
 3     <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">
 4       VALUES IDENTITY_VAL_LOCAL()
 5     </selectKey>
 6     insert into users
 7     <trim prefix="(" suffix=")" suffixOverrides=",">
 8       <if test="NAME != null">
 9         NAME,
10       </if>
11       <if test="age != null">
12         age,
13       </if>
14       <if test="sex != null">
15         sex,
16       </if>
17     </trim>
18     <trim prefix="values (" suffix=")" suffixOverrides=",">
19       <if test="NAME != null">
20         #NAME,jdbcType=VARCHAR,
21       </if>
22       <if test="age != null">
23         #age,jdbcType=INTEGER,
24       </if>
25       <if test="sex != null">
26         #sex,jdbcType=VARCHAR,
27       </if>
28     </trim>
29   </insert>

 

以上是关于10.$和#的区别 | 11.添加对象时如何把生成的id返回的主要内容,如果未能解决你的问题,请参考以下文章

如何动态创建石墨烯对象?例如,我想在运行时根据配置文件添加字段和解析器

如何在 NSArray 的第一个索引处添加对象

上课要求jdk版本1.8.0而我的版本是jdk11,有啥区别

Python中 appendextendinsertadd 区别

如何在我的程序中向我的对象和屏幕周围添加碰撞?

56 面向对象this和super的区别和应用