Main.java 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package highlevel;
  2. import common.Helper;
  3. import common.Message;
  4. import org.rapidoid.config.Conf;
  5. import org.rapidoid.http.MediaType;
  6. import org.rapidoid.log.Log;
  7. import org.rapidoid.setup.App;
  8. import org.rapidoid.setup.On;
  9. import org.rapidoid.sql.JDBC;
  10. import org.rapidoid.sql.JdbcClient;
  11. public class Main {
  12. public static void main(String[] args) {
  13. App.args(args,
  14. "production",
  15. "c3p0.maxPoolSize=256",
  16. "c3p0.maxIdleTimeExcessConnections=256",
  17. "c3p0.maxStatementsPerConnection=3",
  18. "http.serverName=X",
  19. "http.mandatoryHeaders.connection=false",
  20. "http.timeout=0");
  21. String dbHost = Conf.ROOT.entry("dbhost").or("localhost");
  22. Log.info("Database hostname is: " + dbHost);
  23. On.port(8080);
  24. On.get("/plaintext").managed(false).contentType(MediaType.TEXT_PLAIN).serve("Hello, world!");
  25. On.get("/json").managed(false).json(() -> new Message("Hello, world!"));
  26. JdbcClient mysqlJdbc = JDBC.newApi()
  27. .url("jdbc:mysql://" + dbHost + ":3306/hello_world?" + Helper.MYSQL_CONFIG)
  28. .username("benchmarkdbuser")
  29. .password("benchmarkdbpass")
  30. .pooled();
  31. On.get("/fortunes/mysql").html(new FortunesHandler(mysqlJdbc));
  32. }
  33. }