Skip to content

#39作業計画に基づく全面実装・移行(骨格・基盤コード・ドキュメント・テスト・CHANGELOG刷新) #40

@vemikrs

Description

@vemikrs

#39の全面移行に伴い、以下の骨格・基盤部分を中心に全実装・移行作業を行ってください。

主な修正対象とポイント

  • Gradle構成(build.gradle, core/build.gradle, spring/build.gradle):バージョン・artifactId・publishing・依存の整理
  • コアAPI(BatisFluid, JdbcFlow, SqlRunner, SelectFlow, Where など):新旧APIのクラス追加・パッケージ移動・@Version 0.0.2明記
  • 旧SB*アダプタ(jp.vemi.seasarbatis/SBJdbcManager等):@deprecated(since="0.0.2")、Javadoc @Version統一
  • Spring Boot統合(BatisFluidAutoConfiguration, META-INF/spring/...imports):新旧両方の自動構成クラス、Bean定義整理
  • 設定ファイルローダ(OptimisticLockConfigLoader):新旧名両対応、Deprecated警告
  • テストコード:新API主、旧APIは@tag("v0.0.1")でFull Testから除外
  • ドキュメント(README, MIGRATION GUIDE, NAMING REFACTOR PLAN, CHANGELOG 日本語化):バージョン表記含めて全箇所統一

参考となる代表箇所

作業指示

  • #39の作業計画に従い、各箇所を「全て漏れなく」修正・移行すること
  • コード/ドキュメント/設定/テストのバージョン表記・@Versionは「0.0.2」に統一
  • テストコードは実装するが、CIテストはコミットメッセージに[skip ci]で実施しない
  • 旧API互換テストは@tag("v0.0.1")でFull Testから除外
  • サンプル依存記述やJavadoc/ドキュメントの表現も全て統一
  • 対象例に記載のファイル/URL/設計を参照しつつ、Copilot Coding Agentが骨格から完全な修正を実装すること

【関連ファイル/コード抜粋】

# MIGRATION GUIDE — v0.0.1 -> v0.0.2 (BatisFluid)
...
## TL;DR (Checklist)
1. Artifact IDs
   - `jp.vemi:seasar-batis` -> `jp.vemi:batis-fluid-core`
   - `jp.vemi:seasar-batis-spring` -> `jp.vemi:batis-fluid-spring`
2. Package
   - `jp.vemi.seasarbatis` -> `jp.vemi.batisfluid`
3. Entry points
   - `new SBJdbcManager(...)` -> `BatisFluid.of(sqlSessionFactory).jdbcFlow()` or `new JdbcFlow(sqlSessionFactory)`
   - For externalized SQL use `SqlRunner` (old `SBQueryExecutor` etc. remain via deprecated adapters)
4. Annotations and Exceptions
   - Switch to new names; old names remain for now with `@Deprecated`.
5. Config files
   - `seasarbatis-optimistic-lock.properties` -> `batisfluid-optimistic-lock.properties` (old name still accepted)
6. Spring Boot
   - `SeasarBatisAutoConfiguration` -> `BatisFluidAutoConfiguration`
7. Tests and samples
   - Prefer new API; keep a minimal suite against deprecated adapters for a while.
---
# CHANGELOG
...
## [0.0.1] - 2025-10-06
- Initial pre-release as **SeasarBatis**: MyBatis wrapper with S2-like `JdbcManager` ops,
  SQL parser/processor, optimistic locking, and Spring integration (baseline).
# SeasarBatis
...
## Spring Framework との統合
...
### Gradle
```groovy
// SeasarBatis Spring統合モジュール
implementation 'jp.vemi:seasar-batis-spring:1.0.0'

// Spring統合用の追加依存関係
implementation 'org.mybatis:mybatis-spring:3.0.3'
implementation 'org.springframework:spring-jdbc:6.1.3'
- [core/src/test/java/jp/vemi/batisfluid/compat/SBJdbcManagerCompatTest.java](https://github.com/vemikrs/seasar-batis/blob/main/lib/src/test/java/jp/vemi/seasarbatis/SBJdbcManagerTest.java) :
```java
@Tag("v0.0.1")
class SBJdbcManagerCompatTest {
    @Test
    void construct_only() {
        SqlSessionFactory factory = ...;
        new SBJdbcManager(factory);
    }
}

Powered by GitHub Copilot

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions