我已经读过可以Singleton
使用以下方法在Java中实现Enum
:
public enum MySingleton {
INSTANCE;
}
Run Code Online (Sandbox Code Playgroud)
但是,上面的工作如何?具体而言,Object
必须实例化.在这里,如何MySingleton
被实例化?谁在做什么new MySingleton()
?
请考虑以下代码:
HashSet hs = new HashSet();
hs.add("hi"); -- (1)
hs.add("hi"); -- (2)
Run Code Online (Sandbox Code Playgroud)
hs.size()
将给出1,因为HashSet
不允许重复,因此只存储一个元素.
我想知道我们是否添加了重复元素,然后它是否替换了前一个元素,或者它只是不添加它?
此外,HashMap
在同一案件中使用会发生什么?
我试图通过测试一些CRUD操作来学习弹簧数据JPA JpaRepository
.
我碰到两个方法save
和saveAndFlush
.我没有区分这两者.在调用时save
我的更改也被保存到数据库中,因此有什么用处saveAndFlush
.
我正在阅读Java中的多线程,我遇到了这个问题
局部变量在Java中是线程安全的.
从那时起,我一直在思考如何/为什么局部变量是线程安全的.
有人可以让我知道.
我注意到JAR,WAR和EAR MANIFEST.MF
文件在该META-INF
文件夹下有一个文件.
该MANIFEST.MF
文件的用途是什么?可以在此文件中指定所有内容?
在Springs最新版本中,我们可以使用注释自动装配bean @Autowired
.这将使用其类型(或构造函数,如果应用于它)自动装配bean.有没有什么方法可以使用@Autowired
基于我们在Spring的XML文件中没有注释的bean名称的注释作为autowire ="byName"?
ABC.java中定义了两种方法
public void method1(){
.........
method2();
...........
}
public void method2(){
...............
...............
}
Run Code Online (Sandbox Code Playgroud)
我想有AOP上的呼叫方法2.所以,我创建了一个类,AOPLogger.java,具有在方法提供方面功能的checkAccess
在配置文件中,我不喜欢的东西下面
<bean id="advice" class="p.AOPLogger" />
<aop:config>
<aop:pointcut id="abc" expression="execution(*p.ABC.method2(..))" />
<aop:aspect id="service" ref="advice">
<aop:before pointcut-ref="abc" method="checkAccess" />
</aop:aspect>
</aop:config>
Run Code Online (Sandbox Code Playgroud)
但是当调用我的method2时,不会调用AOP功能,即不会调用checkAccess方法的AOPLogger类.
我错过了什么?
问题:
1)@Component
与@Configuration
?之间的区别?
我已经读过,两者都删除了将代码放入XML中的必要性,但没有区分它们.
2)之间有什么区别@Autowired
,@Inject
和@Resource
?
- 什么时候使用?
- 每个的优点/缺点是什么?
我正在阅读Joshua Bloch的有效java和第8项:当覆盖等于时遵守一般合同,这个陈述是写的
对于float字段,使用Float.compare方法; 对于双字段,请使用Double.compare.浮法和双场的特殊处理是由Float.NaN,-0.0f和类似的双常数的存在所必需的;
有人可以解释我为什么我们不能==
用于浮动或双重比较
java ×9
spring ×4
autowired ×1
double ×1
duplicates ×1
enums ×1
equals ×1
final ×1
hashmap ×1
hashset ×1
hibernate ×1
immutability ×1
jpa ×1
manifest.mf ×1
singleton ×1
spring-aop ×1