小编Cod*_*roc的帖子

如何使用泛型参数覆盖EJB 3会话bean方法 - 如果可能的话?

假设您有以下EJB 3接口/类:

public interface Repository<E>
{
   public void delete(E entity);
}

public abstract class AbstractRepository<E>  implements Repository<E>
{
   public void delete(E entity){
      //...
   }
}

public interface FooRepository<Foo>
{
   //other methods
}

@Local(FooRepository.class)
@Stateless
public class FooRepositoryImpl extends
    AbstractRepository<Foo> implements FooRepository
{
   @Override
   public void delete(Foo entity){
      //do something before deleting the entity
      super.delete(entity);
   }
   //other methods
}
Run Code Online (Sandbox Code Playgroud)

然后另一个访问FooRepositorybean的bean:

//...
@EJB
private FooRepository fooRepository;

public void someMethod(Foo foo)
{
    fooRepository.delete(foo);
}
//...
Run Code Online (Sandbox Code Playgroud)

但是,当FooRepository调用bean 的delete方法时,永远不会执行重写方法.相反,只执行定义的delete方法的实现AbstractRepository. …

java generics inheritance java-ee ejb-3.0

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

在接口中使用嵌套类很有用的地方?

在哪种情况下接口可以嵌套类?

以下代码是允许且有效的.

public interface Iface {

    void show();

    class ifaceClass {
        int x;

        public ifaceClass() {
            System.out.println(x);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我也在努力创建类ifaceClass的对象.

编辑:

我能够制作这样的物体

public class Test implements Iface {    

    public static void main(String[] args){
        ifaceClass  ifaceClassObj = new ifaceClass();
    }

    public void show() {    

    }
}
Run Code Online (Sandbox Code Playgroud)

我注意到如果Test没有实现Iface那么我需要在导入之后,

import com.jls.Iface.ifaceClass;
Run Code Online (Sandbox Code Playgroud)

但它归结为同样的问题,为什么不把它用作另一个类.

这种方法的差异或增值是什么?

java interface nested-class

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

Eclipse - 如何删除包

我刚刚开始参加分布式系统课程,我的老师在我们课程的网站上说了以下内容:

请不要使用包!如果您的 Eclipse 配置默认使用它们,请在编写代码之前删除它们!

她到底在说什么?我认为 Eclipse 需要为项目源文件创建包以保持组织有序。我该如何删除它们?

java eclipse

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

java for wait()方法的异常

public class Bees {
    public static void main(String[] args) {
        try {
            new Bees().go();
        } catch (Exception e) {
            System.out.println("thrown to main" + e);
        }
    }

    synchronized void go() throws InterruptedException {
        Thread t1 = new Thread();
        t1.start();
        System.out.print("1 ");
        t1.wait(5000);
        System.out.print("2 ");
    }
}
Run Code Online (Sandbox Code Playgroud)

本程序的输出是:

1 thrown to main
Run Code Online (Sandbox Code Playgroud)

我不知道为什么这会thrown to main来到这里.

java

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

Lambda表达式将对象从一个列表添加到另一个列表类型

有一个List<MyObject>和它的对象需要创建将添加到具有不同元素的另一个List的对象:List<OtherObject>.

这就是我的表现,

List<MyObject> myList = returnsList();
List<OtherObj> emptyList = new ArrayList();

for(MyObject obj: myList) {   
    OtherObj oo = new OtherObj();
    oo.setUserName(obj.getName());
    oo.setUserAge(obj.getMaxAge());   
    emptyList.add(oo);  
}
Run Code Online (Sandbox Code Playgroud)

我正在寻找一个lamdba完全相同的表达方式.

java collections lambda java-8

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

eclipse中.class,.jar和.java(类)文件之间的功能差异?

.class文件,.jar文件和.java文件之间的功能差异是什么?该文件在eclipse中定义了类结构,何时适合使用每种文件类型?

java jar class

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

如何获取电子邮件所有附件的文件名?

我正在尝试使用java和imap获取电子邮件的所有附件的文件名。我的代码是:

MimeMessage msg = (MimeMessage) messages[i];
String fileName = msg.getFileName();
System.out.println("The file name of this attachment is " + fileName);
Run Code Online (Sandbox Code Playgroud)

但是即使电子邮件包含附件,它也始终打印为null。。我在SO上看到了不同的代码,但是没有用……但是我不知道附件多于一个怎么办。
PS:我只想获取文件名,而不想下载附件。

java imap attachment

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

Java用另一个分隔符替换特定定位的分隔符

鉴于这一行:

String name="Summer,John,Alex,Stu,Mike,will,King,yahoo,Google,jeff";
Run Code Online (Sandbox Code Playgroud)

我想||在每第4次逗号后用符号替换逗号.

预期产量:

Summer,John,Alex,Stu||Mike,will,King,yahoo||Google,jeff
Run Code Online (Sandbox Code Playgroud)

我已经完成了这个awk命令

awk -F, '{
     for (i=1; i<NF; i++) 
       printf "%s%s", $i, (i%4?FS:"||"); 
       print $i
}'
Run Code Online (Sandbox Code Playgroud)

我无法将此命令转换为java正则表达式.

java regex string

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

如果有多个&&,|| 条件评估java

if(a && b || c || d || e)
Run Code Online (Sandbox Code Playgroud)

是否检查(a && b),如果ab必须始终为真,那么只允许在里面?要么

((a && b) || a && c || a && d || a && e)),任何条件都是真的会允许内部吗?

java if-statement

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

从包含它的类中获取enum.values()

class Clazz{
    public enum MyEnum{
        Hello, World
    }
}
Run Code Online (Sandbox Code Playgroud)

上课时Clazz,我该怎么办MyEnum.values()

用法的一个例子是:

Class unknownClass = getSomeClass();
Run Code Online (Sandbox Code Playgroud)

如何获得MyEnum.values()unknownClass

java reflection enums

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