我在NetBeans中使用Entity bean来开发一些主/详细信息表单。当我运行表单时,单击Delete JButton,行从JTable中消失。
但是当我点击“重新载入”时,所谓删除的行会再次出现。我不知道为什么会这样;为什么实体不会一直擦除数据库表,只是将它从JTable中删除?
答案 0 :(得分:1)
这类问题听起来与数据(模型)与视图分离有关。我对您使用的技术没有具体的了解,但希望我能够提供一些有关您问题根源的见解。
在你的情况下,听起来就像你“删除”时你只是从视图中删除它;你实际上并没有以任何方式操纵数据(即模型不知道这种删除)。
因此,一旦你“重新加载” - 通常意味着视图要求模型提供什么数据 - 你的“删除”就会丢失,因为模型根本没有改变,因此提供了完全相同的数据。图。
当您通过JTree
本身或甚至包含的TreeNode
对象操作数据(即删除内容)时,可能会发生这种行为,而不是基础{{1} }。
希望这些信息对您有所帮助,抱歉,我没有更具体的答案。
答案 1 :(得分:1)
重新加载JTable时,删除了记录,因为它有一个外键链接,无法在数据库级别删除它。