当前位置: 首页 > wzjs >正文

什么叫网站地图网站一键收录

什么叫网站地图,网站一键收录,网络推广员岗位职责,网站一年得多少钱目录 一区别 二SQL${}注入问题 一区别 在MyBatis中,#{}和${}是两种不同的参数占位符,用于在SQL语句中引用变量或参数。它们的区别如下: 1.#{}占位符(预编译):#{}是MyBatis中的预编译占位符,…

目录

一区别

二SQL${}注入问题

一区别

在MyBatis中,#{}和${}是两种不同的参数占位符用于在SQL语句中引用变量或参数。它们的区别如下:

1.#{}占位符(预编译):#{}是MyBatis中的预编译占位符,它会把传入的参数值自动进行预编译处理,以防止SQL注入攻击。#{}占位符会将参数值作为一个占位符传递给数据库驱动程序,驱动程序会将其转化为一个预编译的参数并进行安全处理,在执行SQL语句时,会将参数通过参数设置语句传递给数据库。

2.${}占位符(字符串拼接):${}是Mybatis中的字符串拼接占位符,它会直接传入的参数值拼接到SQL语句中。${}占位符会将参数值直接替换到生成的SQL语句中,这种方式比较灵活,可以动态拼接SQL语句的各个部分。

综上所述,#{}占位符提供了更高的安全性,适合用于参数值的传递而${}占位符具有更高的灵活性的,适合用于动态拼接SQL语句的各个部分,在使用占位符时,应根据具体的需求选择合适的方式,并注意参数值的安全。

简单来说#{}就是预编译处理${}是字符替换

预编译处理:是指MyBatis在处理的#{}时,就是把的#{}替换成了?号,使用PreparedStatement的set方法来赋值。也就是说#{}会把{}内的整体看成value,最后再给value加上单引号,重点强调引号内部是一个整体(#{}不会发生SQL注入的根本原因)。

二SQL${}注入问题

xml文件

<mapper namespace="com.caicode.dao.UserDao"><select id="query" resultType="com.caicode.entity.UserEntity">select * from user where sname = '${param1}' and spassword = '${param2}'</select>
</mapper>

 测试代码

public static void main(String[] args) throws IOException {UserEntity userEntity = new UserService().queryOne("lisi","' or 1 = '1");System.out.println("登录状态:"+(userEntity == null?"失败":"成功"));}

 sql最终的结果

select * from user where sname = 'Lisi' and spassword = '' or 1 = '1'

可以看到把符合结果的数据全部查询出来了,总共11条

而正常来说我们的一般输入是这样的

public static void main(String[] args) throws IOException {UserEntity userEntity = new UserService().queryOne("zhangsan","123qwe");System.out.println("登录状态:"+(userEntity == null?"失败":"成功"));}

 这样输入的话,最终的结果是一条。


文章转载自:

http://a6WQLdsL.rjynd.cn
http://Ch0Z2RL6.rjynd.cn
http://KazTeCUI.rjynd.cn
http://7HGIXc4I.rjynd.cn
http://KcoDonS9.rjynd.cn
http://0ParbJlr.rjynd.cn
http://Iyf4wigU.rjynd.cn
http://1b3x3pqA.rjynd.cn
http://nMPf9p4R.rjynd.cn
http://1SNdrQCd.rjynd.cn
http://BUBGRSPL.rjynd.cn
http://ihGwAm4W.rjynd.cn
http://1RT26Rri.rjynd.cn
http://sJRebckY.rjynd.cn
http://W25fC47R.rjynd.cn
http://GlwcxvuZ.rjynd.cn
http://bfrUUJux.rjynd.cn
http://dCZU8Hol.rjynd.cn
http://3aiKIzj6.rjynd.cn
http://L1yRwTUT.rjynd.cn
http://D99TDjcn.rjynd.cn
http://0u6l1o1k.rjynd.cn
http://nutI1WBl.rjynd.cn
http://m68jqtoY.rjynd.cn
http://1OVHHVYe.rjynd.cn
http://xUZqwCh4.rjynd.cn
http://KGblAU1Q.rjynd.cn
http://peB5AU5z.rjynd.cn
http://8OgtHHsc.rjynd.cn
http://wbxnMa70.rjynd.cn
http://www.dtcms.com/wzjs/767629.html

相关文章:

  • 百度手机模板网站张家界商城网站开发设计
  • 织梦做的网站后台怎么进wordpress邮件验证码
  • 影院网站怎么做学校建设服务网网站建设方案项目书
  • 襄樊网站开发深圳经济最新新闻
  • 孟津网站开发公明网站制作
  • 网站空间租用有哪些服务软件推广赚钱一个30
  • 网站透明导航代码关键词优化排名易下拉系统
  • 微信注册网站专业网站设计制作
  • 漳州正规网站建设wordpress的mvc
  • 网站建设服务器一般多少钱设计 网站 现状
  • 网站如何做线上支付功能怎样制作网页链接教程
  • 褚橙的网站建设联图二维码生成器
  • 做pc端网站方案个人网站设计要求
  • 做行业网站太原学网站开发的学校
  • 福建省住房城乡建设厅网站无货源电商
  • 数据开发网站模板网页制作大作业
  • 地方门户网站建设要求镇江东翔网络科技有限公司
  • 北京南站最新消息中企动力网站模板
  • 贵州软件开发 网站开发好123设为主页
  • 网站登录模板下载吴江网站设计
  • 有没有免费的企业网站建设英文网站建设方案模板高校
  • 网站 建设需求wordpress 页码
  • 长沙企业网站设计百度关键词点击价格查询
  • 最牛的SEO教程网站物业公司排名2020最新排名
  • 免费flash网站源码水煮鱼wordpress模板
  • 电影网站内页中国企业商务网站建设
  • 温州 网站优化搜狗 优化网站
  • 网站建设伍金手指下拉3免费 片
  • 企业网站备案 淘宝客怎么查询网站建设期
  • 海南学校网站建设网站建设与推广合肥