什么是Spring Java中的模板类? 他们为什么称为模板? 例如jdbc-template,jms-template等

我是Java的新手。 我只编程了大约一年。 Spring使用模板意味着什么? 在Spring中,有jdbc-templates,jms-templates等。在java中有什么模板类? 它们是一种特殊的设计模式还是什么?

先谢谢你。

它们被称为模板,因为它使用Template方法模式。

http://en.wikipedia.org/wiki/Template_method_pattern 

基本上,这个想法是定义在抽象类或超类中执行某些操作所需的操作,然后实现使用先前定义的操作的类。

在spring的情况下,允许始终需要为特定目的完成的操作自动完成(打开连接,获取池,翻译,执行,关闭连接),然后用户只需要调用方法而无需担心以前的操作任务。

Spring模板是一种消除正确使用许多API(如JDBC,JMS,事务等)所需的样板代码的方法。Boilerplate代码是设置和error handling代码,需要编写才能正确使用API​​。

例如,在JDBC中,为了执行查询,模板将负责连接的所有设置,准备语句,在查询完成后释放连接,处理exception,所有这些都是非常重要的并且容易出错。

对于模板,您只需要传递要运行的查询,其余部分由模板处理。

以博客文章为例,使用spring JDBC模板时,在普通jdbc中执行查询的80行程序减少到20行。

它们被称为模板,因为它们是模板设计模式的一个示例。

这些类用于简化 function ,允许低级别问题,例如,连接到数据库(所有脏工作都由jdbcTemplate类完成)。

JdbcTemplate简化了JDBC的使用,有助于避免常见错误。 它执行核心JDBC工作流,留下应用程序代码以提供SQL并提取结果。 此类执行SQL查询或更新,启动对ResultSet的迭代并捕获JDBCexception并将它们转换为通用的,信息更丰富的exception层次结构。

您需要实际实现的唯一方法CallBack方法 。 仅实现回调方法可以让代码清理干净。 您唯一关心的是执行您的业务逻辑。

有关Spring Framework – 模板类和接口列表,请参阅以下链接

spring模板