小编tig*_*k89的帖子

Hibernate 和 JSON - 是否有循环依赖的明确解决方案?

这些天我正在努力处理 Hibernate 实体和 JSON,尽管存在很多关于该对象的问题,但我还无法在存在循环依赖项的情况下进行序列化。我尝试了 Gson 和 Jackson,但没有取得太大进展。这是我的对象的摘录。这是“父”类。

@Entity
public class User extends RecognizedServerEntities implements java.io.Serializable
{
    @Id
    @GeneratedValue(strategy = IDENTITY)
    @Column(name = "id", unique = true, nullable = false)
    private Integer id;

    @OneToMany(fetch = FetchType.LAZY, mappedBy = "user", orphanRemoval = false)
    @Cascade({CascadeType.SAVE_UPDATE})
    private Set<Thread> threads = new HashSet<Thread>(0);
    //...other attributes, getters and setters
}
Run Code Online (Sandbox Code Playgroud)

这是“儿童”班

@Entity
@Table(name = "thread")
public class Thread extends RecognizedServerEntities implements java.io.Serializable
{
    @Id
    @GeneratedValue(strategy = IDENTITY)
    @Column(name = "id", unique = true, nullable = false) …
Run Code Online (Sandbox Code Playgroud)

java json hibernate jackson gson

7
推荐指数
1
解决办法
8284
查看次数

检测ListView何时到达底部 - onScroll()或onScrollStateChanged()?

这似乎是一个有很多答案的问题; 但是,我找不到一个通用的方法.我正试图在ListView达到底部时添加数据; 使用数据从Internet检索数据AsyncTask.ListView已经有一个适配器连接到它.

因此,为了找到实现这一目标的好方法,我得出了两种不同的方法.

  1. 第一个onScrollStateChanged()方法,该方法基本上与页面相关.但是,它使用的参数在实际API中没有对应关系.同时,链接使用正确的API,但我不知道是否以正确的方式.我尝试了两个链接中的第一个,但它有点像meh.调试应用程序,diff值变化很大,我不知道如何正确地插入表达式.另外,我不知道如何修复我可以开始检索数据的偏移量; 我的意思是,我想执行代码而不是在我即将到达底部时,而是在我到达之前.此外,即使我们滚动到顶部,有时它也会被调用.
  2. 第二个是onScroll()方法,在答案中使用,或者以不同的方式在代码中使用.我尝试调整两个代码中的最后一个,但它会导致很多问题,即使我们没有到达列表的底部,也会加载数据.

那么,最好的方法是什么?何时以及为什么我更喜欢其中一个?在我的情况下,我应该使用哪两个?

android android-listview android-scroll

6
推荐指数
1
解决办法
6652
查看次数

无法将[text/plain,UTF-8]表示转换为类java.lang.String的对象

在开发restlet web服务+ Android应用程序时,我遇到了一个奇怪的问题.

当我尝试使用简单的get从Web服务恢复String(在Tomcat 7.0本地部署)时,如果来自服务器的字符串太大,Android应用程序崩溃了NullPointerException.

基本上,该计划如下

Android应用

String retrievedString = clientResource.get();
Run Code Online (Sandbox Code Playgroud)

网络服务器

return serializedString;
Run Code Online (Sandbox Code Playgroud)

serializedString有一个(不太)大量的字符(超过2k或类似的东西)时,retrievedString得到一个null值.

我不知道这里有什么问题,但我认为最可能的原因是内存限制,因为Android堆,Java堆,系统RAM或甚至VirtualBox/Genymotion限制.

您如何看待这个问题,我该如何解决?


编辑

根据要求,这里有一些代码; 我试图避免不必要的东西和try/catch块.

服务器

 ObjectMapper objectMapper = new ObjectMapper();
    FilterProvider excludeThreadFilter =
        new SimpleFilterProvider().addFilter("filter properties by name",
            SimpleBeanPropertyFilter.serializeAllExcept("email", "password",
                "threads", "messages", "subforumsSet", /*"parentSubforum",
                "registeredDate", "threadSubforum"*/));
    String st = objectMapper.writer(excludeThreadFilter).writeValueAsString(lt);
    return st;
Run Code Online (Sandbox Code Playgroud)

客户

ClientResource cr = new ClientResource("...an ip address...");
    ThreadsInSubforumIdByPage tis = cr.wrap(ThreadsInSubforumIdByPage.class);

