1

私は長い間フロントエンド開発者であり、Javaでバックエンド作業を行う必要があります。私はCFと.Netの両方でのデータベースアクセス技術に精通していますが、Javaの経験はあまりありません。私は、自分自身または経験の浅い開発者のいずれかによってサポートされなければならないアプリケーションを構築しています。

Java用のセットアップがかなり簡単で理解しやすいDBアクセスシステムはありますか?私のチームにとってHibernateは多すぎるように感じますが、その真っ直ぐなJDBCによって、私は車輪の再発明を行うことになります。

よろしくお願いします、ロバート

4

7 に答える 7

1

ActiveJDBC を試してください: http://javalite.io/activejdbc。これは、Java での高性能で軽量な ActiveRecord の実装です。必要なものがすべて付属しています (おそらくそれ以上)。簡単な例:

CREATE TABLE people (
  id  int(11) NOT NULL auto_increment PRIMARY KEY,
  first_name VARCHAR(56) NOT NULL,
  last_name VARCHAR(56));

対応機種:

public class Person extends Model {}

クエリ:

List<Person> marks = Person.where("name = ?", "Mark");

保存:

Person p = new Person();
p.set("first_name", "John", "last_name", "Doe").saveIt();

他にもたくさんあります。http: //javalite.io/documentationでチェックしてください。

于 2016-06-17T19:14:41.617 に答える
1

JPA/Hibernate には、より使いやすい代替手段がたくさんあります。私は著者であるため、私はソルムラに偏っています。sormula には、ゼロ構成DAO ベースアクティブ レコードカスタムなど、いくつかのオプションがあります。

于 2013-01-20T20:45:39.947 に答える
0

ドメイン オブジェクトのキーと値のアーキテクチャに基づくUjormフレームワークを試すことができます。主な機能:

  • Java コンパイラは、データベース クエリでほとんどの構文エラーを検出します
  • XML構成なしでJavaソースコードによってORMモデルを簡単に構成できます
  • レイジーローディングまたはリレーションのワンリクエストデータローディングがオプションでサポートされています
  • データベースのテーブル、列、およびインデックスは、実行時に Java メタモデルに従ってオプションで更新できます。
  • プロキシまたはバイナリで変更されたビジネス オブジェクトはありません
  • 実行時にライブラリに依存しない非常に軽量なフレームワーク
  • 素晴らしいパフォーマンス

サンプルコード:

 Criterion<Item> crn1, crn2, criterion;  
 crn1 = Item.ID.whereGe(1L);  
 crn2 = Item.ORDER.add(NOTE).whereEq("My order");  
 criterion = crn1.and(crn2);  

 Session session = ormHandler.createSession();  
 for (Item item : session.createQuery(criterion)) {  
    Date created = item.getOrder().getDate();  
    System.out.println( item + " : " + created );  
 }
 session.close();
于 2013-01-20T20:05:32.927 に答える
0

ダニエルが提案したように、私は個人的に多くのプロジェクトで MyBatis を使用しましたが、それは素晴らしいものです。簡単に言えば、MyBatis は SQL クエリの結果テーブルを Java オブジェクトにマップするため、多くの SQL を記述する必要があります。

私の意見では、MyBatis は、データベース スキーマがオブジェクト指向設計にうまく適合していない場合に最適です。私が取り組んだプロジェクトの 1 つには、データを取得するために再帰的な SQL を記述する必要があるレガシー DB スキーマがありましたが、MyBatis はその点で非常にうまく機能します。

于 2012-06-14T19:45:23.947 に答える
0

JDO を見てみましょう。

于 2012-06-14T18:59:22.293 に答える
0

設定が簡単で理解しやすい Java 用の DB アクセス システムはありますか?

私のORMLite パッケージは、これらの特定の要件 (JDBC 上の単純なレイヤー) を満たすように設計されています。注釈を使用して、またはプログラムでデータベース エンティティを構成できます。KISS を維持しようとしながら、いくつかの中間レベルの ORM 機能をサポートします。

サンプル エンティティ:

@DatabaseTable(tableName = "accounts")
public class Account {
    @DatabaseField(id = true)
    private String name;
    ...

使用例:

// this uses h2 but you can change it to match your database
ConnectionSource connectionSource =
       new JdbcConnectionSource("jdbc:h2:mem:account");
Dao<Account,String> accountDao =
       DaoManager.createDao(connectionSource, Account.class);
// create new table
TableUtils.createTable(connectionSource, Account.class);
// persist an instance of Account
Account account = new Account("Jim Smith");
accountDao.create(account);
于 2012-06-14T20:40:22.353 に答える
-1

MyBatisの+1。使用する SQL を完全に制御したい場合に適しています。

于 2012-06-14T19:09:13.893 に答える