{"id":649,"date":"2014-12-23T12:10:32","date_gmt":"2014-12-23T12:10:32","guid":{"rendered":"http:\/\/smartfoxserver.com\/blog\/?p=649"},"modified":"2017-04-18T15:17:04","modified_gmt":"2017-04-18T15:17:04","slug":"multiple-db-connections","status":"publish","type":"post","link":"https:\/\/smartfoxserver.com\/blog\/multiple-db-connections\/","title":{"rendered":"Multiple DB connections"},"content":{"rendered":"<p>There can be cases in which one application requires to connect to multiple databases. By default each Zone in SFS2X exposes a single <strong>DBManager<\/strong> object but we can create more of these via code, to manage multiple data sources.<!--more--><\/p>\n<p>We highly recommend to create all of the required DBManager instances in the <strong>init()<\/strong> method of your Extension. This is an example of how to create a DBManager via code:<\/p>\n<pre class=\"brush: java; title: ; notranslate\" title=\"\">\r\npublic class MultiDBExtension extends SFSExtension\r\n{\r\n    private SFSDBManager dbm;\r\n\r\n    @Override\r\n    public void init()\r\n    {\r\n        \/\/ Prepare DBManager configuration\r\n        DBConfig cfg = new DBConfig();\r\n\r\n        cfg.active = true;\r\n        cfg.driverName = &quot;com.mysql.jdbc.Driver&quot;;\r\n        cfg.connectionString = &quot;jdbc:mysql:\/\/127.0.0.1\/database_name&quot;;\r\n        cfg.userName = &quot;db_user_name&quot;;\r\n        cfg.password = &quot;db_user_pass&quot;;\r\n        cfg.testSql = &quot;SELECT name FROM some_table LIMIT 1&quot;;\r\n\r\n        \/\/... more settings ...\r\n\r\n        \/\/ Create DBManager\r\n        dbm = new SFSDBManager(cfg);\r\n    }\r\n}\r\n<\/pre>\n<p>For more details you can check\u00a0tha server side Javadoc:<\/p>\n<ul>\n<li><a href=\"http:\/\/docs2x.smartfoxserver.com\/api-docs\/javadoc\/server\/com\/smartfoxserver\/v2\/db\/SFSDBManager.html\" target=\"_blank\">SFSDBManager<\/a><\/li>\n<li><a href=\"http:\/\/docs2x.smartfoxserver.com\/api-docs\/javadoc\/server\/com\/smartfoxserver\/v2\/db\/DBConfig.html\" target=\"_blank\">DBConfig<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>There can be cases in which one application requires to connect to multiple databases. By default each Zone in SFS2X exposes a single DBManager object but we can create more of these via code, to manage multiple data sources.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[5],"tags":[21,31,7],"_links":{"self":[{"href":"https:\/\/smartfoxserver.com\/blog\/wp-json\/wp\/v2\/posts\/649"}],"collection":[{"href":"https:\/\/smartfoxserver.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/smartfoxserver.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/smartfoxserver.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/smartfoxserver.com\/blog\/wp-json\/wp\/v2\/comments?post=649"}],"version-history":[{"count":3,"href":"https:\/\/smartfoxserver.com\/blog\/wp-json\/wp\/v2\/posts\/649\/revisions"}],"predecessor-version":[{"id":652,"href":"https:\/\/smartfoxserver.com\/blog\/wp-json\/wp\/v2\/posts\/649\/revisions\/652"}],"wp:attachment":[{"href":"https:\/\/smartfoxserver.com\/blog\/wp-json\/wp\/v2\/media?parent=649"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/smartfoxserver.com\/blog\/wp-json\/wp\/v2\/categories?post=649"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/smartfoxserver.com\/blog\/wp-json\/wp\/v2\/tags?post=649"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}