这就是我所拥有的
public class AddNewCategoryController implements Initializable {
@FXML
private TextField name;
@FXML
private TextField description;
@Override
public void initialize(URL url, ResourceBundle resourceBundle) {
}
public void save(){
final AtomicLong identifier = new AtomicLong(5);
Long id = identifier.incrementAndGet();
String catgoryName = name.getText();
String categoryDescription = description.getText();
Category category = new Category(id,catgoryName,categoryDescription);
ReadingDataFromFiles.writeCategory(category);
}
}
当程序运行时,会出现一个添加新类别的屏幕,用户必须写入类别的名称和描述,但ID应该是自动的,并且应该在每次用户输入新类别时增加ID。我这样做并没有达到预期效果,它只增加了一次,但由于初始值保持在5,所以它总是6。
移动此行:
final AtomicLong identifier = new AtomicLong(5);
…更高级别,在方法之外,作为类上的成员字段。
在现有代码中,对该save
方法的每次调用都会创建一个新的AtomicLong
,以替换以前的方法。所以你的计数不能累加。
恰当的命名可以帮助澄清。那个原子龙
不是一个标识符。它是一个"标识符发生器"。每个由其增量和获取
方法返回的数字都是标识符。
问题内容: 使用Postgres,我试图用SQL自动编号主键。但是,这给了我一个错误。 错误: 知道为什么吗? 问题答案: Postgres 10或更高版本 列(请参见下文)保持不变。但是考虑一个 专栏。Postgres10实现了此标准SQL功能。 手册中的基本语法和信息。 __用列 创建 表 将 列 添加 到现有表 表可能填充也可能不填充行。 同时使它成为PK(表还不能拥有PK): 有关的: 如
问题内容: 我正在尝试在mysql数据库中创建一列,该列自动递增1但从0-Z开始然后滚动。 例如000、001、002,…,009、00A,00B,…,00Z,010,…,0ZZ,…,100。 我想让数据库通过自动递增字段创建列。 我的想法是: 为从0到36的每个字符创建一列,然后将行N(其中N是最低有效数字)自动递增1。然后在每列上添加触发器,以在第N列达到36时向N-1列添加1 。 创建一个包
问题内容: 我刚遇到一个我无法解决的问题。 我有一个用作队列的数据库表,我在其中存储一些记录。处理记录后,它们将被删除。删除是由Rails构建在一个触发MySql数据库的循环中调用的。 但是现在我注意到,在表中将 autoIncrement Id (主键)设置回 1 。(这损坏了我在审计表中的引用。相同记录现在指向多个不同的项目队列) 我不使用或删除表构造,而是在代码中再次创建它。 是否有人遇到像
问题内容: 我正在使用php和mysql。我有一个表,其中id列设置为自动递增作为主键。我正在尝试添加另一个名为sort_order的列。插入行后,sort_order列应自动递增。然后,用户将能够更改sort_order值。但是mysql不允许多于一列的自动递增? 自动递增sort_order值的最佳方法是什么? 受欢迎的要求,更多的解释。 在管理区域中,用户将具有类别列表。用户可以使用java
问题内容: 是否可以自动增加非主密钥? 表“ book_comments” 该表上将没有其他索引。但是,我想使列自动递增,以便可以轻松创建另一个表: 表格“ book_comments_votes” 用户将只能对每个书评进行一次投票。该表通过主键强制执行此规则。 题: 是否可以自动增加非主键-例如,自动增加表“ book_comments”中的列? 替代方案,讨论: 如上所述,我想这样做是为了简化
问题内容: 我刚刚使用MySQL查询浏览器创建了一个新表,并注意到在“自动增量列”下有一个勾号。这是如何运作的? 以编程方式添加到数据库时,是否仅添加一个数字,然后数据库会自动将该数字递增? 每次有新用户在我的网站上注册时,我都希望他们的客户ID(仅整数)自动递增,因此我不必尝试随机生成一个唯一的数字。 可以简单地完成吗? 谢谢! 问题答案: 以编程方式添加到数据库时,是否仅添加一个数字,然后数据