BeetlSQL 3.14.0がリリースされ、人気のあるJavaORMツール

このリリース@昨年の夏、@Murongの提案

  •  マッパーのデフォルトのメソッド呼び出し、jdk7、jkd8、jdk9、jdk10、jdk11、jdk12、jdk13、jdk14、jdk15、jdk16、jdk17をサポート
  • トゥームストーンのサポート。組み込みのクエリ(SQLManagerまたはQuery)の場合、トゥームストーンフィールドが考慮されます。これを有効にするには、sqlManager.setQueryLogicDeleteEnableの構成が必要です。

ユニットテストコードの場所

    @Test
	public void testLogicDelete(){

		ProductOrder order = new ProductOrder();
		order.setCreateDate(new Date());
		order.setStatus(0);
		sqlManager.insert(order);
		long total = sqlManager.allCount(ProductOrder.class);
		Assert.assertEquals(2,total);
		//逻辑删除
		sqlManager.deleteById(ProductOrder.class,order.getId());
		total = sqlManager.allCount(ProductOrder.class);
		//还是总是2
		Assert.assertEquals(2,total);


		ProductOrder dbOrder = sqlManager.unique(ProductOrder.class,order.getId());
		Assert.assertEquals(1L,dbOrder.getVersion().longValue());

		Query<ProductOrder> query = sqlManager.query(ProductOrder.class);
		query.andEq("id",order.getId());
		dbOrder = query.unique();
		Assert.assertEquals(1L,dbOrder.getVersion().longValue());

		//如下代码包测试逻辑删除部分,实际情况是需要配置QueryLogicDeleteEnable
		//删除生成的缓存
		sqlManager.refresh();
		sqlManager.setQueryLogicDeleteEnable(true);

		//考虑逻辑删除,查询不出来
		dbOrder = sqlManager.single(ProductOrder.class,order.getId());
		Assert.assertNull(dbOrder);

		query = sqlManager.query(ProductOrder.class);
		query.andEq("id",order.getId());
		dbOrder = query.single();
		Assert.assertNull(dbOrder);

		//逻辑删除不在查询范围内
		long newTotal  = sqlManager.allCount(ProductOrder.class);
		Assert.assertEquals(1,newTotal);

		newTotal  = sqlManager.all(ProductOrder.class).size();
		Assert.assertEquals(1,newTotal);


		ProductOrder template = new ProductOrder();
		template.setId(order.getId());
		int queryCount = sqlManager.template(template).size();
		Assert.assertEquals(0,queryCount);

		//恢复默认值
		sqlManager.refresh();
		sqlManager.setQueryLogicDeleteEnable(false);

	}
dependency>
    <groupId>com.ibeetl</groupId>
    <artifactId>beetlsql</artifactId>
    <version>3.14.0-RELEASE</version>
</dependency>

    BeetlSQLは、2015年から独自に開発されました。目標は、開発、保守、運用が効率的なデータアクセスフレームワークを提供することです。幅広いアプリケーション、強力なカスタマイズが可能で、データベースアクセスコードの記述が特にスムーズです。 MyBatisより。SQLを記述したくない場合でも、SQLをより適切に記述したい場合でも、BeetlSQLはこの要件を満たすことができます。現在サポートされているデータベースは次のとおりです。

  • 従来のデータベース:MySQL(MySQLプロトコルをサポートするさまざまなデータベースを含む)、MariaDB、Oralce、Postgres(Postgresプロトコルをサポートするさまざまなデータベースを含む)、DB2、SQL Server、H2、SQLite、Derby、Shentong、Dameng、Huawei Gauss、NPC Jincang、PolarDB、GBase8s、GreatSQLなど。
  • ビッグデータ:HBase、ClickHouse、Cassandar、Hive、GreenPlum
  • IoT時系列データベース:Machbase、TD-Engine、IotDB
  • SQLクエリエンジン:Drill、Presto、Druid
  • インメモリデータベース:ignite、CouchBase

ドキュメントのソースコードと例を読んで、マルチライブラリの使用パフォーマンステストをオンラインで体験してください     

おすすめ

転載: www.oschina.net/news/190576/beetlsql-3-14-0-released