我需要用Java开发能够执行以下操作的代码:
1)我的应用程序中有一项新要求,即用户将上传包含以下字段的Excel工作表。
国家/地区,阈值,增量值,开始日期和结束日期。 基本上,此表将包含给定日期范围内每个发行国的阈值。这些日期范围通常为一个季度(但用户也可以为多个日期范围上传多个工作表。)
有以下多种情况:
可以说,用户已经为2014年1月1日至2014年3月31日的日期范围上传了德国的第一张excel表,门槛值为400,增量值为10。 所以我设计了一个数据库表,它将值存储在以下列中。
issuerCountry,thresholdVal,IncrementalVal,开始日期,enddate和更新日期。
2)现在,让我们假设用户在其他日子,再次上传日期范围为2014年1月10日至2014年1月28日的excel表,其中包含一些不同的阈值(例如200)。现在应该发生以下事情:
i)我需要修改值为400的数据库中的previos条目,以反映开始日期和结束日期为2014年1月1日和2014年1月9日(比2014年1月10日还要少1)。这将是一个更新声明。现在我需要插入一个阈值为的记录 200,开始日期为2014年1月10日,结束日期为2014年1月28日。还有一个插入语句为 thresold值为400(第一次上传),开始日期为2014年1月29日,结束日期为2014年3月31日。
所以从上面的解释:摘要将是
Excel上传stardate enddate阈值 1次01-Jan-2014 31-Jan-2014 400 2次(1月10日至28日)2014年1月1日2014年1月9日400 - 这应该是更新声明,将31st_Mar更改为09年3月9日 2014年1月10日2014年1月28日200(这是第二张表中的阈值) - 这应该是插入的 29_Jan-2014 31-Mar-2014 400 - 这也应该是插入
因此,无论何时,新的开始日期和结束日期都来自发行国的excel,我需要检查数据库中的现有记录,并检查新日期是否与现有日期重叠,如果是,则需要执行上述操作。可能有多种情况,例如if 在数据库中,我们有一个国家的两行,开始日期和结束日期分别为2014年1月1日至2014年1月20日和2014年1月21日至2014年2月2日,现在新的日期为2014年1月12日到2014年1月26日,我需要将2014年1月20日更改为2014年1月11日,然后再从2009年1月12日至2014年1月26日再添加一条记录,并在2014年1月27日再创一项记录2014年2月3日至2014年3月31日期间,02-Fed-2014和另一个。[/ p>
随着更多日期重叠,这将变得复杂。你能为这种情况建议一些合适的解决方案吗?我必须为此做一个设计演示。快速的帮助将非常感激。感谢。
答案 0 :(得分:0)
好吧,我建议您获取包含EMF的最新Eclipse IDE的副本,并开始为您的应用程序设计模型。您可以通过生成ecore图表为您的演示文稿生成完全可接受的UML图表。 一旦你想开始编程你就可以生成模型(以及更多),实现一些业务逻辑来完成工作并创建一个RCP或RAP项目来可视化你的东西。
了解有关EMF的更多信息: