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

门户网站的特征电子商务网站的分类

门户网站的特征,电子商务网站的分类,邢台建设企业网站费用,关于网页制作的论文目录 16、Xml 映射文件中#xff0c;除了常见的 select|insert|updae|delete标签之外#xff0c;还有哪些标签#xff1f; 17、Mybatis 的 Xml 映射文件中#xff0c;不同的 Xml 映射文件#xff0c;id 是否可以重复#xff1f; 18、为什么说 Mybatis 是半自动 ORM 映射…目录 16、Xml 映射文件中除了常见的 select|insert|updae|delete标签之外还有哪些标签 17、Mybatis 的 Xml 映射文件中不同的 Xml 映射文件id 是否可以重复 18、为什么说 Mybatis 是半自动 ORM 映射工具它与全自动的区别在哪里 19、 一对一、一对多的关联查询 20、MyBatis 实现一对一有几种方式?具体怎么操作的 21、MyBatis 实现一对多有几种方式,怎么操作的 22、Mybatis 是否支持延迟加载如果支持它的实现原理是什么 23、Mybatis 的一级、二级缓存: 24、什么是 MyBatis 的接口绑定有哪些实现方式 25、使用 MyBatis 的 mapper 接口调用时有哪些要求 26、Mapper 编写有哪几种方式 27、简述 Mybatis 的插件运行原理以及如何编写一个插件。 16、Xml 映射文件中除了常见的 select|insert|updae|delete标签之外还有哪些标签 resultMap 、 parameterMap 、 sql 、 include 、 selectKey加上动态 sql 的 9 个标签其中 sql 为 sql 片段标签通过 include标签引入 sql 片段 selectKey 为不支持自增的主键生成策略标 签。 17、Mybatis 的 Xml 映射文件中不同的 Xml 映射文件id 是否可以重复 不同的 Xml 映射文件如果配置了 namespace 那么 id 可以重复如果没有配置 namespace 那么 id 不能重复 原因就是 namespaceid 是作为 Map String, MapperStatement 的 key使用的如果没有  namespace 就剩下 id 那么 id 重复会导致数据互相覆盖。有了 namespace 自然 id 就可以重复 namespace 不同 namespaceid 自然也就不同。 18、为什么说 Mybatis 是半自动 ORM 映射工具它与全自动的区别在哪里 Hibernate 属于全自动 ORM 映射工具使用 Hibernate 查询关联对象或者关联 集合对象时可以根据对象关系模型直接获取所以它是全自动的。而 Mybatis 在查询关联对象或关联集合对象时需要手动编写 sql 来完成所以称之为半自动 ORM 映射工具。 19、 一对一、一对多的关联查询 mapper namespacecom.dljd.mapping.userMapper!--association 一对一关联查询 --select idgetClass parameterTypeint resultMapClassesResultMapselect * from class c,teacher t where c.teacher_idt.t_id and c.c_id#{id}/selectresultMap typecom.dljd.user.Classes idClassesResultMap!-- 实体类的字段名和数据表的字段名映射 --id propertyid columnc_id/result propertyname columnc_name/association propertyteacher javaTypecom.dljd.user.Teacherid propertyid columnt_id/result propertyname columnt_name//association/resultMap!--collection 一对多关联查询 --select idgetClass2 parameterTypeint resultMapClassesResultMap2select * from class c,teacher t,student s where c.teacher_idt.t_id and c.c_ids.class_id and c.c_id#{id}/selectresultMap typecom.dljd.user.Classes idClassesResultMap2id propertyid columnc_id/result propertyname columnc_name/association propertyteacher javaTypecom.dljd.user.Teacherid propertyid columnt_id/result propertyname columnt_name//associationcollection propertystudent ofTypecom.dljd.user.Studentid propertyid columns_id/result propertyname columns_name//collection/resultMap /mapper 20、MyBatis 实现一对一有几种方式?具体怎么操作的 有联合查询和嵌套查询 , 联合查询是几个表联合查询 , 只查询一次 , 通过在resultMap 里面配置 association 节点配置一对一的类就可以完成 嵌套查询是先查一个表根据这个表里面的结果的 外键 id 去再另外一个表里面查询数据, 也是通过 association 配置但另外一个表的查询通过 select 属性配置。 21、MyBatis 实现一对多有几种方式,怎么操作的 有联合查询和嵌套查询。联合查询是几个表联合查询 , 只查询一次 , 通过在 resultMap 里面的 collection 节点配置一对多的类就可以完成嵌套查询是先查一个表, 根据这个表里面的 结果的外键 id, 去再另外一个表里面查询数据 , 也是通过配置 collection, 但另外一个表的查询通过 select 节点配置。 22、Mybatis 是否支持延迟加载如果支持它的实现原理是什么 Mybatis 仅支持 association 关联对象和 collection 关联集合对象的延迟加载association 指的就是一对一 collection 指的就是一对多查询。在 Mybatis配置文件中可以配置是否启用延迟加载 lazyLoadingEnabledtrue|false 。 它的原理是使用 CGLIB 创建目标对象的代理对象当调用目标方法时进入拦截器方法比如调用 a.getB().getName() 拦截器 invoke() 方法发现 a.getB() 是null 值那么就会单独发送事先保存好的查询关联 B 对象的 sql 把 B 查询上来然后调用 a.setB(b) 于是 a 的对象 b 属性就有值了接着完成 a.getB().getName()方法的调用。这就是延迟加载的基本原理。 当然了不光是 Mybatis 几乎所有的包括 Hibernate 支持延迟加载的原理都是一样的。 23、Mybatis 的一级、二级缓存: 1 一级缓存 : 基于 PerpetualCache 的 HashMap 本地缓存其存储作用域为Session当 Session flush 或 close 之后该 Session 中的所有 Cache 就将清空默认打开一级缓存。 2 二级缓存与一级缓存其机制相同默认也是采用 PerpetualCache HashMap存储不同在于其存储作用域为 Mapper(Namespace) 并且可自定义存储源如 Ehcache 。默认不打开二级缓存要开启二级缓存使用二级缓存属性类需要实现 Serializable 序列化接口 ( 可用来保存对象的状态 ), 可在它的映射文件中配置cache/ 3 对于缓存数据更新机制当某一个作用域 ( 一级缓存 Session/ 二级缓存Namespaces)的进行了 C/U/D 操作后默认该作用域下所有 select 中的缓存将被 clear 。 24、什么是 MyBatis 的接口绑定有哪些实现方式 接口绑定就是在 MyBatis 中任意定义接口 , 然后把接口里面的方法和 SQL 语句绑定, 我们直接调用接口方法就可以 , 这样比起原来了 SqlSession 提供的方法我们可以有更加灵活的选择和设置。 接口绑定有两种实现方式 , 一种是通过注解绑定就是在接口的方法上面加上Select、 Update 等注解里面包含 Sql 语句来绑定另外一种就是通过 xml里面写 SQL 来绑定 , 在这种情况下 , 要指定 xml 映射文件里面的 namespace 必须为接口的全路径名。当 Sql 语句比较简单时候 , 用注解绑定 , 当 SQL 语句比较复杂时候, 用 xml 绑定 , 一般用 xml 绑定的比较多。 25、使用 MyBatis 的 mapper 接口调用时有哪些要求 1 、 Mapper 接口方法名和 mapper.xml 中定义的每个 sql 的 id 相同 2 、 Mapper 接口方法的输入参数类型和 mapper.xml 中定义的每个 sql 的parameterType 的类型相同 3 、 Mapper 接口方法的输出参数类型和 mapper.xml 中定义的每个 sql 的resultType 的类型相同 4 、 Mapper.xml 文件中的 namespace 即是 mapper 接口的类路径。 26、Mapper 编写有哪几种方式 第一种接口实现类继承 SqlSessionDaoSupport 使用此种方法需要编写mapper 接口 mapper 接口实现类、 mapper.xml 文件。 1 、在 sqlMapConfig.xml 中配置 mapper.xml 的位置 mappersmapper resourcemapper.xml 文件的地址 /mapper resourcemapper.xml 文件的地址 / /mappers 1 、定义 mapper 接口 3 、实现类集成 SqlSessionDaoSupport mapper 方法中可以 this.getSqlSession() 进行数据增删改查。 4 、 spring 配置 bean id classmapper 接口的实现property namesqlSessionFactory refsqlSessionFactory/property /bean 第二种使用 org.mybatis.spring.mapper.MapperFactoryBean 1 、在 sqlMapConfig.xml 中配置 mapper.xml 的位置如果 mapper.xml 和mappre 接口的名称相同且在同一个目录这里可以不用配置 mappersmapper resourcemapper.xml 文件的地址 /mapper resourcemapper.xml 文件的地址 / /mappers 2 、定义 mapper 接口 1 mapper.xml 中的 namespace 为 mapper 接口的地址 2 mapper 接口中的方法名和 mapper.xml 中的定义的 statement 的 id 保持一 致 3 Spring 中定义 bean id classorg.mybatis.spring.mapper.MapperFactoryBeanproperty namemapperInterface valuemapper 接口地址 /property namesqlSessionFactory refsqlSessionFactory / /bean 第三种使用 mapper 扫描器 1 、 mapper.xml 文件编写 mapper.xml 中的 namespace 为 mapper 接口的地址 mapper 接口中的方法名和 mapper.xml 中的定义的 statement 的 id 保持一致 如果将 mapper.xml 和 mapper 接口的名称保持一致则不用在 sqlMapConfig.xml 中进行配置。 2 、定义 mapper 接口 注意 mapper.xml 的文件名和 mapper 的接口名称保持一致且放在同一个目录 3 、配置 mapper 扫描器 bean classorg.mybatis.spring.mapper.MapperScannerConfigurerproperty namebasePackage valuemapper 接口包地址 /propertyproperty namesqlSessionFactoryBeanName valuesqlSessionFactory/ /bean 4 、使用扫描器后从 spring 容器中获取 mapper 的实现对象。 27、简述 Mybatis 的插件运行原理以及如何编写一个插件。 Mybatis 仅可以编写针对 ParameterHandler 、 ResultSetHandler 、 StatementHandler、 Executor 这 4 种接口的插件 Mybatis 使用 JDK 的动态代 理为需要拦截的接口生成代理对象以实现接口方法拦截功能每当执行这 4 种 接口对象的方法时就会进入拦截方法具体就是 InvocationHandler 的 invoke() 方法当然只会拦截那些你指定需要拦截的方法。 编写插件实现 Mybatis 的 Interceptor 接口并复写 intercept() 方法然后在给 插件编写注解指定要拦截哪一个接口的哪些方法即可记住别忘了在配置文 件中配置你编写的插件。 要想了解更多 千题千解·Java面试宝典_时光の尘的博客-CSDN博客
http://www.hkea.cn/news/14382270/

