MyBatis 框架尚硅谷 java 研究院版本:V 1.0
Objects,普通的 Java 对象)映射成数据库中的记录 1.3 为什么要使用 MyBatis – 现有持久化技术的对比 1) JDBC 1 SQL 夹在 Java 代码块里,耦合度高导致硬编码内伤 2 维护不易且实际开发需求中 sql 是有变化,频繁修改的情况多见 2) Hibernate 和 JPA 1 长难复杂 SQL,对于 Hibernate 而言处理也不容易 2 内部自动生产的 更多 Java –大数据 –前端 –python 人工智能资料下载,可访问百度:尚硅谷官网 3) MyBatis 1 对开发人员而言,核心 sql 还是需要自己优化 2 sql 和 java 编码分开,功能边界清晰,一个专注业务、一个专注数据 1.4 如何下载 MyBatis 1) 下载网址 https://github.com/mybatis/mybatis-3/ JAVAEE 课程系列JAVAEE 0 码力 | 44 页 | 926.54 KB | 1 年前3传智播客 mybatis 框架课程讲义
池可解决此问题。 2、 Sql 语句在代码中硬编码,造成代码不易维护,实际应用 sql 变化的可能较大,sql 变动 需要改变 java 代码。 3、 使用 preparedStatement 向占有位符号传参数存在硬编码,因为 sql 语句的 where 条件不 一定,可能多也可能少,修改 sql 还要修改代码,系统不易维护。 4、 对结果集解析存在硬编码(查询列名),sql 变化导致解析代码变化,系统不易维护,如编码,不 得于开发维护。 2.4 Mapper 动态代理方式 2.4.1 实现原理 Mapper 接口开发方法只需要程序员编写 Mapper 接口(相当于 Dao 接口),由 Mybatis 框 0 码力 | 75 页 | 1.16 MB | 1 年前3Apache ShardingSphere 中文文档 5.2.0
shardingsphere.infra.datasource. pool.creator.DataSourcePoolCreator。例如对于 Alibaba Druid 1.2.9 而言,使用 url 代替如下 示例中的 jdbcUrl 是预期行为。 参数解释 dataSources: # 数据源配置,可配置多个: # 数据源名称 dataSourceClassName: # 数据源完整类名 driverClassName: # 数据库驱动类名,以数据库连接池自身配置为准 jdbcUrl: # 数据库 URL 连接,以数据库连接池自身配置为准 username: # 数据库用户名,以数据库连接池自身配置为准 password: # 数据库密码,以数据库连接池自身配置为准 # ... 数据库连接池的其它属性 YAML 格式,能够快速地理解分片规则之间的依赖关 系,ShardingSphere 会根据 YAML 配置,自动完成 ShardingSphereDataSource 对象的创建,减少用户 不必要的编码工作。 参数解释 rules: - !SHARDING tables: # 数据分片规则配置 (+): # 逻辑表名称 actualDataNodes 0 码力 | 449 页 | 5.85 MB | 1 年前3Apache ShardingSphere 中文文档 5.3.2
driver-class-name=org.apache.shardingsphere.driver. ShardingSphereDriver # 指定 YAML 配置文件 spring.datasource.url=jdbc:shardingsphere:classpath:xxx.yaml 详情请参见Spring Boot。 7.1. ShardingSphere-JDBC 14 Apache ShardingSphere shardingsphere.infra.datasource. pool.creator.DataSourcePoolCreator。例如对于 Alibaba Druid 1.2.9 而言,使用 url 代替如下 示例中的 jdbcUrl 是预期行为。 参数解释 dataSources: # 数据源配置,可配置多个: # 数据源名称 dataSourceClassName: # 数据源完整类名 driverClassName: # 数据库驱动类名,以数据库连接池自身配置为准 jdbcUrl: # 数据库 URL 连接,以数据库连接池自身配置为准 username: # 数据库用户名,以数据库连接池自身配置为准 password: # 数据库密码,以数据库连接池自身配置为准 # ... 数据库连接池的其它属性 0 码力 | 508 页 | 4.44 MB | 1 年前3Apache ShardingSphere 中文文档 5.4.1
driver-class-name=org.apache.shardingsphere.driver. ShardingSphereDriver # 指定 YAML 配置文件 spring.datasource.url=jdbc:shardingsphere:classpath:xxx.yaml 详情请参见Spring Boot。 7.1. ShardingSphere-JDBC 14 Apache ShardingSphere shardingsphere.infra.datasource.pool. creator.DataSourcePoolCreator。例如对于 Alibaba Druid 1.2.9 而言,使用 url 代替如下示例中 的 jdbcUrl 是预期行为。 参数解释 dataSources: # 数据源配置,可配置多个: # 数据源名称 dataSourceClassName: # 数据源完整类名 driverClassName: # 数据库驱动类名,以数据库连接池自身配置为准 jdbcUrl: # 数据库 URL 连接,以数据库连接池自身配置为准 username: # 数据库用户名,以数据库连接池自身配置为准 password: # 数据库密码,以数据库连接池自身配置为准 # ... 数据库连接池的其它属性 0 码力 | 530 页 | 4.49 MB | 1 年前3Apache ShardingSphere ElasticJob 中文文档 2023 年 11 月 01 日
ShardingSphere 的子项目。欢迎通过邮件列表参与讨论。 1 1 简介 使用 ElasticJob 能够让开发工程师不再担心任务的线性吞吐量提升等非功能需求,使他们能够更加专注 于面向业务编码设计;同时,它也能够解放运维工程师,使他们不必再担心任务的可用性和相关管理需 求,只通过轻松的增加服务节点即可达到自动化运维的目的。 ElasticJob 定位为轻量级无中心化解决方案,使用 jar 绍他们的使用方式。 作业开发 ElasticJob 的作业分类基于 class 和 type 两种类型。基于 class 的作业需要开发者自行通过实现接口的方 式织入业务逻辑;基于 type 的作业则无需编码,只需要提供相应配置即可。 基于 class 的作业接口的方法参数 shardingContext 包含作业配置、片和运行时信息。可通过 getShardingTotalCount(), getShardingItem() ShardingSphere ElasticJob document 脚本作业 支持 shell,python,perl 等所有类型脚本。可通过属性配置 script.command.line 配置待执行脚本, 无需编码。执行脚本路径可包含参数,参数传递完毕后,作业框架会自动追加最后一个参数为作业运行 时信息。 例如如下脚本: #!/bin/bash echo sharding execution context0 码力 | 98 页 | 1.97 MB | 1 年前3Apache ShardingSphere v5.5.0 中文文档
driver-class-name=org.apache.shardingsphere.driver. ShardingSphereDriver # 指定 YAML 配置文件 spring.datasource.url=jdbc:shardingsphere:classpath:xxx.yaml 详情请参见 Spring Boot。 7.1. ShardingSphere-JDBC 14 Apache ShardingSphere shardingsphere.infra.datasource.pool. creator.DataSourcePoolCreator。例如对于 Alibaba Druid 1.2.9 而言,使用 url 代替如下示例中 的 jdbcUrl 是预期行为。 参数解释 dataSources: # 数据源配置,可配置多个: # 数据源名称 dataSourceClassName: # 数据源完整类名 driverClassName: # 数据库驱动类名,以数据库连接池自身配置为准 jdbcUrl: # 数据库 URL 连接,以数据库连接池自身配置为准 username: # 数据库用户名,以数据库连接池自身配置为准 password: # 数据库密码,以数据库连接池自身配置为准 # ... 数据库连接池的其它属性 0 码力 | 557 页 | 4.61 MB | 1 年前32 Sharding-JDBC入门使用
2 Sharding-JDBC入门使用 2.1不使用Spring 引入Maven依赖 基于Java编码的规则配置 Sharding-JDBC的分库分表通过规则配置描述,以下例子是根据user_id取模分库, 且根据 order_id取模分表的两库两表的配置。org.apache.shardingsphere Driver url: jdbc:mysql://localhost:3306/ds0 username: root password: ds1: !!org.apache.commons.dbcp.BasicDataSource driverClassName: com.mysql.jdbc.Driver url: jdbc:mysql: sharding.jdbc.datasource.ds0.driver-class-name=com.mysql.jdbc.Driver sharding.jdbc.datasource.ds0.url=jdbc:mysql://localhost:3306/ds0 sharding.jdbc.datasource.ds0.username=root sharding.jdbc.datasource0 码力 | 12 页 | 325.38 KB | 1 年前3Apache ShardingSphere 中文文档 5.0.0-alpha
t_order_0$->{0..9}, db$->{0..1}.t_order_$->{10..20} 配置分片算法 对于只有一个分片键的使用 = 和 IN 进行分片的 SQL,可以使用行表达式代替编码方式配置。 行表达式内部的表达式本质上是一段 Groovy 代码,可以根据分片键进行计算的方式,返回相应的真实数 据源或真实表名称。 例如:分为 10 个库,尾数为 0 的路由到后缀为 0 的数据源,尾数为 P,C3P0,Druid, HikariCP)。 ds_0: dataSourceClassName: com.zaxxer.hikari.HikariDataSource props: url: jdbc:mysql://127.0.0.1:3306/demo_ds_0?serverTimezone=UTC&useSSL=false password: null maxPoolSize: maxLifetimeMilliseconds: 1800000 ds_1: dataSourceClassName: com.zaxxer.hikari.HikariDataSource props: url: jdbc:mysql://127.0.0.1:3306/demo_ds_1?serverTimezone=UTC&useSSL=false password: null maxPoolSize:0 码力 | 301 页 | 3.44 MB | 1 年前3Apache ShardingSphere 中文文档 5.0.0
t_order_0$->{0..9}, db$->{0..1}.t_order_$->{10..20} 分片算法 对于只有一个分片键的使用 = 和 IN 进行分片的 SQL,可以使用行表达式代替编码方式配置。 行表达式内部的表达式本质上是一段 Groovy 代码,可以根据分片键进行计算的方式,返回相应的真实数 据源或真实表名称。 例如:分为 10 个库,尾数为 0 的路由到后缀为 0 的数据源,尾数为 P,C3P0,Druid, HikariCP)。 ds_0: dataSourceClassName: com.zaxxer.hikari.HikariDataSource props: url: jdbc:mysql://127.0.0.1:3306/demo_ds_0?serverTimezone=UTC&useSSL=false password: null maxPoolSize: maxLifetimeMilliseconds: 1800000 ds_1: dataSourceClassName: com.zaxxer.hikari.HikariDataSource props: url: jdbc:mysql://127.0.0.1:3306/demo_ds_1?serverTimezone=UTC&useSSL=false password: null maxPoolSize:0 码力 | 385 页 | 4.26 MB | 1 年前3
共 26 条
- 1
- 2
- 3