123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162 |
- package org.jeecg.modules.demo.onemap.utils;
- import com.sun.istack.internal.NotNull;
- import lombok.extern.slf4j.Slf4j;
- import org.geotools.data.DataStore;
- import org.geotools.data.DataStoreFinder;
- import org.geotools.data.postgis.PostgisNGDataStoreFactory;
- import java.io.IOException;
- import java.util.HashMap;
- import java.util.Map;
- /**
- * @author wangkang
- * @email iwuang@qq.com
- * @date 2019/1/24 16:28
- */
- @Slf4j
- public class PGDatastore {
- private static DataStore dataStore = null;
- //private static Logger logger = Logger.getLogger(PGDatastore.class);
- @NotNull
- private String host;
- @NotNull
- private String port;
- @NotNull
- private String dbname;
- @NotNull
- private String schema;
- @NotNull
- private String username;
- @NotNull
- private String password;
- public PGDatastore() {
- }
- /**
- * 只有get或者Create时才会实际连接数据库
- * @param host
- * @param port
- * @param dbname
- * @param schema
- * @param username
- * @param password
- */
- public PGDatastore(String host, String port, String dbname, String schema, String username, String password) {
- this.host = host;
- this.port = port;
- this.dbname = dbname;
- this.schema = schema;
- this.username = username;
- this.password = password;
- }
- // public static Logger getLogger() {
- // return logger;
- // }
- // public static void setLogger(Logger logger) {
- // PGDatastore.logger = logger;
- //}
- public static DataStore getDefeaultDatastore() {
- if (dataStore == null) {
- Map<String, Object> params = new HashMap<String, Object>();
- params.put(PostgisNGDataStoreFactory.DBTYPE.key, "postgis");
- params.put(PostgisNGDataStoreFactory.HOST.key, "211.159.225.204");
- params.put(PostgisNGDataStoreFactory.PORT.key, new Integer(5432));
- params.put(PostgisNGDataStoreFactory.DATABASE.key, "hzz");
- params.put(PostgisNGDataStoreFactory.SCHEMA.key, "public");
- params.put(PostgisNGDataStoreFactory.USER.key, "postgres");
- params.put(PostgisNGDataStoreFactory.PASSWD.key, "AAaa!@#123");
- try {
- dataStore = DataStoreFinder.getDataStore(params);
- } catch (IOException e) {
- //logger.error("默认Postgis数据库连接失败", e);
- }
- }
- return dataStore;
- }
- public String getHost() {
- return host;
- }
- public void setHost(String host) {
- this.host = host;
- }
- public String getPort() {
- return port;
- }
- public void setPort(String port) {
- this.port = port;
- }
- public String getDbname() {
- return dbname;
- }
- public void setDbname(String dbname) {
- this.dbname = dbname;
- }
- public String getSchema() {
- return schema;
- }
- public void setSchema(String schema) {
- this.schema = schema;
- }
- public String getUsername() {
- return username;
- }
- public void setUsername(String username) {
- this.username = username;
- }
- public String getPassword() {
- return password;
- }
- public void setPassword(String password) {
- this.password = password;
- }
- public DataStore getDatastore() {
- if (dataStore == null) {
- Map<String, Object> params = new HashMap<String, Object>();
- params.put(PostgisNGDataStoreFactory.DBTYPE.key, "postgis");
- params.put(PostgisNGDataStoreFactory.HOST.key, host);
- params.put(PostgisNGDataStoreFactory.PORT.key, new Integer(port));
- params.put(PostgisNGDataStoreFactory.DATABASE.key, dbname);
- params.put(PostgisNGDataStoreFactory.SCHEMA.key, schema);
- params.put(PostgisNGDataStoreFactory.USER.key, username);
- params.put(PostgisNGDataStoreFactory.PASSWD.key, password);
- try {
- dataStore = DataStoreFinder.getDataStore(params);
- } catch (IOException e) {
- log.error("Postgis数据库连接失败", e);
- }
- }
- if (dataStore == null) {
- dataStore = getDefeaultDatastore();
- }
- return dataStore;
- }
- public void dispose() {
- dataStore.dispose();
- dataStore = null;
- }
- }
|