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返回的主要内容,如果未能解决你的问题,请参考以下文章
如何动态创建石墨烯对象?例如,我想在运行时根据配置文件添加字段和解析器
上课要求jdk版本1.8.0而我的版本是jdk11,有啥区别