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

网站建设投wordpress海外建站

网站建设投,wordpress海外建站,网站建设成功案例方案,凡客诚品还有吗OGNL表达式 OGNL#xff0c;全称为Object-Graph Navigation Language#xff0c;它是一个功能强大的表达式语言#xff0c;用来获取和设置Java对象的属性#xff0c;它旨在提供一个更高的更抽象的层次来对Java对象图进行导航。 OGNL表达式的基本单位是导航链全称为Object-Graph Navigation Language它是一个功能强大的表达式语言用来获取和设置Java对象的属性它旨在提供一个更高的更抽象的层次来对Java对象图进行导航。 OGNL表达式的基本单位是导航链一般导航链由如下几个部分组成 属性名称property  方法调用method invoke  数组元素 所有的OGNL表达式都基于当前对象的上下文来完成求值运算链的前面部分的结果将作为后面求值的上下文。例如names[0].length()。 MyBatis动态SQL使用OGNL表达式来判断条件并根据条件决定是否包含某个SQL片段。OGNL表达式是一种基于Java表达式的语言可以访问Java对象和方法。动态SQL是一种允许根据不同条件在SQL语句中动态生成特定的查询条件、表名、列名等的技术。通过使用动态SQL可以减少代码的重复度提高代码的灵活性和可维护性。 Mybatis提供了以下几种常用的动态SQL标签 if、choose、when、otherwise、trim、where、set、foreach、bind、include 1、if:  if是为了判断传入的值是否符合某种规则比如是否不为空 2、where: where标签可以用来做动态拼接查询条件where 元素只会在子元素返回任何内容的情况下才插入 “WHERE” 子句若子句的开头为 “AND” 或 “OR”where 元素也会将它们去除。 3、choosewhenotherwise: 这是一组组合标签他们的作用类似于 Java 中的 switch、case、default。只有一个条件生效也就是只执行满足的条件 when没有满足的条件就执行 otherwise表示默认条件 4、foreach: foreach标签可以把传入的集合对象进行遍历然后把每一项的内容作为参数传到sql语句中里面涉及到 item(具体的每一个对象), index(序号), open(开始符), close(结束符), separator(分隔符) u 6、set: 适用于修改更新中当匹配某个条件后才会对该字段进行更新操作。 7、trim: trim标签通常用来去掉特定字符或者关键字。 是一个格式化标签主要有4个参数: prefix(前缀) prefixOverrides(去掉第一个标记) suffix(后缀) suffixOverrides(去掉最后一个标记) 8、bind:  bind 标签用于定义一个变量该变量可以被后续的 SQL 片段引用方便了 SQL 的编写。 动态sql的执行原理 使用 OGNL 的表达式从 SQL 参数对象中计算表达式的值,根据表达式的值动态拼接 SQL 以此来完成动态 SQL 的功能。 动态sql的执行原理 第一部分在启动SqlSessionFactory加载解析xml配置文件的时候进行解析根据关键标签封装成对应的handler处理对象封装成sqlSource对象存在mappedStatement。 调用流程 1.SqlSessionFactoryBuilder对builder对象的时候调用XMLConfigBuilder解析sqlMapConfig.xml配置文件在解析过程中使用到了私有的mapperElement(XNode parent)方法 2.上面方法中通过构建XMLMapperBuilder,获取到所有的配置mapper配置在调用private void configurationElement(XNode context)方法进行解析mapper.xml,通过void buildStatementFromContext(ListXNode list, String requiredDatabaseId)方法解析mapper.xml内的每一个标签 3.循环中构建XMLStatementBuilder对象调用parseStatementNode()方法来封装mappedStatment对象 4.在过程中需要构建sqlSource对象通过XMLLanguageDriver对象进行处理在XMLLanguageDriver中构建解析动态标签对象XMLScriptBuilder 第二部分在执行过程中获取sqlSource中获取bondSql对象时执行相应的标签handler。 调用查询执行到BaseExecutor的query方法时候会去getBoundSql并且将参数传进去在sqlSource接口DynamicSqlSource实现类中调用getBoundSql方法执行过程共创建DynamicContext对象进行判定解析封装成SqlSource对象返回。
http://www.dnsts.com.cn/news/120894.html

相关文章:

  • 网站百度推广方案福州网站优化
  • 2元域名注册网站怎样安装免费的wordpress
  • 网站权重的提升深圳做网站j华信科
  • 网站制作需要哪些网页设计图片简单
  • 嘉兴高档网站建设上海娱乐场所关门
  • 深圳手机商城网站设计制作银川做网站的 公司有哪些
  • vps网站助手网站开发与维修是什么意思
  • 三亚网站建设品牌wordpress 增加导航
  • 腾冲网站建设的公司佛山高端网站设计
  • 一个网站如何做推广方案自定义wordpress 登录
  • 自己网站上放个域名查询5g国产天天5g天天
  • 建个什么网站赚钱公司网站建设请示报告
  • com网站注册域名nas 建网站
  • 国际军事新闻头条黑帽seo技术培训
  • 上海 设计网站建设网站可能存在什么问题吗
  • 建设纺织原料网站烟台哪里做网站好
  • 延安做网站网站优化升级怎么做
  • 泉州建站模板搭建响应式网站的费用
  • 上海网站建设方案策划创造网站
  • 网站设计的步骤泗水县建设局的网站怎么打开
  • 查一下红之易道学做的什么网站旅游网站需求分析
  • 做网站买什么服务器 便宜监理工程师成绩在建设部哪个网站查
  • 做资金盘网站一网通办 上海
  • 想给孩子找点题做 都有什么网站百度提交入口网址是指在哪里
  • 帮站seo遵义网站建设
  • 电子商务电商网站设计wordpress 常量
  • 物流网站建设案例简述建设网站的具体步骤
  • wordpress网站翻译插件手机定制app
  • 哈尔滨专业网站制作公司wordpress 木马
  • vs怎么添加做网站店标设计logo设计