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

asp 网站模板如何选择邯郸做网站

asp 网站模板,如何选择邯郸做网站,湖南网站建设公司,有哪些竞价网站Mybatis总体框架设计 文章目录 Mybatis总体框架设计一#xff1a;MyBatis架构概览1#xff1a;接口层1.1#xff1a;使用传统的MyBatis提供的API1.2#xff1a;使用Mapper接口 2#xff1a;数据处理层【核心】2.1#xff1a;参数映射和动态SQL语句生成2.2#xff1a;SQL…Mybatis总体框架设计 文章目录 Mybatis总体框架设计一MyBatis架构概览1接口层1.1使用传统的MyBatis提供的API1.2使用Mapper接口 2数据处理层【核心】2.1参数映射和动态SQL语句生成2.2SQL语句的执行以及封装结果集 3框架支撑层4引导层 二主要构件及其相互关系1核心构件的层次关系2核心部件说明 MyBatis整体架构包含哪些层呢这些层次是如何设计的呢 一MyBatis架构概览 1接口层 接口层主要负责处理和数据库交互的方式门面 MyBatis和数据库的交互有两种方式使用传统的MyBatis提供的API 使用Mapper接口 1.1使用传统的MyBatis提供的API 这是传统的传递Statement Id 和查询参数给 SqlSession 对象使用 SqlSession对象完成和数据库的交互 MyBatis 提供了非常方便和简单的API供用户实现对数据库的增删改查数据操作以及对数据库连接信息和MyBatis 自身配置信息的维护操作 上述使用MyBatis 的方法是创建一个和数据库打交道的SqlSession对象 然后根据Statement Id 和参数来操作数据库这种方式固然很简单和实用但是它不符合面向对象语言的概念和面向接口编程的编程习惯。 由于面向接口的编程是面向对象的大趋势MyBatis 为了适应这一趋势增加了第二种使用MyBatis 支持接口Interface调用方式 1.2使用Mapper接口 MyBatis 将配置文件中的每一个mapper 节点抽象为一个 Mapper 接口 而这个接口中声明的方法和跟 mapper 节点中的select|update|delete|insert 节点项对应即 select|update|delete|insert 节点的id值 Mapper 接口中的方法名称parameterType 值 Mapper 对应方法的入参类型而 resultMap 值 Mapper 接口表示的返回值类型或者返回结果集的元素类型 根据 MyBatis 的配置规范配置好后通过 SqlSession.getMapper(XXXMapper.class) 方法MyBatis 会根据相应的接口声明的方法信息通过动态代理机制生成一个 Mapper 实例[代理模式] 我们使用 Mapper 接口的某一个方法时MyBatis 会根据这个方法的方法名和参数类型确定Statement Id 底层还是通过 SqlSession.select(id, param); 或 SqlSession.update(id, param); 等等来实现对数据库的操作 MyBatis 引用 Mapper 接口这种调用方式纯粹是为了满足面向接口编程的需要。 其实还有一个原因是在于面向接口的编程使得用户在接口上可以使用注解来配置SQL语句这样就可以脱离XML配置文件实现“0配置” 2数据处理层【核心】 数据处理层可以说是MyBatis 的核心从大的方面上讲它要完成两个功能 通过传入参数构建动态SQL语句 paramObject - SQL语句SQL语句的执行以及封装查询结果集成 List SQL语句 - execute result - List 2.1参数映射和动态SQL语句生成 动态语句生成可以说是MyBatis框架非常优雅的一个设计MyBatis 通过传入的参数值使用 Ognl 来动态地构造SQL语句 这使得MyBatis 有很强的灵活性和扩展性。 参数映射指的是对于 java 数据类型 - jdbc数据类型之间的转换这里有包括两个过程 查询阶段要将java类型的数据转换成jdbc类型的数据通过 preparedStatement.setXXX() 来设值结果阶段就是对resultset查询结果集的jdbcType 数据转换成java 数据类型 2.2SQL语句的执行以及封装结果集 动态SQL语句生成之后MyBatis 将执行SQL语句并将可能返回的结果集转换成ListE 列表。 MyBatis 在对结果集的处理中支持结果集关系一对多(1 ~ N)和多对一(N ~ 1)的转换并且有两种支持方式 一种为嵌套查询语句的查询还有一种是嵌套结果集的查询 3框架支撑层 事务管理机制 事务管理机制对于ORM框架而言是不可缺少的一部分事务管理机制的质量也是考量一个ORM框架是否优秀的一个标准 连接池管理机制 由于创建一个数据库连接所占用的资源比较大对于数据吞吐量大和访问量非常大的应用而言连接池的设计就显得非常重要 缓存机制 为了提高数据利用率和减小服务器和数据库的压力MyBatis 会对于一些查询提供会话级别的数据缓存 数据缓存会将对某一次查询放置到SqlSession 中 缓存可是使得在允许的时间间隔内对于完全相同的查询MyBatis 会直接将缓存结果返回给用户而不用再到数据库中查找 SQL语句的配置方式 传统的MyBatis 配置 SQL 语句方式就是使用 XML 文件进行配置的但是这种方式不能很好地支持面向接口编程的理念 为了支持面向接口的编程MyBatis 引入了 Mapper 接口的概念面向接口的引入对使用注解来配置 SQL 语句成为可能 用户只需要在接口上添加必要的注解即可不用再去配置XML文件了 但是目前的 MyBatis 只是对注解配置 SQL 语句提供了有限的支持某些高级功能还是要依赖 XML 配置文件配置 SQL 语句 4引导层 引导层是配置和启动MyBatis配置信息的方式。 MyBatis 提供两种方式来引导MyBatis 基于XML配置文件的方式基于Java API 的方式 二主要构件及其相互关系 1核心构件的层次关系 2核心部件说明 主要的核心部件如下 核心部件解释说明SqlSession作为MyBatis工作的主要顶层API表示和数据库交互的会话完成必要数据库增删改查功能ExecutorMyBatis 执行器是 MyBatis 调度的核心负责SQL语句的生成和查询缓存的维护StatementHandler封装了JDBC Statement操作负责对JDBC statement 的操作如设置参数、将Statement结果集转换成List集合ParameterHandler负责对用户传递的参数转换成JDBC Statement 所需要的参数(param - Statement)ResultSetHandler负责将JDBC返回的ResultSet结果集对象转换成List类型的集合(resultSet - List)TypeHandler负责java数据类型和jdbc数据类型之间的映射和转换(数据映射)MappedStatement维护了一条selectSqlSource负责根据用户传递的parameterObject动态地生成SQL语句将信息封装到BoundSql对象中并返回BoundSql表示动态生成的SQL语句以及相应的参数信息ConfigurationMyBatis所有的配置信息都维持在Configuration对象之中
http://www.hkea.cn/news/14450054/

