ha-jdbc干什么就不介绍了,请直接移步官方网站。
运行本demo,需要在mysql中创建如下表:
CREATE TABLE `account` (
`ACC_ID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`ACC_FIRST_NAME` varchar(50) COLLATE utf8_bin DEFAULT NULL,
`ACC_LAST_NAME` varchar(50) COLLATE utf8_bin DEFAULT NULL,
`ACC_EMAIL` varchar(50) COLLATE utf8_bin DEFAULT NULL,
PRIMARY KEY (`ACC_ID`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 COLLATE=utf8_bin
注意两个数据库中的表都要建立。下面我在本地数据库中创建了2个数据库,一个是zyl,另一个zylxc。两个数据库中都用上面的语句初始化数据库表。
下面是ha-jdbc-claster.xml配置:
<ha-jdbc>
<!--<distributable config="" stack="sequencer" /> -->
<sync id="diff" class="net.sf.hajdbc.sync.DifferentialSynchronizationStrategy" >
<property name="fetchSize">1000</property>
<property name="maxBatchSize">100</property>
</sync>
<cluster default-sync="diff" balancer="load" meta-data-cache="none"
dialect="net.sf.hajdbc.dialect.MySQLDialect"
transaction-mode="parallel"
auto-activate-schedule="0 * * ? * *"
failure-detectschedule="0 * * ? * *">
<datasource id="database1">
<name>org.apache.commons.dbcp.BasicDataSource</name>
<property name="defaultReadOnly">false</property>
<property name="url">jdbc:mysql://localhost:3306/zyl</property>
<property name="validationQuery">SELECT 1</property>
<property name="username">root</property>
<property name="password">123456</property>
<property name="maxIdle">3</property>
<property name="maxActive">15</property>
<property name="driverClassName">com.mysql.jdbc.Driver</property>
<property name="minIdle">5</property>
<property name="defaultAutoCommit">true</property>
<property name="testOnBorrow">true</property>
<property name="initialSize">5</property>
</datasource>
<datasource id="database2">
<name>org.apache.commons.dbcp.BasicDataSource</name>
<property name="defaultReadOnly">false</property>
<property name="url">jdbc:mysql://localhost:3306/zylxc</property>
<property name="validationQuery">SELECT 1</property>
<property name="username">root</property>
<property name="password">123456</property>
<property name="maxIdle">3</property>
<property name="maxActive">15</property>
<property name="driverClassName">com.mysql.jdbc.Driver</property>
<property name="minIdle">5</property>
<property name="defaultAutoCommit">true</property>
<property name="testOnBorrow">true</property>
<property name="initialSize">5</property>
</datasource>
</cluster>
</ha-jdbc>
使用springMVC进行测试,测试代码:
@Override
public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
Account a = new Account();
a.setFirstName("zhang");
a.setLastName("yuliang");
//插入一条记录
accountDao.insert(a);
//查询刚刚插入的记录,这里只取一条
List<Account> list = accountDao.getAccountListByAccount(a);
request.setAttribute("account", list.get(0));
//更新刚刚插入的记录
a.setId(a.getId());
a.setLastName("san");
accountDao.update(a);
return new ModelAndView("index");
}
在上面的测试代码中您可以选择注释后分别一条一条进行测试,您会看到2个数据库中的表进行了同步,如果数据库不在一台机器上面,您可以随意停掉其中一台mysql,然后重启后,新插入的数据会进行自动同步过去。spring mvc其它废话少说,直接上demo附件。
分享到:
相关推荐
【ha-jdbc.rar】是一个压缩包文件,其中包含的【ha-jdbc】 jar包是针对Java平台的一个数据库连接工具,主要用于实现高可用性(High Availability)和负载均衡(Load Balancing)的Java Database Connectivity(JDBC...
标题 "HA-JDBC: 高可用性JDBC-开源" 提及的是一个用于数据库连接的开源项目,旨在提供高可用性和容错性的JDBC驱动程序代理。HA-JDBC,全称High Availability JDBC,它通过在原有JDBC驱动之上增加一层中间件,实现了...
软件适用于 HA-655-* Ver2.00以上,HA-655-* -A Ver2.00以上,HA-675-* Ver2.00以上,HA-675-* Ver2.00以上。虽然是日文版,软件打开默认是日文(乱码),需要将日文切换英文。切换方法在压缩包里。软件最好使用最大...
本文将深入解析“JN-AN-1189-ZigBee-HA-Demo_standard”这一压缩包文件中的内容,帮助读者了解ZigBee家居自动化(Home Automation, HA)的实现原理和应用。 一、ZigBee HA概述 ZigBee HA是ZigBee联盟制定的一种...
本示例程序"JN-AN-1189-ZigBee-HA-Demo.zip"是基于JN516X芯片的ZigBee家庭自动化(HA)演示,旨在帮助开发者快速理解和实践ZigBee节点的构建与应用。 JN516X系列芯片是恩智浦半导体(NXP)推出的一系列专为物联网...
在JN-AN-1189-ZigBee-HA-Demo_standard项目中,我们可以看到JN5169如何被用作网络中的协调器或路由器,负责设备的网络组建、管理以及数据传输。 与此同时,JN5168作为JN5169的前身,虽然在硬件和性能上可能稍有差异...
《在Windows系统中利用HA-explore2fs工具查看Linux分区》 在当今多操作系统共存的环境中,有时候我们需要在Windows系统下访问或管理Linux分区的数据。HA-explore2fs工具便是一个为此目的而设计的强大软件,它使得...
c language curriculum design topics, can be achieved: increased staff records \ delete staff records \ find staff records \ amend trade union records \ with staff records and other functions....
c language curriculum design topics, can be achieved: increased staff records \ delete staff records \ find staff records \ amend trade union records \ with staff records and other functions....
自动配置用于Spring Boot的HA-JDBC组件 用法 只需将此项目作为依赖项包含在您的Spring Boot项目中,然后在应用程序属性中添加后端数据库的配置即可。 YAML配置 hajdbc: driverDatabases: - id: db1 location: ...
标题“MT41J256M16HA-125_E.pdf”指明了文件名,而文件名通常与特定的型号相关联。根据文件名,我们可以推断出文档与MT41J256M16HA-125 DDR3 SDRAM组件相关。 描述中的“DDR3 SDRAM”告诉我们文件涉及的是DDR3同步...
低级格式化工具HA-LLFTOOL是一种专门用于处理存储设备问题的软件,尤其针对TF(MicroSD)卡出现不认卡、无法格式化或数据读取错误等状况。在IT领域,低级格式化与常规的“快速格式化”不同,它涉及对存储介质的底层...
HA-RPGXP_103HA-RPGXP_103
标题中的"HA-explore2fs-1pre6b.rar"是一个RAR格式的压缩包,它包含了一个名为"explore2fs"的工具,这是一款专为Windows用户设计的软件,用于浏览和探索Linux文件系统。这个版本是1pre6b,意味着它是1.0版本之前的第...
**ha-atkkping:网络探测与管理的利器** 在IT领域,网络监控和故障排查是不可或缺的工作环节。ha-atkkping作为一个超级ping工具,它的出现为网络管理员提供了强大的辅助手段,帮助他们更有效地进行网络健康检查和...
Instant Client 是 ORACLE(R) 发布的轻量级数据库客户端,您无需安装标准的客户端,就可以通过它来运行 OCI、OCCI、Pro*C、ODBC 和 JDBC 程序。 适用于那些仅需要连接远程 Oracle 数据库,本地不需要安装服务端的...
HA-Proxifier321-LDR 网络
《深入理解DLL导出与查看:以HA-eXeScope650-moming为例》 在计算机编程领域,动态链接库(DLL)是Windows操作系统中一个重要的组件,它允许多个程序共享同一段代码和数据,从而节省内存并提高效率。然而,对DLL的...
HA-eXeScope650-moming是一款专为DLL(动态链接库)文件设计的专业分析工具,它在IT行业中被广泛用于软件逆向工程、漏洞分析以及程序调试等多个领域。DLL文件是Windows操作系统中一个核心组成部分,它允许多个程序...