0
有沒有在我們提供給通過BoundStatement.setSet(..)
方法DataStax Java驅動程序,而無需使用用戶定義類型的集合類型的使用我們的類型(我們提供的類)的方法嗎?也許使用Object Mapping API?使用自定義類
如果是這樣,當我們創建表格時,我們應該如何使用類型中的SET
(換句話說:SET<????>
)?
我們使用連接到DSE v4.6.0的DataStax Java驅動程序v2.1.5(卡桑德拉2.0.11.83)。
下面是一個例子來說明:
CREATE TABLE teams (uid TEXT PRIMARY KEY, players SET<????>);
我們的類型:
public class Player {
private String name;
public Player(String name) { this.name = name; }
public String getName() { return name; }
public void setName(String name) { this.name = name; }
}
測試:
public void testSets(){
Set<Player> players = new HashSet<>();
players.add(new Player("Nick"));
players.add(new Player("Paul"));
players.add(new Player("Scott"));
PreparedStatement statement = session.prepare("INSERT INTO teams (uid, players) values (?,?);");
BoundStatement boundStatement = new BoundStatement(statement);
boundStatement.setString("uid", ...);
boundStatement.setSet("players", players);
session.execute(boundStatement);
}