- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个基于 Rest 的 spring-boot 微服务,我想将其配置为将身份验证和 session 数据存储在一个 mongo 数据库中,并将应用程序数据存储在另一个数据库中。
我当前的设置大部分都有效,除了 spring 在两个数据库中创建我的所有文档之外。我查看了@Document()
注释,但它没有可供数据库使用的参数。
在 mongo shell 中:
> show dbs
admin 0.000GB
authentication 0.000GB
prospect 0.000GB
> use authentication
switched to db authentication
> show collections
credentials
credentials_authorities
prospects
roles
sessions
> use prospect
switched to db prospect
> show collections
prospects
application.properties:
com.mycompany.prospect.domainName=mycompany.com
spring.data.mongodb.host=mongodb-service
spring.data.mongodb.port=27017
com.mycompany.prospect.server.appDatabase=prospect
com.mycompany.prospect.server.sessionDatabase=authentication
HttpSessionConfig.java
@Configuration
@EnableMongoHttpSession()
public class HttpSessionConfig {
private final Logger logger = LoggerFactory.getLogger(this.getClass());
@Bean
public CookieSerializer cookieSerializer(
@Value("${com.mycompany.prospect.domainName:localhost}")
final String domainName) {
logger.info("Configuring DefaultCookieSerializer with DomainName '{}'.", domainName);
final DefaultCookieSerializer serializer = new DefaultCookieSerializer();
serializer.setDomainName(domainName);
serializer.setUseHttpOnlyCookie(true);
return serializer;
}
@Bean
public JdkMongoSessionConverter jdkMongoSessionConverter() {
return new JdkMongoSessionConverter();
}
}
MongoConfig.java
@Configuration
@EnableMongoRepositories
public class MongoConfig {
private final Environment env;
public MongoConfig(Environment env) {
this.env = env;
}
@Bean("applicationTemplate")
@Qualifier("applicationTemplate")
public MongoTemplate mongoTemplate(
final MappingMongoConverter mappingMongoConverter, final MongoClient mongoClient) {
final String databaseName =
env.getRequiredProperty("com.mycompany.prospect.server.appDatabase");
final MongoDbFactory dbFactory = new SimpleMongoDbFactory(mongoClient, databaseName);
return new MongoTemplate(dbFactory, mappingMongoConverter);
}
@Bean("mongoOperations")
@Qualifier("mongoOperations")
@Primary
public MongoTemplate mongoOperations(
final MappingMongoConverter mappingMongoConverter, final MongoClient mongoClient) {
final String databaseName =
env.getRequiredProperty("com.mycompany.prospect.server.sessionDatabase");
final MongoDbFactory dbFactory = new SimpleMongoDbFactory(mongoClient, databaseName);
final MongoTemplate mongoTemplate = new MongoTemplate(dbFactory, mappingMongoConverter);
return mongoTemplate;
}
}
Prospect.java
@Document(collection = "prospects")
public class Prospect {
@Id private String prospectId;
@TextIndexed() private String businessName;
public String getProspectId() {
return prospectId;
}
public void setProspectId(String prospectId) {
this.prospectId = prospectId;
}
public String getBusinessName() {
return businessName;
}
public void setBusinessName(final String businessName) {
this.businessName = businessName;
}
}
我希望潜在客户集合仅存在于潜在客户数据库中。
我尝试删除数据库并重新启动服务,但它们在重新启动后又恢复了。关于如何正确执行此操作有什么想法吗?
最佳答案
如果您的应用程序指向单个 mongodb 实例,并且您希望根据每个 Web 请求切换数据库。您可以看一下这个示例, https://github.com/Loki-Afro/multi-tenant-spring-mongodb/blob/master/src/main/java/com/github/zarathustra/mongo/MultiTenantMongoDbFactory.java
PS:- 我在研究实现 Multi-Tenancy 时发现了这一点
关于java - Spring Mongodb : configure documents to use specific dbs?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47621803/
关闭。这个问题需要details or clarity .它目前不接受答案。 想改进这个问题吗? 通过 editing this post 添加细节并澄清问题. 关闭 8 年前。 Improve t
我目前正在创建一个管理面板,并将其编码为 100% 万无一失。您将能够通过编辑数据库中的短语来编辑每条信息。 我知道的主要方法是使用这个: $c = $conn->query('SELECT phra
我是 mongo 数据库的新手。我刚刚在我的 MAC 上安装了 mongo DB, 看完这个 Youtube 视频后 https://www.youtube.com/watch?v=pWbMrx5rV
我正在尝试在我的 Windows 机器上运行 Hive。但是,当我尝试从 C:\hadoop-2.7.1\hive-2.1.0\bin>hive 运行命令时,出现以下错误。 Required tabl
我已经在 Windows 上设置了 mongodb 64bits。我成功运行了服务器和客户端。 但是当我输入时: show dbs 输出是 local 0.000GB 为什么? show dbs 应
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'NAME': 'defa
我昨天开始使用 mongodb,但似乎无法在控制台上生成数据库。每次我做 use exampledb switched to db exampledb 但出于某种原因我仍然只生成我的本地人..? sh
我正在使用 pymongo,但我不知道如何执行相当于“show dbs”的 mongodb 交互式 shell。 最佳答案 from pymongo import MongoClient # Assu
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我继承了很多本质上是这样的代码: dim dbs as dao.database set dbs = currentdb() dbs.execute "Some SQL string" set dbs
当我第一次输入 mongo 时,我看到“connecting to : test”。但是,当我输入 show dbs 时,它不会显示 test 数据库。我仍然可以看到 local 以及我创建的其他一些
我们的主服务器 (PHP/MySQL) 上有一个数据库,用于存储通过网站更新的数据。我试图找出将这些数据复制到本地 SQLite 数据库(在 android 上运行)的最佳方法。由于移动互联网速度等的
我有一个基于 Rest 的 spring-boot 微服务,我想将其配置为将身份验证和 session 数据存储在一个 mongo 数据库中,并将应用程序数据存储在另一个数据库中。 我当前的设置大部分
我花了一些时间试图找出问题所在,但由于我找不到,我决定在这里问。 我在 Windows 8 上运行 MongoDB(Windows 64-bit 2008 R2+) 版本 3.2.3,路径是: C:\
我在 Windows 10 Professional 64 位上安装了 Oracle Developer Suite 6i,但是当我运行表单构建器时,它给出错误 \ORANT\DBS\FMCUS.MS
我想以这样一种方式构建我的数据库,即某些表(与其他表没有任何关系,因此不需要连接)必须放在单独的 mysql 数据库中。 我知道每个模型都有一个 establish_connection 属性。 我想
运行以下命令时: mongos --configdb 10.8.15.175:27019,10.8.14.89:27019,10.8.9.100:27019 我收到这个错误: FailedToPars
根据 MongoDb documentation MongoDB shell 命令: show dbs Print a list of all databases on the server. 和 s
寻找任何建议或忠告,甚至是最佳实践。我已经使用 php 和 mysql 开发了一个在线数据库。它允许公司记录投诉和解决方案等。有一个用于登录的用户数据库和一个用于记录主要数据的 cip 数据库。 2家
本文整理了Java中de.lmu.ifi.dbs.elki.math.spacefillingcurves.ZCurveSpatialSorter.zSort()方法的一些代码示例,展示了ZCurve
我是一名优秀的程序员,十分优秀!