QString service = QStringLiteral("");
QString host = QStringLiteral("localhost");
QString port = QStringLiteral("5432");
QString database = QStringLiteral("postgis_25_sample");
bool useEstimatedMetadata = false;
QgsDataSourceUri::SslMode sslmode = QgsDataSourceUri::SslMode::SslDisable;
QString username = QStringLiteral("postgres");
QString password = QStringLiteral("geostar");
QString authcfg = QStringLiteral("");
QgsDataSourceUri uri;
uri.setConnection(host, port, database, username, password, sslmode, authcfg);
QString schema = QStringLiteral("china");
QString tablename = QStringLiteral("bou2_4p");
QString geometrycol = QStringLiteral("geom");
uri.setDataSource(schema, tablename, geometrycol);
QgsVectorLayer::LayerOptions options;
options.loadDefaultStyle = false;
QgsVectorLayer *vectorLayer = new QgsVectorLayer(uri.uri(false), uri.table(), "postgres", options);
QgsProject::instance()->addMapLayer(vectorLayer);
m_layers.append(vectorLayer);
m_mapCanvas->setLayers(m_layers);
m_mapCanvas->setVisible(true);
m_mapCanvas->zoomToFullExtent();
m_mapCanvas->freeze(false);