我正在一个演示服务器中设置我的应用程序的新版本,并希望找到一种每天重置数据库的方法.我想我总是可以执行一个cron作业执行drop并创建查询,但我正在寻找一种更清洁的方法.我尝试使用具有drop-create方法的特殊持久性单元,但它不起作用,因为系统经常连接和断开服务器(按需).
有更好的方法吗?
我需要创建一个消息系统,一个人可以与许多用户进行对话.例如,我开始与user2,user3和user4交谈,因此他们中的任何人都可以看到整个对话,如果对话在任何时间都不是私密的,任何参与者都可以将任何其他人添加到对话中.
这是我的想法如何做到这一点.我正在使用Mongo,我的想法是使用对话框作为实例而不是消息.
架构如下所示:
{
_id : ...., // dialog Id
'private' : 0 // is the conversation private
'participants' : [1, 3, 5, 6], //people who are in the conversation
'msgs' :[
{
'mid' : ...// id of a message
'pid': 1, // person who wrote a message
'msg' : 'tafasd' //message
},
....
{
'mid' : ...// id of a message
'pid': 1, // person who wrote a message
'msg' : 'tafasd' //message
}
]
}
Run Code Online (Sandbox Code Playgroud)
我可以看到这种方法的一些优点 - 在一个大型数据库中,很容易找到某些特定会话的消息. …
鉴于下面的示例文档:
{
"_id" : "2",
"objects" : [{
"_id" : "1",
"name" : "embedded "
},{
"_id" : "2",
"name" : "embedded "
},{
"_id" : "3",
"name" : "embedded "
}],
"name" : "gloss2"
}
Run Code Online (Sandbox Code Playgroud)
是否可以只返回一个子文档?这样我就不必选择整个父对象,获取列表,并循环遍历列表以获取相关对象.
{
"_id" : "2",
"name" : "embedded"
}
Run Code Online (Sandbox Code Playgroud) 是这样的情况:
总体问题:精确度在某种程度上是指或可以依赖于您可以表示的数字密度(准确)吗?
我有一个使用derby和JPA的项目.我可以在我的应用程序中很好地连接到数据库.我想用SQL Developer连接到嵌入式数据库,这样我就可以轻松浏览/查询数据库中的数据.
这是我正在使用的德比依赖:
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derby</artifactId>
<version>10.7.1.1</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
这是我用于JPA的连接信息:
<property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver"/>
<property name="javax.persistence.jdbc.url" value="jdbc:derby:fs-hash-database;create=true"/>
Run Code Online (Sandbox Code Playgroud)
使用SQL Developer 3.2.09我尝试使用以下条目在工具>首选项>数据库>第三方JDBC驱动程序中添加驱动程序:
C:\Users\axiopisty\.m2\repository\org\apache\derby\derby\10.7.1.1\derby-10.7.1.1.jar
Run Code Online (Sandbox Code Playgroud)
但是当我尝试创建一个新连接时,SQL Developer仍然只显示Oracle和Access的选项卡.我无法获得第三方驱动程序的JDBC选项卡.
我认为问题是我作为第三方驱动程序添加的jar是整个derby jar,而不仅仅是驱动程序.然而,驱动程序包含在jar中.
有谁知道如何配置SQL Developer以使用derby-10.7.1.1.jar中包含的org.apache.derby.jdbc.EmbeddedDriver?
我尝试完成本教程,但我不知道VS 2008项目要使用什么,因为我尝试过的所有内容都给了我一个error C2731: 'wWinMain' : function cannot be overloaded错误(对于Win32项目,我从教程中更改了APIENTRY _tWinMain()with WINAPI WinMain()方法),或许多错误就像error LNK2019: unresolved external symbol _closesocket@4 referenced in function _WinMain@16.