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

Hor*_*ice 14 java spring jdbctemplate jmstemplate

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

先感谢您.

Ang*_*ity 6

Spring模板是消除正确使用许多API(例如JDBC,JMS,事务等)所需的样板代码的方法。样板代码是设置和错误处理代码,需要编写这些代码才能正确使用API​​。

例如,在JDBC中,执行查询时,模板将处理连接的所有设置,准备语句,在查询完成后释放连接,处理所有异常的异常且容易出错的异常。

您只需将要运行的查询传递给模板,其余的由模板负责。

以本博文中的示例为例,使用spring JDBC模板时,在纯jdbc中执行查询的80行程序减少为20行。

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


Koi*_*oer 6

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

http://en.wikipedia.org/wiki/Template_method_pattern
Run Code Online (Sandbox Code Playgroud)

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

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