|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
认真的记,感觉很紧张根本就没有时间和能力,来对技术知识点进行思考。这样课下就只能对知识进行简单的理解,其实简单的理解就是记忆课堂上讲的知识点,
第四章.制服数据库
--------------------------------------------------------------------------------
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顶尖高手是做不来的), |
|