import com.twitter.finagle.Mysql; import com.twitter.finagle.mysql.*; import com.twitter.util.Function; import com.twitter.util.Future; public class FinagleMySQLExample { public static void main(String[] args) { MysqlClient client = Mysql.client().newRichClient("localhost:3306"); Request request = Request.apply("SELECT * FROM users"); Future<Response> future = client.sendRequest(request); future.onSuccess(new Function<Response, BoxedUnit>() { @Override public BoxedUnit apply(Response response) { Result result = response.getResult(); if (result instanceof Result.Select) { Result.Select selectResult = (Result.Select) result; selectResult.rows().foreach(new Function<Row, BoxedUnit>() { @Override public BoxedUnit apply(Row row) { System.out.println(row.getString("username")); return BoxedUnit.UNIT; } }); } return BoxedUnit.UNIT; } }); future.onFailure(new Function<Throwable, BoxedUnit>() { @Override public BoxedUnit apply(Throwable throwable) { throwable.printStackTrace(); return BoxedUnit.UNIT; } }); future.get(); client.close(); } } <dependency> <groupId>com.twitter.finagle</groupId> <artifactId>finagle-mysql_2.12</artifactId> <version>21.3.0</version> </dependency> mysql { com.twitter.finagle.mysql.host = "localhost" com.twitter.finagle.mysql.port = 3306 com.twitter.finagle.mysql.user = "username" com.twitter.finagle.mysql.password = "password" com.twitter.finagle.mysql.database = "database_name" }


上一篇:
下一篇:
切换中文