小编dea*_*au5的帖子

在构造函数中尝试/捕获 - 推荐的做法?

我一直很好奇的东西

public class FileDataValidator {

private String[] lineData;

public FileDataValidator(String[] lineData){

    this.lineData = lineData;
    removeLeadingAndTrailingQuotes();

    try
    {
        validateName();
        validateAge();
        validateTown();
    }
    catch(InvalidFormatException e)
    {
        e.printStackTrace();
    }

}

//validation methods below all throwing InvalidFormatException
Run Code Online (Sandbox Code Playgroud)

是不建议在我的构造函数中包含try/catch块?我知道我可以让Constructor将Exception抛回给调用者.你们在调用像我在构造函数中所做的方法时更喜欢什么?在调用类中,您更喜欢创建FileDataValidator的实例并在该实例上调用那里的方法吗?只是有兴趣听一些反馈!

java oop ooad exception try-catch

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

Sybase日期比较 - 格式正确吗?

我是Sybase的新手,我正在编写一个查询,以便在指定日期之后以及指定日期之前返回结果.MM/DD/YYYY格式

目前我正在做..

SELECT * 
    From aTable
      WHERE afterDate >= 08/07/2013
        AND beforeDate <= 08/08/2013
Run Code Online (Sandbox Code Playgroud)

我正在收回记录,但由于我是Sybase的新手,我想确保Sybase正确地解释这些日期.

他们的在线文档对于这类事情的基本解释非常糟糕!任何人都可以确认我的工作是否有效,或者是否需要在日期之前进行一些格式化?

sql database sybase mybatis

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

SQL - 使用Max创建的时间戳值返回数据的不同行

在我的程序中,我审计传入的数据,可以是4种类型.如果数据满足所有必需条件,则会在表列中成功存储,以及将行输入表中的消息类型和时间戳.

由于诸如审计之类的连接问题等问题,数据也可能被错误地写入表中.程序将重试审核此数据,如果成功将写入新行,则成功.因此,您看到我现在有2行用于该特定数据消息,一行成功,一行有错误,两者都有不同的时间戳.(成功具有最新时间戳而不是错误记录.)

第三条消息被拒绝,并且如果传入的数据不符合要求的标准,则会写入记录,同样使用创建时间戳.

我想做的是编写一个Sybase SQL查询,仅回退每个收到的消息的记录,具有最高的时间戳.

因此,使用上面的错误示例,我不想返回错误记录,只有相应的成功记录从进程重试时才成功.

我想到了类似下面的东西......

SELECT distinct(*) 
    FROM auditingTable
        WHERE timestamp = (SELECT MAX(timestamp) from auditingTable)
Run Code Online (Sandbox Code Playgroud)

虽然我知道这只会带回1条记录,整个表格中的时间戳最高.

我怎样才能收到收到的每封邮件的最新记录,无论其状态如何?

欢迎任何想法!

sql database sybase

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

Java Regex - 不是空字符串,只有数字,8个字符长

我正在尝试构建一个正则表达式,基本上只允许数字,长度为8个字符,不能为空,即""或有8个空格

我已经能够获得两个独立的正则表达式,几乎可以完成我所追求的: ^(?!\ s*$).+不允许空字符串,但允许空格.另外:^ [0-9] + $让我只搜索数字.

我想结合这些正则表达式,并在一个子句中匹配8个字符长的字符串.

关于如何将迄今为止的内容结合起来的任何建议?

java regex

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

Java Regex - 字母数字,允许前导空格而不是空白字符串

我一直在尝试制作一个只允许使用字母数字字符的java正则表达式,它可以有空格,但整个字符串不能为空...

几个例子..

" hello world123" //fine
"hello123world" //fine
"hello123world " //fine
"    " //not allowed
Run Code Online (Sandbox Code Playgroud)

到目前为止,我已经得到 ^ [a-zA-Z0-9] [a-zA-Z0-9\s]*$ 虽然这不允许任何前导空格,因此任何带有x前导空格的字符串都不匹配.

我可以添加到表达式的任何想法,以允许领先的空白?

java regex string

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

AWS S3 putObject 回调未触发

我有一个 lambda 函数试图将 mp3 文件放入 S3 存储桶中,但是我没有看到我的文件上传,更奇怪的是没有看到来自回调的任何日志记录/响应。

我的 lambda/s3 存储桶都在同一个 AWS 账户上,存储桶名称绝对正确。

有什么我在这里想念的吗?或者任何解释为什么我的回调没有被触发?

exports.handler = async (event, context, callback) => {

    // prior setup

    console.log('about to putObject on s3');

    const s3BucketData = {
        Bucket: 'media-files',
        Key: fileName,
        Body: fileDataBuffer,
        ContentType: 'audio/mp3'
    };

    await s3.putObject(s3BucketData, (err, data) => {
        console.log('putObject callback executing');
        if (err) {
            console.log('err occurred storing to s3: ', err)
        } else{
            console.log(`${fileName} succuessfully uploaded`);
        }
        context.done();
    });
};
Run Code Online (Sandbox Code Playgroud)

amazon-s3 amazon-web-services node.js aws-lambda

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

在Python中打开.out文件

我是否认为Python无法打开并从.out文件中读取?

我的应用程序当前吐出了一堆.out文件,可以手动读取以进行日志记录,我正在构建一个Python脚本来自动执行此操作.

当脚本到达以下内容时

for file in os.listdir(DIR_NAME):
    if (file.endswith('.out')):
        open(file)
Run Code Online (Sandbox Code Playgroud)

该脚本出现以下错误"IOError:没有这样的文件或目录:'Filename.out'"

我与上面的代码有类似的功能,工作正常,只读取.err文件.在上述代码之前打印出DIR_NAME也显示正在指向正确的目录.

python ioerror

0
推荐指数
1
解决办法
2299
查看次数