小编Sco*_*ion的帖子

如何让lombok注释适用于getter和setter

我正在尝试使用lombok getter和setter注释.据我所知,带注释的代码是在运行时生成的而不是编译时间,那么如何利用自动生成的getter和setter来编写代码呢?

例如,我有一个这样的类

@lombok.Getters
@lombok.Setters
public class MyLombokTesting {

private String userName;

}
Run Code Online (Sandbox Code Playgroud)

但是如果在编写代码时没有生成这些注释会有什么用?

现在我想做这样的事情

MyLombokTesting myLombokTesting = new MyLombokTesting();
String username = myLombokTesting.getUserName();
or myLombokTesting.setUserName("some username");
Run Code Online (Sandbox Code Playgroud)

但我不能做任何这些,因为在编写代码时没有为eclipse生成的setter和getter.

显然我可以有一个参数构造函数来设置用户名但是getter呢?

java eclipse lombok

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

使用Java 8 Optional for String of List作为输出

我想对返回List的方法使用Optional

让我们说功能是

public Output getListOfSomething() {
    // In some cases there is nothing to return and hence it makes sense to have return 
    // type as Optional here
}
Run Code Online (Sandbox Code Playgroud)

因此该函数看起来像:

public Optional<List<String>> getListOfSomething() {
    // return something only when there is some valid list
}
Run Code Online (Sandbox Code Playgroud)

现在我想要做一些事情,如果列表存在,如下所示:

Optional<List<String>> listOfSomething = getListOfSomething();

int size = 0;

listOfSomething.ifPresent(size = listOfSomething.get().size());
Run Code Online (Sandbox Code Playgroud)

我是Optional的新手,已经阅读了有关Optional的文章,看起来这应该可行但是我的IDE中出现语法错误:

方法ifPresent不适用于参数(void).

我想从开发人员那里获得一些帮助,他们可能会更熟练地使用java 8中的lamdas.

java lambda optional java-8

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

Athena date_parse 用于带有可选毫秒字段的日期

我在 S3 中有日期,我使用它创建了一个 Athena 表。我在 S3 中有一些 json 格式的日期条目,Athena 在运行查询时不接受这些条目作为日期或时间戳。

使用使用 Prestodb 作为查询引擎的 AWS Athena

示例 json :

    {"creationdate":"2018-09-12T15:49:07.269Z", "otherfield":"value1"}
    {"creationdate":"2018-09-12T15:49:07Z", "otherfield":"value2"}

AWS Glue 将这两个字段都作为字符串,当我将它们分别更改为时间戳和日期时,时间戳周围的查询不起作用,在时间戳字段上给出 ValidationError。

无论如何,我找到了一种使用 prestodb date_parse 函数的方法,但它也不起作用,因为某些字段有毫秒而其他字段没有。

    parse_datetime(creationdate, '%Y-%m-%dT%H:%i:%s.%fZ')
    parse_datetime(creationdate, '%Y-%m-%dT%H:%i:%sZ')

两者都失败,因为存在不同的条目,即一个有毫秒 %f 和一个没有 有没有办法提供解析器,正则表达式,以便能够在 sql 查询执行期间将这些字符串转换为日期?

sql presto amazon-athena

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

标签 统计

java ×2

amazon-athena ×1

eclipse ×1

java-8 ×1

lambda ×1

lombok ×1

optional ×1

presto ×1

sql ×1