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

大作业做网站网站关键词优化外包服务

大作业做网站,网站关键词优化外包服务,自己做网站导航,中成网站建设MyBatis 动态 SQL 标签if 标签where 标签trim 标签choose 、when 、otherwise 标签foreach 标签附 动态 SQL 标签 MyBatis 动态 SQL 标签#xff0c;是一组预定义的标签#xff0c;用于构建动态的 SQL 语句#xff0c;允许在 SQL 语句中使用条件、循环和迭代等逻辑。通过使… MyBatis 动态 SQL 标签if 标签where 标签trim 标签choose 、when 、otherwise 标签foreach 标签附 动态 SQL 标签 MyBatis 动态 SQL 标签是一组预定义的标签用于构建动态的 SQL 语句允许在 SQL 语句中使用条件、循环和迭代等逻辑。通过使用动态 SQL 标签开发者可以根据不同的条件和参数生成不同的 SQL 语句实现更加灵活的数据访问操作。但是需要谨慎处理 SQL 注入问题确保所有的输入都经过正确的验证和转义处理以防止安全漏洞的产生。 常用的动态 SQL 标签 if 标签根据条件判断是否包含 SQL 语句片段where 标签根据条件控制 SQL 语句的查询条件部分trim 标签根据条件去除或添加字符串前后的特定字符choose 、when 、otherwise 标签根据条件选择不同的 SQL 语句片段foreach 标签在 SQL 语句中迭代一个集合 简单示例 首先创建一张数据表 dynamic_sql_object 表结构如图 表信息如图 接着创建与数据表一一映射的实体类 DynamicSqlObject package cn.edu.MyBatisDemo.model;public class DynamicSqlObject {private int id;private String name;private String grade;private int age;private String phone;public DynamicSqlObject() {super();}public DynamicSqlObject(int id, String name, String grade, int age, String phone) {this.id id;this.name name;this.grade grade;this.age age;this.phone phone;}public int getId() {return id;}public void setId(int id) {this.id id;}public String getName() {return name;}public void setName(String name) {this.name name;}public String getGrade() {return grade;}public void setGrade(String grade) {this.grade grade;}public int getAge() {return age;}public void setAge(int age) {this.age age;}public String getPhone() {return phone;}public void setPhone(String phone) {this.phone phone;}Overridepublic String toString() {return DynamicSqlObject{ id id , name name \ , grade grade \ , age age , phone phone \ };} }然后创建一个接口 DynamicSqlObjectMap 声明获取指定用户信息的方法。同时创建映射文件 DynamicSqlObjectMap.xml 实现接口方法 package cn.edu.MyBatisDemo.mapper;import cn.edu.MyBatisDemo.model.DynamicSqlObject; import org.apache.ibatis.annotations.Param;public interface DynamicSqlObjectMap {//加上 Param() 注解防止抛出异常---ReflectionException: There is no getter for property named xxxpublic DynamicSqlObject getObject(Param(name) String name,Param(phone) String phone); // 获取指定用户信息 }?xml version1.0 encodingUTF-8 ? !DOCTYPE mapperPUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttps://mybatis.org/dtd/mybatis-3-mapper.dtd!-- 每个标签示例中再补充 -- mapper namespacecn.edu.MyBatisDemo.mapper.DynamicSqlObjectMapselect idgetObject resultTypedynamicSqlObject SELECT id,name,grade,age,phone FROM dynamic_sql_object/select /mapper最后测试结果对每个标签进行简单示例 if 标签 在上面的示例中select 标签定义了一个名为 getObject 的查询语句其结果类型为 DynamicSqlObject 。 在 SQL 语句中首先可以使用 WHERE 11 来构建一个通用的条件然后使用 if 标签根据不同的条件来添加额外的限制条件。在 if 标签中使用 test 属性来判断条件是否满足若满足则执行该标签内的 SQL 语句片段若不满足则不执行。 结果如图 传递的参数值为 {name: “曹操”, phone: null} 则生成的 SQL 语句为 SELECT id,name,grade,age,phone FROM dynamic_sql_object WHERE 11 AND name 曹操where 标签 在 where 标签中可以根据不同的条件动态生成不同的 WHERE 子句从而灵活地执行数据库查询操作。在 where 标签内使用 if 标签来添加条件语句。 结果如图 传递的参数值为 {name: “曹操”, phone: “13625987401”} 则生成的 SQL 语句为 SELECT id,name,grade,age,phone FROM dynamic_sql_object WHERE name 曹操 AND phone 13625987401注where 标签只可以去掉第一个条件语句中前面的 AND 或 OR trim 标签 在 trim 标签中可以在动态 SQL 语句中去除前缀或后缀也可以在 select 、update 或 insert 标签中使用。 trim 标签属性 prefix添加前缀prefixOverrides去除前缀suffix添加后缀suffixOverrides去除后缀 结果如图 传递的参数值为 {name: “曹操”, phone: “13625987401”} 则生成的 SQL 语句为 SELECT id,name,grade,age,phone FROM dynamic_sql_object WHERE name 曹操 AND phone 13625987401choose 、when 、otherwise 标签 choose、when、otherwise 标签是一组标签配合使用。choose 标签包含多个 when 标签和一个 otherwise 标签。在 when 标签中使用 test 属性来判断条件是否满足若满足则执行该标签内的 SQL 语句片段若没有任何条件满足则 otherwise 标签内的 SQL 语句片段作为默认的语句片段执行。 结果如图 传递的参数值为 {name: “曹操”, phone: “15489723601”} 则生成的 SQL 语句为 SELECT id,name,grade,age,phone FROM dynamic_sql_object WHERE name 曹操注 条件选择在 when、otherwise 标签中当多个条件都满足时只选择最前面的一条 SQL 语句片段执行从上往下的顺序 条件判断在 if 标签中当多个条件都满足时所有满足条件的 SQL 语句片段都会执行 foreach 标签 foreach 标签适用于遍历集合、批量操作的情况。 foreach 标签属性 collection指定的集合item指定集合的每一个值的迭代变量separator在生成的 SQL 语句中每个元素之间的分隔符open在生成的 SQL 语句中需要在 IN 子句或 BETWEEN 子句的前面添加的字符串close在生成的 SQL 语句中需要在 IN 子句或 BETWEEN 子句的后面添加的字符串 foreach 标签示例中还需要再声明一个批量获取指定用户信息的方法。同时在映射文件 DynamicSqlObjectMap.xml 中实现该接口方法 select idgetObjectByIds resultTypedynamicSqlObject SELECT id,name,grade,age,phone FROM dynamic_sql_object WHERE id INforeach collectionids itemid separator, open( close) #{id}/foreach /select结果如图 传递的参数值为 {20230830,20230832} 则生成的 SQL 语句为 SELECT id,name,grade,age,phone FROM dynamic_sql_object WHERE id IN(20230830,20230832)附 set 标签用在更新的操作上在 SQL 语句中动态生成多个 SET 子句。在 set 标签内使用多个 if 标签来判断哪些属性需要更新或不做处理。 sql 标签用于定义可重用的 SQL 片段方便在不同的地方复用。include 标签用于将另一个映射文件中定义的 SQL 片段引入到当前映射文件中。这两个标签配合使用可以减少重复的 SQL 代码提高代码的可维护性和可读性。 bind 标签用于动态地生成 SQL 语句的绑定变量。
http://www.pierceye.com/news/753193/