相关文章:

  • 做科普网站网站租用服务器多少钱
  • 网站模板后台ui设计培训机构好
  • 搭建网站用什么软件免费空间申请哪个好
  • 自己做一个网站难么加盟投资好项目
  • 冯提莫斗鱼前在哪个网站做直播石家庄正定新区建设局网站
  • 中国工商做年报网站专做男装的网站
  • dns上国外网站wordpress 在线skype
  • 网站建设步骤大全新东方烹饪学校
  • 海南省住房和城乡建设官方网站关键词优化多少钱
  • 池州最好的网站建设电子商务主要就业方向
  • 美食网站黑米如何做学习网页制作的网站
  • 高质量的丹阳网站建设代理网址在线
  • 网站代码语法在线玩游戏
  • 站长工具怎么关掉网页托管服务是什么
  • angular2.0网站制作免费又好用的wordpress模板
  • 营销型网站的类型有哪些织梦网站制作费用
  • 网站的系统帮助桥东企业做网站
  • 专业教学资源库网站建设工作公司官网介绍
  • 网站专做盗版小说 会犯法吗给个网站能用的2022
  • 建立公司企业网站租网络服务器多少钱
  • 网站系统的设计与实现263云通信企业邮箱
  • 网站如何在手机上显示wordpress固态链接
  • 做引流去那些网站好黄页营销网站
  • 建设好学校网站宠物网站开发与实现结论
  • 莱芜网站优化滨湖网站建设
  • 黄岩区信誉好高端网站设计创手机网站
  • 意识形态 加强网站建设杭州app开发公司老铁帮
  • 上海大 小企业网站制作同仁县wap网站建设公司
  • 国内优秀设计网站推荐关于门户网站建设通报
  • 怎么做阿里巴巴英文网站宿迁做企业网站