为什么要switch
在一系列if
语句中使用块?
switch
语句似乎做同样的事情,但需要更长的时间来输入.
在阅读Effective Java时,我遇到了"使用枚举而不是int
常量"的建议.在当前的项目中,我正在做类似下面的事情:
int COL_NAME = 0;
int COL_SURNAME = 1;
table[COL_NAME] = "JONES"
Run Code Online (Sandbox Code Playgroud)
我将如何使用枚举来实现这一目标?由于我被迫使用的接口,我必须使用int
for我的索引.上面的例子只是一个例子.我实际上使用的是一个带int
索引值的API .
有没有人知道查询docker守护程序使用的嵌入式DNS服务器的方法.我正在尝试使用packetbeats,如果我可以用容器名称替换docker ip地址,那将会非常有用.
我目前可以想到的唯一方法是在容器中创建一个dns服务器,可以将其配置为主机的dns服务器,以确保主机可以解析容器名称.希望有道理吗?
这是唯一的方式还是有其他选择?
我正在尝试查询的容器是使用docker-compose创建的.
在现有项目中,我们使用MVP(手工制作)相当不错.我们理解并完成了我们所需要的.对于一个新项目,我正在考虑使用GWT 2.1(活动和地点)中内置的MVP框架.
我们的应用程序主要是选项卡式显示,每个选项卡都绑定到一个视图小部件.
我试图在这种类型的显示中使用"活动和场所"而没有成功.问题的一部分是示例Hello World文章最终让我追逐我的尾巴,太多的新概念让我的大脑消化.
Hello World样本IMO不是一个足够的介绍,并没有处理许多现实世界的用例.我希望有人可以指出我使用MVP进行选项卡式显示的任何示例应用程序的方向.Thomas Broyer在他的博客上有一些优秀的帖子,但这些仍然让我有些困惑.
以前我使用AppController处理标签更改和每个标签的单个演示者.GWT 2.1中的新架构让我更加困惑.
我们计划使用 Big Query 和 Cloud Storage,但对通过 VPN/VPC 进行访问有疑问。
作为 Big Query,GCS 是托管服务,假设不可能将对项目级存储桶和数据集的访问限制为入站到 VPC 的连接,是否正确。
据我们了解,这些服务针对 Google 的全球 API 基础设施进行身份验证,并且根据定义是公开公开的。
是否可以将 Google 托管服务的访问权限限制为入站 VPC 连接并删除我们项目的基于公共/互联网的身份验证和授权?
aaa-security-protocol google-bigquery google-cloud-platform google-cloud-iam
我目前正在阅读两本优秀的书籍"有效地使用遗留代码"和"清洁代码".
他们让我思考我以全新的方式编写和使用代码的方式,但其中一个常见的主题是测试驱动的开发以及在进行更改或实现之前通过测试和测试来扼杀所有内容的想法一个新的功能.
这导致了两个问题:
问题1:如果我正在使用遗留代码.根据书籍,我应该进行测试,以确保我没有破坏任何东西.考虑一下我的方法有500行.我假设我将有一套等效的测试方法来测试该方法.当我拆分此功能时,是否为每个新的方法/类创建新的测试结果?
根据"清洁代码",任何超过1/10秒的测试都需要花费太长时间.试图测试一个500长线遗留方法进入数据库并且上帝知道还有什么可能需要超过1/10秒.虽然我理解你需要打破依赖关系,但我遇到的问题是初始测试创建.
问题2:当代码被重新分解以至于在结构上它不再像原始代码(添加/删除到方法等的新参数)时会发生什么.那么测试还需要重新分解吗?在这种情况下,您可以在允许测试继续通过的同时改变系统的功能吗?在这种情况下,重新分解测试是否适合做?
虽然我可以通过假设继续下去,但我想知道从集体经验中是否有任何关于此类问题的想法/建议.
有没有人有任何如何使用地方而不使用历史管理活动的例子.我快速敲了一下,可以通过浏览器返回和浏览器向前点击看到网址发生变化,但显示屏不会随处可见.
我正在使用的是DecorativeTabPanel并且有一个SelectionHandler来触发getPlaceController().goTo(place).
任何想法都会有用.
我第一次使用 flink(1.6、1.7),并使用来自https://www.gharchive.org/的 github 存档中的数据,但将该数据用作流数据源。
我的简单示例只是计算每日窗口中每个用户的所有事件,我尝试复制相同的示例,但使用 TableEnvironment 和 SQL 支持。
但是,我遇到了以下错误:
org.apache.flink.streaming.api.functions.source.TimestampedFileInputSplit 类不包含字段修改时间的设置器,如下所示:
8-12-04 14:17:02:115 INFO main exploration.StreamingTableApp:32 - Starting Streaming Table Flink App Example...
18-12-04 14:17:02:174 INFO main typeutils.TypeExtractor:1818 - class org.apache.flink.streaming.api.functions.source.TimestampedFileInputSplit does not contain a setter for field modificationTime
18-12-04 14:17:02:176 INFO main typeutils.TypeExtractor:1857 - Class class org.apache.flink.streaming.api.functions.source.TimestampedFileInputSplit cannot be used as a POJO type because not all fields are valid POJO fields, and must be processed as GenericType. Please read the Flink documentation on "Data …
Run Code Online (Sandbox Code Playgroud) 我正在和Grails玩耍,我发现ORM的东西很乏味,因为我不完全理解我在域类方面做的事情.我希望有人能让我回到正轨
考虑以下
测试工作 一:许多 硬件在工作中使用 很多:一个 物理硬件
......这类似于大学数据库示例中的经典Order,OrderLine,Product场景
我创建了以下域类
class Job
{
String jobName
String jobDescription
}
class HardwareOnJob
{
static hasMany = [ jobs:Job, physicalHardware:PhysicalHardware ]
static belongsTo = Job
String role
}
class PhysicalHardware
{
String assetName
String model
String os
}
Run Code Online (Sandbox Code Playgroud)
我需要问的问题是为什么Grails在我的数据库中创建了两个额外的表而不是使用我定义的链接实体/域类.例如,Grails在数据库中创建hardware_on_job_job和hardware_on_job_physical_hardware.
使用脚手架控制器,我可以输入一些硬件,输入一个工作,然后输入两个链接.我的问题是为什么它创建这两个额外的表而不是使用我指定的域对象(HardwareOnJob).
任何帮助/指导都会非常感激,因为我们正在努力寻找新的东西.顺便说一下,我的版本是1.2.1
我正面临一个问题,我花了很多时间试图解决,虽然我有一个解决方案,它很笨重,并且涉及pl/sql处理,我想知道别人可能会想出什么.
我正在使用一个数据集,每次更改记录时都会创建一个新行,从而保留历史记录.然后,在我们的应用程序中显示最新版本.考虑一个包含以下数据的表:
Person ID Last_Name Address_line1 Effective_Start_Date Effective_End_Date 4913 Jones 1 First Street 03-aug-02 31-dec-12 4913 Cross 1 First Street 01-feb-02 02-aug-02 4913 Cross 86 Green Avenue 01-mar-01 31-jan-02 4913 Cross 87 Devonshire Road 01-jan-90 28-feb-02
作为报告的一部分,我需要提取在给定日期集之间发生变化的细节.例如,假设我想提取当前address_line1
和前一个address_line1
以及更改日期(effective_start_date
添加新地址时).需要注意的是,如果其他列数据发生变化,这也将创建一个新行.例如,在上面的示例中,last_name
地址更改后更改.
不幸的是,查询必须是通用的,以便它可以作为报告的一部分运行,即不必明确指定有效的开始和结束日期.
希望一切都有道理.希望你们还和我在一起.因此,根据上面的数据集,我希望在我的报告中看到以下结果:
Person ID Surname Address_line1 Prev_Address_line1 Effective Start date of New Address Line 1 4913 Jones 1 First Street 86 Green Avenue 01-feb-02
我的方法涉及使用pl/sql进行处理并在相当多的记录上循环,但我想知道是否可以在单个sql查询中完成.
有没有人对是否只使用sql可以做到这一点有任何想法?
我们正在使用MVP模式和GWT,我想知道如何以及何时应该使用依赖注入.
我们有App Controller,Presenters,Views和Model代码.通过阅读http://code.google.com/p/google-gin/wiki/GinTutorial#whb上的GIN教程,您似乎应该尽可能在最高级别使用它(因此在App Controller中).
我应该用它来创建我的演示者,所以我可以做injector.getPresenter();
gwt ×3
apache-flink ×1
dns ×1
docker ×1
ejb-3.0 ×1
enums ×1
grails ×1
grails-orm ×1
gwt-gin ×1
gwt-mvp ×1
hibernate ×1
java ×1
many-to-many ×1
mvp ×1
oracle ×1
packetbeat ×1
refactoring ×1
sql ×1
testing ×1
unit-testing ×1