相关文章:

  • 重庆网站建设招标网站建设网站建设教程
  • 权威的广州h5网站seo网站分析工具
  • 美食网站要怎么做游戏优化大师下载安装
  • vip解析网站怎么做的做网站需要注册商标多少类
  • 一般做网站宽高多少网页调用 wordpress 图片编辑器
  • 简述网站建设的基本过程word模板免费下载网站
  • 页面好看的蛋糕网站wordpress路由插件
  • 网站建站四种方案深圳网站建设维护
  • 企业网站优化的方案游戏网页设计图片
  • 烟台html5网站建设wordpress主题 亚马逊
  • 个人网站做电商wordpress.php扩张
  • c2c电子商务网站定制开发校园网建设网站特色
  • 企业网站制作公司有哪些做手机网站公司
  • 怎么做flash网站设计惠州做网站公司哪家好
  • 网站开发文档下载餐饮vi设计一套多少钱
  • 平湖网站建设公司克正规的网店平台有哪些
  • 网站建设销售求职网络营销推广引流方法
  • 深圳网站建设官网网站背景素材
  • 建设部网站安全考核证书查询平面设计的素材网站
  • 郑州制作个人网站网站个人备案做企业网站
  • 昆明有网站的公司专注网站平台推广公司
  • 网站建设酷隆莲湖免费做网站
  • 网站建设内容保障制度什么网站权威评价搜索引擎优劣
  • 中国建设局网站东莞市路桥收费所
  • 那个网站上有做婚礼布场样图的公司网站排名
  • 凡客资源东莞市seo网络推广服务机构
  • 网站的安全维护wordpress 文章 定时
  • 网上做题扣分在哪个网站上做网站建设微信商城运营
  • 外贸英文商城网站建设微信公众帐号开发
  • 上海做网站运维的公司用手机制作自己的网站