摘要: 在Java反射机制中,需要掌握的知识有: (1)掌握反射机制的概述。 (2)能够使用Class类并结合java.lang.reflect包取得一个类的完整结构。 (3)能够使用反射机制实例化对象、动态地调用类中的指定方法和设置属性值。反射机制的概述 运行时类型信息(RTTI)使得可以在程序运行时发现和使用类型信息。在Java中的RTTI形式包括三种:(1)传统的类型转换。由RTTI确保类型转换的正确性,如果执行了一个错误的类型转换,就会抛出一个ClassCastException异常。 (2)使用关键字instanceof。它返回布尔值,告诉我们一个对象是不是某个特定类型的实例。 ... 阅读全文
posted @ 2014-02-25 22:32 不及格的飞鱼 阅读(267) 评论(0) 推荐(0)
摘要: 在Spring中,不但可以通过JNDI获取应用服务器的数据源,也可以直接在Spring容器中配置数据源,此外,还可以通过代码的方式创建一个数据源,以便进行无依赖的单元测试。配置数据源 Spring在第三方依赖包中包含了两个数据源的实现类包:其一是Apache的DBCP;其二是C3P0。可以在Spring配置文件中利用这两者中的任何一个配置数据源。DBCP数据源DBCP类包位于commons-dbcp.jar,DBCP一个依赖对象池机制的数据库连接池,所以在类路径下还必须包括commons-pool.jar。在该数据源中BasicDataSources提供了close方法关闭数据源,所以必... 阅读全文
posted @ 2014-02-25 22:30 不及格的飞鱼 阅读(413) 评论(0) 推荐(0)
摘要: 在Spring事务管理中通过TransactionProxyFactoryBean配置事务信息,此类通过3个重要接口完成事务的配置及相关操作,分别是PlatformTransactionManager、TransactionDefinition和TransactionStatus。其中TransactionDefinition用于描述事务的隔离级别、超时时间、是否为只读事务和事务传播规则等控制事务具体行为的事务属性,这些属性可以通过XML配置或注解描述提供,也可以通过手工编程的方式设置。PlatformTransactionManager根据TransactionDefinition提供的.. 阅读全文
posted @ 2014-02-25 22:29 不及格的飞鱼 阅读(700) 评论(0) 推荐(0)
摘要: 悲观锁如select * for update 悲观锁大多数情况下依靠数据库的锁机制实现,以保证操作最大程度的独占性。但随之而来的就是数据库性能的大量开销,特别是对长事务而言,这样的开销往往无法承受。乐观锁 基于数据版本(version)机制实现:为数据增加一个版本标识,在基于数据库表的版本解决方案中,一般是通过为数据库表增加一个 “version” 字段来实现。读取出数据时,将此版本号一同读出,之后更新时,对此版本号加一。此时,将提交数据的版本数据与数据库表对应记录的当前版本信息进行比对,如果提交的数据版本号大于数据库表当前版本号,则予以更新,否则认为是过期数据。在设计乐观锁时,只针对系.. 阅读全文
posted @ 2014-02-25 22:27 不及格的飞鱼 阅读(657) 评论(0) 推荐(0)
摘要: Quartz基础结构 Quartz对任务调度的领域问题进行了高度抽象,提出了调度器(Scheduler)、任务(Job)和触发器(Trigger)这3个核心概念,并在Trigger触发机制的基础上使用org.quartz.Calendar进行定点(如假期)排除。 定义任务调度需要以下几个步骤:定义JobDetail实例对象,该对象需要指定名称、组和Job接口的Class信息。定义Trigger实例对象,通过该对象设置触发任务的相关信息,如起始时间、重复次数等。定义Schedule实例对象,通过ScheduleFactory工厂接口的实现类实例该对象。向Schedule中注册JobDetail. 阅读全文
posted @ 2014-02-25 22:25 不及格的飞鱼 阅读(4072) 评论(0) 推荐(0)
摘要: BOSS代码走查内容表命名正确包命名正确:Package 的名字应该都是由小写单词组成。例如:package com.neu.util类命名正确Class 名称使用帕斯卡命名法命名:名称由具有含义的单词组成,并代表了其意义,且单词首字母大写例如:public class ThisAClassName{ //CODE}抽象类以Abstract开头例如:AbstractThisAClassName变量、方法、方法参数命名正确使用骆驼命名法命名,即名称由有具体含义的单词组成,并代表了其作用,第一个单词之外,其他单词首字母大写例如:public void setProductName(String p 阅读全文
posted @ 2014-02-25 22:18 不及格的飞鱼 阅读(4030) 评论(0) 推荐(0)
摘要: 核心提示:Session需要使用 java.util.Properties来构造,常用的用来构造Session的属性: mail.smtp.user SMTP的缺省用户名。 mail.smtp.host 要连接的SMTP服务器。 mail.smtp.port 要连接的SMTP服务器的端口号,如果connect没有指明端口号就使用它,缺省值25。 mail.smSession需要使用java.util.Properties来构造,常用的用来构造Session的属性:mail.smtp.userSMTP的缺省用户名。mail.smtp.host要连接的SMTP服务器。mail.smtp.port要 阅读全文
posted @ 2014-02-25 22:09 不及格的飞鱼 阅读(957) 评论(0) 推荐(0)
摘要: public class Test {public static void main(String[] args) { SimpleCalculator s=new SimpleCalculator();String methord="80*(1+0.5)"; //test double d=s.evaluate(methord); System.out.println(d);}}import java.util.Scanner;import java.util.Stack;public class SimpleCalculator {/** * Evaluate an a 阅读全文
posted @ 2014-02-25 22:08 不及格的飞鱼 阅读(1469) 评论(0) 推荐(0)