小编Dan*_*wer的帖子

使用泛型(域模型,而不是持久层)在Java中有多对多的集合吗?

我似乎在Google中使用了错误的搜索字词...

我为多对多关联编写了一个通用类,但我猜这已经完成了.它很可能存在于比我自己更好的实现中.这是我第一次尝试编写泛型类.

为了更好地了解我正在寻找的东西,我收录了一些我自己的片段:

我用2个哈希映射支持它:

private final Map<T, List<S>> ssForTs = new HashMap<T, List<S>>();
private final Map<S, List<T>> tsForSs = new HashMap<S, List<T>>();
Run Code Online (Sandbox Code Playgroud)

这是实例化:

new ManyToManyAssociations<Integer, Integer>();
Run Code Online (Sandbox Code Playgroud)

一些可用的方法:

  • public void addAssociation(T t,S s)
  • public void removeAssociation(T t,S s)
  • public List <T> getListOfTs()
  • public List <S> getListOfSs()
  • 公开列表<T> getTsForSs(S s)
  • 公共列表<S> getSsForTs(T t)

这些方法的名字很差......我道歉.

基本用法是:我可以很容易地找到所有S for T和反向.

您是否可以将链接发布到已包含此功能的抛光库中?

java generics data-structures

18
推荐指数
1
解决办法
2775
查看次数

在混合代码项目中有没有理由在groovyc上使用javac?

在maven或gradle中设置一个混合java7/groovy2项目时,是否有任何理由首先使用javac编译然后groovyc而不仅仅让groovyc处理它?

我开始分别在他们自己的树中编译它们(src/main/java和src/main/groovy),这是最佳实践建议.但是,由于java和groovy用于解决相同的问题并且混合在一起,我现在倾向于将所有源转储到src/main/groovy并让groovy编译器同时处理.java和.groovy文件.在查看源代码树时,这似乎使项目更容易理解.有什么缺点吗?

java groovy gradle maven

5
推荐指数
1
解决办法
613
查看次数

在git中禁用-m

我正在努力训练自己写出更好的提交信息,所以我在我的网站上创建了一个条目 ~/.gitconfig

[commit]
    template = ~/.gitmessage.txt
Run Code Online (Sandbox Code Playgroud)

难题是我几乎总是使用:

git commit -m "Message here"
Run Code Online (Sandbox Code Playgroud)

而有时:

git commit -am "Message here"
Run Code Online (Sandbox Code Playgroud)

如何防止自己使用-m标志,以便我的模板出现,我将被提醒使用它?

我不需要在项目中绝对强制执行此操作,但我想让自己脱离"-m".

Ubuntu/Bash是我的环境.

git bash

5
推荐指数
1
解决办法
328
查看次数

标签 统计

java ×2

bash ×1

data-structures ×1

generics ×1

git ×1

gradle ×1

groovy ×1

maven ×1