仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 533|回复: 7
打印 上一主题 下一主题

[学习教程] 来看Spring源代码剖析(三):Spring JDBC

[复制链接]
乐观 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:12:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
Java的桌面程序开发在java程序员里通常叫swing开发,主要用的swing包里的类开发的,也就是通常说的c/s架构开发
上面我们看看SpringJDBC相干的完成,
在Spring中,JdbcTemplate是常常被利用的类来匡助用户程序操纵数据库,在JdbcTemplate为用户程序供应了很多便当的数据库操纵办法,好比查询,更新等,并且在Spring中,有很多相似JdbcTemplate的模板,好比HibernateTemplate等等-看来这是Rod.Johnson的习用伎俩,一样平常而言这类Template中都是经由过程回调函数CallBack类的利用来完乐成能的,客户必要在回调接口中完成本人必要的定制举动,好比利用客户想要用的SQL语句等。不外常常Spring经由过程这类回调函数的完成已为我们供应了很多现成的办法供客户利用。一样平常来讲回调函数的用法接纳匿名类的体例来完成,好比:
代码
JdbcTemplate=newJdbcTemplate(datasource);
jdbcTemplate.execute(newCallBack(){
      publicCallbackInterfacedoInAction(){
       ......
       //用户界说的代码大概说Spring替我们完成的代码
      }
}
在模板中嵌进的是必要客户化的代码,由Spring来作大概必要客户程序亲身下手完成。上面让我们详细看看在JdbcTemplate中的代码是如何完成任务的,我们举JdbcTemplate.execute()为例,这个办法是在JdbcTemplate中被其他办法挪用的基础办法之一,客户程序常常用这个办法来实行基础的SQL语句:
代码
publicObjectexecute(ConnectionCallbackaction)throwsDataAccessException{
  //这里失掉数据库连接
  Connectioncon=DataSourceUtils.getConnection(getDataSource());
  try{
    ConnectionconToUse=con;
    //有些特别的数据库,必要我们利用出格的办法获得datasource
    if(this.nativeJdbcExtractor!=null){
      //ExtractnativeJDBCConnection,castabletoOracleConnectionorthelike.
      conToUse=this.nativeJdbcExtractor.getNativeConnection(con);
    }
    else{
      //Createclose-suppressingConnectionproxy,alsopreparingreturnedStatements.
      conToUse=createConnectionProxy(con);
    }
  //这里挪用的是传送出去的匿名类的办法,也就是用户程序必要完成CallBack接口的中央。
    returnaction.doInConnection(conToUse);
  }
  catch(SQLExceptionex){
    //假如捕获到数据库非常,把数据库连接开释,同时抛出一个经由Spring转换过的Spring数据库非常,
    //我们晓得,Spring做了一个成心义的事情是把这些数据库非常一致到本人的非常系统里了。
    DataSourceUtils.releaseConnection(con,getDataSource());
    con=null;
    throwgetExceptionTranslator().translate("ConnectionCallback",getSql(action),ex);
  }
  finally{
    //最初不论如何城市把数据库毗连开释
    DataSourceUtils.releaseConnection(con,getDataSource());
  }
}
<p>
再说第三点:我并没有提到服务器也要整合,然后是IDE,一个好的IDE能够200%提高开发的速度,就说图形方面:你是经过简单托拽和点击就能实现功能好那。
分手快乐 该用户已被删除
沙发
发表于 2015-1-20 17:08:13 来自手机 | 只看该作者
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
板凳
发表于 2015-1-24 12:03:42 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
若相依 该用户已被删除
地板
发表于 2015-2-1 09:56:04 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
再见西城 该用户已被删除
5#
发表于 2015-2-6 16:17:31 | 只看该作者
一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从
爱飞 该用户已被删除
6#
发表于 2015-2-17 03:43:47 | 只看该作者
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
愤怒的大鸟 该用户已被删除
7#
发表于 2015-3-16 00:27:28 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
深爱那片海 该用户已被删除
8#
发表于 2015-3-22 18:10:34 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 00:43

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表