发布一篇Spring进修点滴,《Spring in Action》条记(二)
认真的记,感觉很紧张根本就没有时间和能力,来对技术知识点进行思考。这样课下就只能对知识进行简单的理解,其实简单的理解就是记忆课堂上讲的知识点,第四章.制服数据库
--------------------------------------------------------------------------------
31.Spring把数据会见流程中的流动部分和可变部分分隔,分离映照成两一模一样的类,模板(Template)和回调(Callback),模板管事物把持、资本办理和非常处置;回调完成特定于使用的部分--创立statement、绑定参数、和收拾了局集。模板办法形式的优异使用(P123)
32.JdbcTemplatetemplate=newJdbcTemplate(myDataSource);机关。一切SpringDao模板类是线程平安的,能够为每个DAO设置一个JdbcTemplate属性,也能够让DAO类承继JdbcDaoSupport,然后在DAO类顶用getJdbcTemplate()猎取到JdbcTemplate举行数据库操纵。书中的做法是给每一个Dao加一个JdbcTemplate属性,纪录的日记略有分歧,实践中注重(P127)
33.JdbcTemplate的execute()办法不成带sql 参数,即不存在execute(Stringsql,Object[]params)办法,而update才有update(Stringsql,Object[]params)办法能够,还能指定每字段的范例(经由过程第三个参数int[]argTypes),包管了范例平安,130页说JdbcTemplate供应了execute(Stringsql,Object[]params)是毛病的。(P130)
34.JdbcTemplate类创立了PreparedStatementCreator(createPreparedStatementCreator(Connectionconn))和PreparedStatementSetter(setValues(PreparedStatementps)), 批量更新时必要创立本人的BatchPreparedStatementCreator类:
BatchPreparedStatementSettersetter=newBatchPreparedStatementSetter(){ public
intgetBatchSize(){returnpersons.size();} publicvoidsetValues(PreparedStatement
ps,intindex)throwsSQLException{ Personperson=(Person)persons.get
(index); ps.setInt(0,person.getId().intValue()); ...... }
};getJdbcTemplate().batchUpdate(sql,setter);BatchPreparedStatementSettersetter
=newBatchPreparedStatementSetter(){ publicintgetBatchSize(){returnpersons.size
();} publicvoidsetValues(PreparedStatementps,intindex)throwsSQLException{
Personperson=(Person)persons.get(index); ps.setInt(0,person.getId
().intValue()); ...... }};getJdbcTemplate().batchUpdate
(sql,setter);把传进的List<Person>批量的举行数据库响应操纵(P131)
<p>
java也能做一些底层语言开发做的事情(难度很高,不是java顶尖高手是做不来的), 是一种将安全性(Security)列为第一优先考虑的语言 不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。 学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。 应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展 Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台 是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言 关于设计模式的资料,还是向大家推荐banq的网站 http://www.jdon.com/,他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。 Jive的资料在很多网站上都有,大家可以找来研究一下。相信你读完代码后,会有脱胎换骨的感觉。遗憾的是Jive从2.5以后就不再无条件的开放源代码,同时有licence限制。不过幸好还有中国一流的Java程序员关注它,外国人不开源了,中国人就不能开源吗?这里向大家推荐一个汉化的Jive版本—J道。Jive(J道版)是由中国Java界大名 鼎鼎的banq在Jive 2.1版本基础上改编而成, 全中文,增加了一些实用功能,如贴图,用户头像和用户资料查询等,而且有一个开发团队在不断升级。你可以访问banq的网站 象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
页:
[1]