我gradle使用终端安装在MAC上.
brew install gradle
Gradle已成功安装.
gradle -v
------------------------------------------------------------
Gradle 3.3
------------------------------------------------------------
Build time: 2017-01-03 15:31:04 UTC
Revision: 075893a3d0798c0c1f322899b41ceca82e4e134b
Groovy: 2.4.7
Ant: Apache Ant(TM) version 1.9.6 compiled on June 29 2015
JVM: 1.8.0_112 (Oracle Corporation 25.112-b16)
OS: Mac OS X 10.12.3 x86_64
Run Code Online (Sandbox Code Playgroud)
但我找不到gradle home.
echo $GRADLE_HOME
[empty result]
Run Code Online (Sandbox Code Playgroud)
确定主目录的第一步是检测gradle指令的位置:
which gradle
/usr/local/bin/gradle
Run Code Online (Sandbox Code Playgroud)
有一个难以理解的bash文件.
有关如何通过终端检测gradle主目录的任何想法?
在控制器级别的 Nest.js 应用程序中,我必须验证 DTO。
我很难检查项目是否不为空(如果任何列表项目为null或,则请求应被拒绝undefined)
下面的代码演示了我配置的验证。
import { ArrayMinSize, IsArray } from 'class-validator'
export class ReminderPayload {
// ...
@IsArray()
@ArrayMinSize(1)
recipients: string[]
}
Run Code Online (Sandbox Code Playgroud)
{
"recipients": [
null
]
}
Run Code Online (Sandbox Code Playgroud)
string唯一(如果对象位于数组项位置,则应拒绝处理)?'class-validator'注入成功,它为我的 API 生成了一些验证结果。
我有自己的豆子:
@Bean
public MyBean myBean(){...
Run Code Online (Sandbox Code Playgroud)
按照spring文档发布自己应该指定的资源destroyMethod.如果destroyMethod没有直接指定,我没有找到弹簧调用的任何默认destroy方法.
我用了
@Bean(destroyMethod = "close")
public MyBean myBean(){...
Run Code Online (Sandbox Code Playgroud)
但是如果它默认具有值,可以考虑不直接指定destroy方法.
默认情况下,像春天在什么试一下destroy,close,release?如果spring默认尝试一些方法来释放资源 - 哪些?
我在我的spring存储库界面中实现了:
@Query("SELECT max(ch.id) FROM MyEntity ch")
Long getMaxId();
Run Code Online (Sandbox Code Playgroud)
如果db不为空,它可以正常工作.如果我使用测试配置启动我的环境(使用H2DB) - 一开始就没有数据.返回的结果getMaxId()为null.我想在这里0.
是否有可能修改我*JpaRepository有0的结果?如果是,应该如何修改?
示例中使用的对象来自包 org.jsoup.nodes
import org.jsoup.nodes.Attribute;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
Run Code Online (Sandbox Code Playgroud)
我需要按键的组属性和结果值Set.
Optional<Element> buttonOpt = ...;
Map<String, Set<String>> stringStringMap =
buttonOpt.map(button -> button.attributes().asList().stream()
.collect(groupingBy(Attribute::getKey,
mapping(attribute -> attribute.getValue(), toSet()))))
.orElse(new HashMap<>());
Run Code Online (Sandbox Code Playgroud)
它似乎正确收集,但值始终是单个字符串(因为库实现)包含按空格分割的不同值.试图改善解决方案:
Map<String, Set<HashSet<String>>> stringSetMap = buttonOpt.map(
button -> button.attributes()
.asList()
.stream()
.collect(groupingBy(Attribute::getKey,
mapping(attribute ->
new HashSet<String>(Arrays.asList(attribute.getValue()
.split(" "))),
toSet()))))
.orElse(new HashMap<>());
Run Code Online (Sandbox Code Playgroud)
结果我有不同的结构,Map<String, Set<HashSet<String>>>但我需要Map<String, Set<String>>
我已经检查了一些收藏家,但没有解决我的问题.
如何合并与相同属性键相关的所有集合?
我们使用的是JUnit 4,但我们在测试分组方面遇到了一些问题.对于集成测试,我们遇到了运行顺序的问题.我们已于2016年2月迁移到TestNG.
现在我们正在为我们的项目启动一个新的独立模块,我们的部分团队成员想要JUnit 5.我相信它比第4更好(有一些新的重要功能,但我也看到了一些问题).
我不想使用JUnit 5,因为担心我们的新应用程序可能出现问题,因为我有第4次经验.但我必须对团队更加灵活,因此在做出决定之前,我需要具有JUnit 5经验的用户的建议.
我已经实现了以下示例:
Map<String, List<Event>> map = events.getItems().stream()
.collect(Collectors.groupingBy(Event::getStatus, Collectors.toList()));
Run Code Online (Sandbox Code Playgroud)
我怎样才能获得输出Map<String, List<EventDto>> map?
一个EventDto可以通过执行其中转换外部方法获得Event到EventDto.例如 - this::convertFromEventToEventDto.
我有一个凹槽代码(带有一些java样式元素)
dates.forEach new Consumer<Period>() {
@Override
void accept(Period period) {
println period
}
}
Run Code Online (Sandbox Code Playgroud)
有可能做得更简单吗?
我想有类似的东西
dates.forEach println
Run Code Online (Sandbox Code Playgroud)
要么
dates.forEach println date
Run Code Online (Sandbox Code Playgroud) 代码之间有什么区别?
@LazyCollection(LazyCollectionOption.FALSE)
@OneToMany(mappedBy = "siteesTypeSite", cascade = CascadeType.ALL,fetch = FetchType.LAZY)
public Set<Sites> getSitees() {
return sitees;
}
Run Code Online (Sandbox Code Playgroud)
和
@OneToMany(mappedBy = "siteesTypeSite", cascade = CascadeType.ALL,fetch = FetchType.EAGER)
public Set<Sites> getSitees() {
return sitees;
}
Run Code Online (Sandbox Code Playgroud)
至于我,他们都得到了相似的结果,但第二种情况更干净。如果我记错了请纠正我。
在我的实体中我有字段:
@UpdateTimestamp
@Column
private java.util.Calendar modifiedDate;
@CreationTimestamp
@Column
private java.util.Calendar createdDate;
Run Code Online (Sandbox Code Playgroud)
这些字段由hibernate更改.我看到结果保存到DB.在没有时间的DB保存数据中,我如何解释休眠日历应该用当前日期时间保存?
PS我看到了方法注释的解决方法,@PreUpdate @PrePersist我觉得我不需要.
java ×8
java-8 ×3
hibernate ×2
java-stream ×2
lambda ×2
spring ×2
bash ×1
collectors ×1
comparison ×1
gradle ×1
groovy ×1
hql ×1
jpa ×1
junit ×1
junit5 ×1
macos ×1
nestjs ×1
orm ×1
release ×1
request ×1
testng ×1
typescript ×1
validation ×1