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

永州网站建设gwtcms百度一下打开

永州网站建设gwtcms,百度一下打开,现在什么网站做基础销量好,wordpress 项目管理插件文章目录一.Map的使用和模糊查询的需求实现及其防SQL注入优化1.1 Map的使用1.2 模糊查询的实现1.2.1 防SQL注入优化1.2.2 总结一.Map的使用和模糊查询的需求实现及其防SQL注入优化 1.1 Map的使用 替换之前的根据ID查询信息: 1.编写接口: User getUse…

文章目录

  • 一.Map的使用和模糊查询的需求实现及其防SQL注入优化
    • 1.1 Map的使用
    • 1.2 模糊查询的实现
      • 1.2.1 防SQL注入优化
      • 1.2.2 总结

一.Map的使用和模糊查询的需求实现及其防SQL注入优化

1.1 Map的使用

替换之前的根据ID查询信息:

1.编写接口:

User getUserById2(Map<String,Object> map);

2.编写对应的mapper对应的sql语句:

<select id="getUserById2" parameterType="map" resultType="com.zhu.pojo.User">select * from mybatis.user where id = #{helloid} and name = #{name};
</select>

3.编写测试类:

@Test
public void getUserById2(){SqlSession sqlSession = Mybatisutils.getSqlSession();UserMapper mapper = sqlSession.getMapper(UserMapper.class);Map<String, Object> map = new HashMap<String, Object>();map.put("helloid",2);mapper.getUserById2(map);sqlSession.close();
}

以增加用户为例:

1.编写接口:

int addUser2(Map<String,Object> map);

2.编写对应的mapper对应的sql语句:

<insert id="addUser2" parameterType="map" >insert into  mybatis.user (id,name,pwd) values (#{Userid},#{Username},#{Userpwd});
</insert>

3.编写测试类:

@Test
public void addUser2(){SqlSession sqlSession = Mybatisutils.getSqlSession();UserMapper mapper = sqlSession.getMapper(UserMapper.class);Map<String, Object> map = new HashMap<String, Object>();map.put("Userid",5);map.put("Username","34234234");map.put("Userpwd","你好");mapper.addUser2(map);sqlSession.close();
}

Map 传递参数, 直接在 sql 中取出 key 即可!【parameter Type=“map”】

对象传递参数, 直接在 sql 中取对象的属性即可!【parameter Type=“Object”】

只有一个基本类型参数的情况下, 可以直接在 sql 中取到!

多个参数用 Map, 或者注解!

1.2 模糊查询的实现

在sql中,可以根据某些特定的条件进行模糊查询,比方说要查找咦某个字母开头的昵称,或者一组类似的数据等。我们用字段like表示相似,来进行模糊查询。
在模糊查询中,%表示任意字符,_表示一个字符。

1.先看sql里的数据:

image-20230326131659606

2.编写接口:

List<User> getUserLike(String name);

3.编写SQL模糊语句查询:

<select id="getUserLike" resultType="com.zhu.pojo.User">select * from mybatis.user where name like #{value};
</select>

4.编写测试类:

@Test
public void getUserLike(){SqlSession sqlSession = Mybatisutils.getSqlSession();UserMapper mapper = sqlSession.getMapper(UserMapper.class);List<User> userLike = mapper.getUserLike("%猪%");for (User user : userLike) {System.out.println(user);}

运行结果如下:

image-20230326131822998

1.2.1 防SQL注入优化

比如在平时的模糊查询中,有用户输入了 1 or 1=1 ,这样就会把整个表爆出。

为了防止这种情况,我们理应直接在XML里规定其SQL语句的规范。

<select id="getUserLike" resultType="com.zhu.pojo.User">select * from mybatis.user where name like "%"#{value}"%";
</select>

那么测试类里的代码:

List<User> userLike = mapper.getUserLike("猪");

依然可以正常的模糊查询:

image-20230326132125285

1.2.2 总结

  1. Java 代码执行的时候,传递通配符%%
  2. 在 sql 拼接中使用通配符!
http://www.dt0577.cn/news/33044.html

相关文章:

  • 单位网站建设要求快手刷粉网站推广
  • 请人做网站域名和主机西安网站建设
  • 网站建设开发公司哪家好seo优化的价格
  • 萍乡市建设局网站王丽友情链接交易购买
  • 企业微信开发文档优化关键词排名优化公司
  • 鸿基建设工程有限公司网站简单免费制作手机网站
  • 电影网站域名北京疫情又严重了
  • 玉溪网站制作杭州seo哪家好
  • 用织梦做网站快吗广州网站建设正规公司
  • 成都商城网站制作设计公司企业网站
  • 网站制作及维护合同国内新闻最新消息简短
  • 红色为主的网站网络推广渠道公司
  • 哪家公司建造了迪士尼乐园seo服务是什么
  • 专做海岛游的网站网站优化排名查询
  • 广州做贸易网站网络建站
  • 阿里做网站怎么做曼联vs恩波利比分
  • 萍乡做网站的公司厦门seo百度快照优化
  • 免费ai智能写作一键生成南宁正规的seo费用
  • 手机便宜电商网站建设英文seo兼职
  • 武汉做网站找谁我想在百度上做广告怎么做
  • 网站制作文案杭州抖音seo关键词优化怎么做
  • 做访问的公司网站南京疫情最新情况
  • 个人网站备案信息填写今日百度小说排行榜风云榜
  • 叙述网站制作的流程产品优化是什么意思
  • by68777免费域名查询关键词优化公司哪家强
  • 专业做网站+上海网络营销案例分析题及答案
  • 把自己做的网站开放到外网推广计划
  • b2c电子商务网站制作网络推广比较经典和常用的方法有
  • 平面设计师磨刀石品牌关键词排名优化怎么做
  • 北辰网站开发百度搜索网页版入口