小编Ana*_*and的帖子

在转换的情况下Java编译时错误

下面的代码给出了编译时错误类型不匹配:无法从int转换为byte

int i = 10;
byte b = i;
Run Code Online (Sandbox Code Playgroud)

但下面没有

 final int i = 10;
 byte b = i;
Run Code Online (Sandbox Code Playgroud)

我不明白为什么编译器在最终的情况下表现?

java

8
推荐指数
1
解决办法
610
查看次数

谁决定Java中的数据类型大小

谁决定数据类型的大小,比如Java中的int?JVM或OS或处理器?

int size是4个字节.无论是OS还是处理器,它总是4个字节吗?

java

7
推荐指数
1
解决办法
731
查看次数

为什么Spring AOP不拦截受保护的方法

我很熟悉Spring AOP.正如我在春季文档http://docs.spring.io/spring/docs/3.1.x/spring-framework-reference/html/aop.html中所读到的那样,Spring AOP研究代理的概念.

8.2.3.1支持的切入点指示符部分中,我找到了以下注释

由于Spring的AOP框架基于代理的特性,受保护的方法根据定义不会被拦截,既不用于JDK代理(这不适用),也不用于CGLIB代理(这在技术上可行,但不建议用于AOP).因此,任何给定的切入点都只能与公共方法匹配!

起初,我不相信它,所以我试图在不使用接口的情况下实现它,默认情况下所有方法都是公开的,并且对上述情况感到惊讶.由于代理类是建议/目标对象的子类,受保护的方法可以由子类访问,所以我认为受保护的方法可以正常工作.

有人可以告诉我为什么不拦截受保护的方法?我错过了什么吗?

java proxy spring protected spring-aop

7
推荐指数
1
解决办法
2141
查看次数

Spring Ioc容器如何与Tomcat容器交互

我熟悉Spring Framework并且已经完成了一些工作.

在我的一次访谈中,我被问到"在Apache Tomcat中部署了一个Web应用程序;告诉我"Tomcat容器"(用于servlet)如何与"Spring IoC容器"(用于Spring bean)进行交互?

我无法理解采访者的意思是什么,并且无言以对.有人可以澄清一下这个问题的内容以及它的合理答案是什么?

java spring tomcat ioc-container

7
推荐指数
1
解决办法
2750
查看次数

在休眠中使用提取模式

假设我们在客户和电话之间有一对多的关系.

class Customer{

@OneToMany(cascade = {CascadeType.ALL},mappedBy = "customer", fetch = FetchType.LAZY)
@Fetch( FetchMode.SELECT)
private List<Phone> phoneList;

}
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,fetch = FetchType.LAZY和FetchMode.SELECT之间有什么区别.

我读到它们都是相同的,即它们都懒洋洋地加载了底层集合.

有人可以解释一下我什么时候使用?

hibernate

6
推荐指数
1
解决办法
7535
查看次数

JPA Cascade注释与Hibernate Cascade注释之间的区别

我正在尝试使用Hibernate注释.当我尝试使用Cascading时,我在Eclipse intellisense中得到两个选项:

    javax.persistence.CascadeType and org.hibernate.annotations.CascadeType
Run Code Online (Sandbox Code Playgroud)

在休眠CascadeType中,给出了许多选项,而不是JPA的选项.

一个人有什么优势吗?

java hibernate hibernate-annotations hibernate-cascade

6
推荐指数
1
解决办法
4870
查看次数

什么是PMD的完整形式?

PMD在我的Java项目中使用代码审查.

只是想知道"PMD"的缩写词.我在谷歌搜索但找不到任何东西.有人知道吗?

java pmd

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

等于返回false

可能重复:
从Equals方法返回false而不覆盖

我的一位同事今天问了我一个问题,如下所述

编写TestEquals类(自定义或用户定义的类),以便打印代码中的以下sop false.

public class Puzzle3 {
  public static void main(String[] args) {
    TestEquals testEquals = new TestEquals();
    System.out.println(testEquals.equals(testEquals));
  }
}
Run Code Online (Sandbox Code Playgroud)

注意:您不能覆盖equals方法.

我想了很多,但没有超越平等就找不到解决方案.有人知道如何做到这一点吗?

java

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

用Java打印对象

我运行了以下代码

String str = null;
System.out.println(str);
Run Code Online (Sandbox Code Playgroud)

输出为.

起初,我认为NullPointerException将抛出对象隐式调用toString方法.所以,我对输出感到惊讶.

然后我考虑了输出,并认为上面的String语句实际上没有创建任何对象,只创建了不指向任何对象的引用.这可能是这种输出的原因.

如果我的理解是正确的,有人可以告诉我.

java tostring

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

标有原型范围的Bean在Spring中不起作用

我有两个豆,父母和孩子.子bean我已声明为Protoype范围.
我想新的子对象用于调用Parent类中的任何子方法.例如.在下面的例子中,我希望语句1调用方法sayHi对不同的子对象和语句2调用sayHi1对不同的子对象.

一种方法是在调用任何子方法之前实现ApplicationContextAware并获取新的子对象context.getBean("").但我不想这样做.

还有其他选择吗?

@Component
public class Parent{

    @Autowired
    Child child;

    public void sayHello(){     
        child.sayHi();           -------------- (1)
    }

    public void sayHello1(){    
        child.sayHi1();          --------------- (2)
    }
}

@Component
@Scope(value=BeanDefinition.SCOPE_PROTOTYPE)
public class Child{

    public void sayHi(){
        System.out.println("Hi Spring 3.0");

    }

    public void sayHi1(){
        System.out.println("Hi1 Spring 3.0 ");      
    }

}
Run Code Online (Sandbox Code Playgroud)

java spring scope prototype-scope

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