相关文章:

  • 网站侧面的虚浮代码网站开发服务转包合同范本
  • 做直播网站需要证书吗客源汇软件效果怎么样
  • 响应式网站的制作工具把网站做进微信公众号
  • 做外贸的都有哪些网站百度seo多久能优化关键词
  • 郑州网站建设选微锐x番禺网站开发企业
  • 做效果图的方便的网站女性时尚网站源码
  • 办公网新闻上传网站开发谷歌广告怎么投放
  • 个人网站素材下载深圳网站开发运营公司
  • 帮别人做视频剪辑的网站素材之家
  • 谈谈网站建设会有哪些问题wordpress炫酷站
  • 松江区做网站的公司专业SEO教程网站
  • 自己怎么做网站模块网站网上预定功能怎么做
  • 自己做网站练手著名的淘宝客网站
  • 交流平台网站怎么做萧山建站
  • 公路建设项目可行性研究报告编制办法哪个网站查最新版2022年国内重大新闻事件
  • 如何做网站访问量的统计wordpress配置数据库
  • 做pc端网站机构网上哪个网站做的系统好用
  • 遵义市汇川区建设厅网站做车品的网站
  • 河池网站制作公司互联网站源码
  • 做网站的公司有哪些岗位wordpress如何修改后台网址
  • 做网站虚拟主机可以用服务器吗设计图室内效果图
  • 沈阳网站建设制作公司汉中市建设工程招投标交易中心
  • 网站改版 后台聊城网站营销信息
  • 百度秒收录的网站万网 填写网站备案信息
  • 培训人员网站建设深圳网站 制作信科便宜
  • flash网站cms开源 多用户商城
  • 团队做网站分工wordpress分类默认模板
  • seo网站建设优化什么意思dw网页设计个人介绍
  • 最新自助建站源码百度网站建设微信封面
  • 公司网站制作注意事项国外做ppt的网站有哪些