
后端框架
后端框架——MyBatis、Spring、Spring MVC、Spring BOOT、Spring Cloud、Docker。
Whitemeen太白
这个作者很懒,什么都没留下…
展开
-
Controller层和Service层具体区分
controller层,主要用于给前端返回数据的以及接收前端的数据的,service层,总之就是处理数据用的。处理controller层传过来的数据然后传给给dao层链接数据库进行增删改查,从dao层传过来的数据的处理,比如封装成JavaBean。涉及请求、参数、序列化之类的逻辑可以放在controller。而具体到数据的操作逻辑,也就是增删改查的操作都应该完整封装到service中。一方面是对于事务的要求,比如一个请求过来,后台需要多步增删改查,一般都要求放到一个service方法中也就是原创 2022-03-18 13:11:51 · 14352 阅读 · 1 评论 -
MyBatis 如何防止SQL注入 —— 底层原理
一、SQL注入SQL注入是在Web页面的查询入口传入SQL非法参数,在事先定义好的查询语句的结尾上添加额外的SQL语句,修改拼接成SQL语句,传递给Web服务器,进而传给数据库服务器执行,威胁数据库数据信息安全。二、SQL注入方法由于编写程序时未对用户输入数据的合理性进行判断,导致攻击者能在SQL的注入点中夹杂代码进行执行,并通过页面返回的提示,获取进行下一步攻击所需的信息。根据输入的参数,可将SQL注入方式大致分为两类:数字型注入、字符型注入。1. 数字型注入当输入的参数为整型时,如ID、年龄、原创 2021-03-15 17:20:27 · 1990 阅读 · 3 评论 -
MyBatis 实现模糊查询的三种SQL拼接方式
1. sql中字符串拼接 SELECT * FROM student WHERE name LIKE CONCAT(CONCAT('%', #{text}), '%');避免使用"${}"拼接,避免SQL注入。2. 使用 ${} 拼接 SELECT * FROM student WHERE name LIKE '%${text}%'; ${}解析过来的参数值不带单引号,#{}解析传过来参数带单引号。在Web项目中,如果没有防范SQL注入的机制,要谨慎使用“${}”符号拼接SQL语原创 2021-03-15 16:41:41 · 4507 阅读 · 0 评论