java中几个易混淆概念和常见错误

还是像往常一样,收集了我遇到的几个错误和几个易混淆的概念,以及我对这几个错误成功的解决方案,希望能对大家有所帮助。

JUnit报错jdt.internal.junit.runner.RemoteTestRunner.loadClass

具体的解决方案参照博客园的一篇博客进行解决,文章已经解释得非常好了,我就不再过多的解读了。
网址:http://www.cnblogs.com/xing901022/p/4135954.html

Redis连接集群NoClassDefFoundError: org/apache/commons/pool2/PooledObjectFactory

这个错误是因为我们引入的jar包中缺少了commons-pools的jar包,在lib中引入jar包就好了。

推荐一个学习Git的网站

廖雪峰的博客,里面关于Git有非常详细的教程,对于初学者来说非常有帮助。[廖雪峰的Git教程]http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001374831943254ee90db11b13d4ba9a73b9047f4fb968d000()

Spring中的事务和@Transactional的理解

@Transactional是Spring中提供的一个事务性的标记声明
有时候可能会忘记加入@Transactional注解,带来的结果就是修改的数据无法commit进行持久化。
事务的概念:
事务(Transaction)是并发控制的单位,是用户定义的一个操作序列。这些操作要么都做,要么都不做,是一个不可分割的工作单位。通过事务,SQL Server能将逻辑相关的一组操作绑定在一起,以便服务器保持数据的完整性。

对于持久化的理解

持久化的定义

何谓“持久化”持久(Persistence),即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。持久化的主要应用是将内存中的数据存储在关系型的数据库中,当然也可以存储在磁盘文件中、XML数据文件中等等。持久化顾名思义就是把缓存中的东西放到数据库中使之持久
   对于需要持久化的对象,它的生命周期分为三个状态:临时状态,持久化状态,游离状态.
   临时状态(Transient):刚刚用new语句创建,没有被持久化,不处于session的缓存中.处于临时状态的java对象被称为临时对象.
   持久化状态(Persistent):已经被持久化,加入到session的缓存中.处于持久化的java对象被称为持久化对象.
   游离状态(Detached):已经被持久化,但不处于session的缓存中,处于游离状态的java对象被成为游离对象.

持久化对象的特征:

  • 位于一个session事例的缓存中,可以说持久化对象总是被一个session事例关联
  • 持久化对象和数据库中的相关记录对应
  • Session在清理缓存时,会根据持久化对象的属性变化来同步更新数据库
  • Session的save()方法把临时状态变为持久化状态.
  • Session的update() ,saveOrUpdate()和lock()方法使游离状态变为持久化状态.

Collection集合和List集合的区别

Collection是无序的,比如一大群人在广场上,你不可能说某某人是第一个,某某人是第二个
List是有序的,比如一群人从高到矮排了队,你就能说这人是第一个,这人是最后一个
因此Collection是没有index索引,没有InsertAt等方法的。

你可能感兴趣的:(java中几个易混淆概念和常见错误)