      // The line below is null
      String retrievedString = tis.getThreads();
      // …
Run Code Online (Sandbox Code Playgroud)

java android restlet

5
推荐指数
1
解决办法
735
查看次数

在Ubuntu上使用Tomcat 7的文件夹问题

我在Ubuntu 14.04上安装了Tomcat 7.主要问题是两个不同的文件夹有时是多余的:

的/ usr /共享/ tomcat7

drwxrwxrwx 2 root root 4096 dic 15  2013 backup
drwxrwxrwx 2 root root 4096 set  3 13:28 bin
lrwxrwxrwx 1 root root   21 nov 17  2013 conf -> /var/lib/tomcat7/conf
-rwxrwxrwx 1 root root   39 feb 21  2014 defaults.md5sum
-rwxrwxrwx 1 root root 2030 feb 21  2014 defaults.template
drwxrwxrwx 2 root root 4096 set  3 13:28 lib
lrwxrwxrwx 1 root root   16 nov 17  2013 log -> /var/log/tomcat7
-rwxrwxrwx 1 root root   53 feb …
Run Code Online (Sandbox Code Playgroud)

ubuntu tomcat

4
推荐指数
2
解决办法
9997
查看次数

neo4j - 三个节点之间的关系

我完全是新手Neo4j,这些天我正在测试它。我遇到的一个问题是如何正确实现涉及 3 个不同节点的关系,使用Spring Data. 举个例子,我有3个@NodeEntityS: UserTagTaggableObject

正如您可以争论的那样, aUser可以将 a 添加Tag到 a TaggableObject;我用一个@RelationshipEntity TaggingOperation. 但是,我找不到一种简单的方法来粘合关系中的 3 个实体。我的意思是,显而易见的选择是设置@StartNode User tagger@EndNode TaggedObject taggedObject;但我怎样才能将 加入Tag到关系中?

neo4j spring-data-neo4j

4
推荐指数
1
解决办法
2044
查看次数

Vim - 如何识别插件引发错误

根据标题,有没有办法知道哪个vim插件正在引发错误消息(当然除了禁用/启用)?我不断收到以下错误消息

Error detected while processing function <SNR>59_clear:
line    2:
E803: ID not found: 4
Run Code Online (Sandbox Code Playgroud)

但我无法弄清楚哪个插件坏了.

vim vim-plugin

3
推荐指数
1
解决办法
136
查看次数

MySql - 使用哈希密码创建用户和数据库的脚本

按照此链接的说明,我正在尝试使用以下语法来创建具有密码的用户

DROP DATABASE IF EXISTS forum;
CREATE DATABASE forum;
DELETE FROM mysql.user WHERE Host='localhost' AND User='forum_admin';
#In this way, the password will not be logged in mysql history
SELECT @password:=PASSWORD('forum_admin');
GRANT ALL PRIVILEGES ON forum.* TO 'forum_admin'@'localhost' IDENTIFIED BY PASSWORD '@password';
FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)

但是,倒数第二条指令会出现此错误

ERROR 1827 (HY000): The password hash doesn't have the expected format. Check if the correct password algorithm is being used with the PASSWORD() function.
Run Code Online (Sandbox Code Playgroud)

那么,我该如何解决?我不想手动插入结果SELECT @password(如此此处所述),但我想使用这些结果自动创建新用户.

mysql

2
推荐指数
2
解决办法
2万
查看次数

在接口/抽象类上使用@NodeEntity

是否可以在接口或抽象类或其字段上添加@NodeEntity(甚至@RelationshipEntity)注释?SpringData Neo4j如果没有,您如何处理这些情况?

neo4j spring-data spring-data-neo4j

2
推荐指数
1
解决办法
1713
查看次数