mybatis
雨轩_wscrf
奔跑在通往技术大牛的道路上。。。。
展开
-
mybatis 中#与$的区别
1. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。如:order by #user_id#,如果传入的值是111,那么解析成sql时的值为order by "111", 如果传入的值是id,则解析成的sql为order by "id". 2. $将传入的数据直接显示生成在sql中。如:order by $user_id$,如果传入的值是111,那么解析成sql时的值为o转载 2017-12-08 15:03:02 · 137 阅读 · 0 评论 -
mybatis是如何防止SQL注入的
SQL注入是一种很简单的攻击手段,但直到今天仍然十分常见。究其原因不外乎:No patch for stupid。为什么这么说,下面就以JAVA为例进行说明:假设数据库中存在这样的表:[java] view plain copy table user( id varchar(20) PRIMARY KEY , name varchar(20) ...转载 2018-03-27 10:04:34 · 141 阅读 · 0 评论 -
Mybatis 中#和$区别
#号与$区别:#号表示参数,$代表一个字符串。如:select a,b,c from table1 where id=#value#,传入参数后如:value="1",则可生成:select a,b,c from table1 where id=‘1’。selec...转载 2018-03-27 10:06:54 · 266 阅读 · 0 评论 -
Mybatis 中 in 语法 的# 与 $区别
今天写map时,(伪代码):update xxx t set t.a='1' where id in (#{ids});当ids传入为string 1,2,3 时,得出效果只是更新了id=1的数据,原来#{xxx}是一个字符串,mybatis只会当他是一个值,如果你想达到字面上的效果:1 用${ids} 把ids当成字符串传进来2 update xxx t set t.a='1' where id...转载 2018-03-27 10:09:38 · 9094 阅读 · 0 评论 -
forever_2h mybatis 之 占位符#{} 和 ${}
#{}占位符用来设置参数,参数的类型可以有3种,基本类型,自定义类型,map基本类型作为参数,参数与占位符中的名称无关。<select id="findById" parameterType="int" resultType="cn.wh.vo.Role"> select * from t_role where id = #{xxxid} </select...转载 2018-03-27 10:12:10 · 349 阅读 · 0 评论