利用spring访问数据库是我们ssh程序中必不可少的步骤,在没有hibernate之前,我们一般都用jdbc访问数据库,所以用jdbc访问数据库必不可少的要进行一些配置,spring中为我们提供了访问数据库的数据源配置,配置完以后我们就可以很容易的利用jdbc对数据库进行访问了。下面我们就具体来看一下spring所支持的集中jdbc数据源的配置:

在Sping的配置文件中,关于dataSource的配置,就我们常用的方法大致可以有三种:

1、一般的配置方法,直接在配置中指定其值。具体的例子我们参照MySQL的配置如下:

[html] view plaincopy print?
  1. <span style="font-size:18px;"><bean   id="datasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
  2. <property name="driverClassName">
  3. com.mysql.jdbc.Driver
  4. </property>
  5. <property name="url">
  6. dbc:mysql://localhost:3306/dataBase
  7. </property>
  8. <property name="username" value="root"></property>
  9. <property name="password" value="root"></property>
  10. </bean></span>

2.、通过读取文件信息资源,其原理与方法一相同。示例:

[html] view plaincopy print?
  1. <span style="font-size:18px;"><bean   id="preferences" class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">
  2. <property name="location">
  3. <value>/WEB-INF/files.properties</value> <!-- 指定文件路径 -->
  4. </property>
  5. </bean>
  6. <bean    id="datasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
  7. <property name="driverClassName">
  8. <value>${driverClassName}</value>   <!-- 这里的值要通过${}进行转义,其driverClassName参数要在上面的文件中指定 -->
  9. </property>
  10. <property name="url">
  11. <value>${url}</value>
  12. </property>
  13. <property name="username" value="${userName}"></property>
  14. <property name="password" value="${userPwd}"></property>
  15. </bean>
  16. 3、通过数据连接池。在此我们只需指定jndiName的值为服务器中配置的数据连接池的JNDI名称即可。
  17. <bean    id="datasource" class="org.springframework.jndi.JndiObjectFactoryBean">
  18. <property name="jndiName" value="jdbc/mysql"></property>
  19. </bean></span>

在上述方法配置成功之后,我们可以通过JdbcTemplate把dataSource注入到JdbcTemplate里面

[html] view plaincopy print?
  1. <span style="font-size:18px;"> <bean  id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
  2. <property name="dataSource">
  3. <ref bean="datasource" />
  4. </property>
  5. </bean></span>

配置完这些之后我们就可以利用JdbcTemplate来访问数据库了。利用JdbcTemplate访问数据库要比一般的jdbc访问数据库方便的多,也简单的多,直接调用相关的访问就OK了,也不用管什么关闭和打开链接。下面我们就以一个保存用户实例来简单看一下JdbcTemplate的基本用法:

[java] view plaincopy print?
  1. <span style="font-size:18px;">public class UserDAO {
  2. private JdbcTemplate  jdbcTemplate;
  3. public DataSource getJdbcTemplate() {
  4. return jdbcTemplate;
  5. }
  6. public void setJdbcTemplate(JdbcTemplate  jdbcTemplate) {
  7. this.jdbcTemplate= jdbcTemplate;
  8. }
  9. public void insertUser(User user) {
  10. String username = user.getUsername();
  11. String password = user.getPassword();
  12. String email = user.getEmail();
  13. jdbcTemplate.update("insert into user(username,password,email) values ('"
  14. + username + "','" + password + "','" + email + "');");
  15. }
  16. }
  17. </span>

我们看一下在beans.xml中对userdao的基本配置:

[html] view plaincopy print?
  1. <span style="font-size:18px;color:#0000cc;"><bean id="userDAO" class="com.demo.spring.dao.UserDAO">
  2. <property name="jdbcTemplate">
  3. <ref local="jdbcTemplate" />
  4. </property>
  5. </bean></span>

好了,这样就可以利用spring给我们提供的API进行JDBC访问数据库了,这个知识点比较简单,我们就先说到这。

from: http://blog.csdn.net/csh624366188/article/details/7658256

Java程序员从笨鸟到菜鸟之(七十八)细谈Spring(七)spring之JDBC访问数据库及配置详解相关推荐

  1. Java程序员从笨鸟到菜鸟之(十)枚举,泛型详解

    一:首先从枚举开始说起 枚举类型是JDK5.0的新特征.Sun引进了一个全新的关键字enum来定义一个枚举类.下面就是一个典型枚举类型的定义: public enum Color{ RED,BLUE, ...

  2. Java程序员从笨鸟到菜鸟全部博客目录

    本文来自:曹胜欢博客专栏.转载请注明出处:http://blog.csdn.NET/csh624366188 欢迎关注微信账号:java那些事:csh624366188.每天一篇java相关的文章 大 ...

  3. Java程序员从笨鸟到菜鸟之(序言)+全部链接

    http://blog.csdn.net/csh624366188 大学上了一年半,接触java也一年半了,虽然中间也有其他东西的学习,但是还是以java为主路线,想想这一年半,除去前半年几乎全玩了, ...

  4. Java程序员由笨鸟到菜鸟 电子版书正式发布 欢迎大家下载

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 欢迎关注 ...

  5. Java程序员从笨鸟到菜鸟之——总结和声明

    前段时间经过大约二十天的时间把javaSE的内容总结了一下,最近由于个人原因和一些乱七八糟的事情,一直没在更新,首先感谢那些一如既往支持我的朋友.最近不知道为什么,一直很懒,做东西也一直是效率很低,生 ...

  6. Java程序员从笨鸟到菜鸟之(五)java开发常用类(包装,数字处理集合等)(下)...

     本文来自:曹胜欢博客专栏.转载请注明出处:http://blog.csdn.net/csh624366188 写在前面:由于前天项目老师建设局的项目快到验收阶段,所以,前天晚上通宵,昨天睡了大半天, ...

  7. Java程序员从笨鸟到菜鸟之(一百零九)一步一步学习webservice(三)开发第一个基于XFire的webservice

    在日常开发中,常用的webservice引擎主要有Axis,axis2,Xfire以及cxf(Xfire的升级版).现在只有axis2和cxf官方有更新.今天我们先以一个比较老的引擎为例.来讲诉一下w ...

  8. Java程序员从笨鸟到菜鸟之(一百零八)一步一步学习webservice(二)webservice基本原理

    本来这第二篇打算讲解"开发第一个基于XFire的webservice"的内容来着.但是想想.开发实例只是局限于了会用的层面上.如果想真正的理解webservice还是需要挖掘其原理 ...

  9. Java程序员从笨鸟到菜鸟之(五)java开发常用类(包装,数字处理集合等)(下)

    写在前面:由于前天项目老师建设局的项目快到验收阶段,所以,前天晚上通宵,昨天睡了大半天,下午我们宿舍聚会,所以时间有点耽误,希望大家见谅 上接: Java程序员从笨鸟到菜鸟之(四)java开发常用类( ...

  10. Java程序员从笨鸟到菜鸟之(一百零六)java操作office和pdf文件(四)页面列表导出cvs,excel、pdf报表.

    在平常的开发中我们常常遇到不仅仅只是导出excel报表的情况.有时候也需要导出pdf或者CSV报表.其实原理都差不多.刚开始本来不打算也这篇博客介绍这个的.感觉这篇博客和前面的博客有点雷同.原理基本都 ...

最新文章

  1. linux libpath的作用,linux – LD_LIBRARY_PATH似乎不起作用
  2. java 监控usb端口插拔_如何监控某种类型的USB设备的插拔?
  3. [BZOJ1643][Usaco2007 Oct]Bessie's Secret Pasture 贝茜的秘密草坪
  4. linux-01-概述
  5. java多线程交替打印_java实现多线程交替打印
  6. R语言是如何增强数据科学
  7. 手工机器人的做法大全用易拉罐_快来吃“智能机器人炒饭”啦!顾客:比人工炒饭还好吃!...
  8. 自旋锁,偏向锁,轻量级锁 和 重量级锁
  9. Bin Code Editor格式化JSON编辑器
  10. php 判断是否为中文,php判断是否为中文正则表达式大全
  11. 抖音网页版上线:这回可以在电脑上刷抖音啦!
  12. 百度网盘免费jdk1.8中文chm下载(不要积分点个赞就好)
  13. 多旋翼无人机ROSC++开发例程(四):基于Prometheus开源项目与Casadi开源优化求解器的模型预测控制简单应用例程
  14. 搜索引擎 百度 高级搜索
  15. 一个大学老师的2020
  16. vue使用xe-utils通用函数库
  17. Skype for Business Server 2015-04-前端服务器-7-部署
  18. free-excel (wps版) | 第十章Excel看板
  19. LaTeX 进阶语法
  20. 宫崎步 brave heart 歌词加谐音

热门文章

  1. android studio 3.0新功能介绍
  2. 数学建模学习笔记——灰色关联分析(评价类)
  3. ubuntu jdk
  4. nestjs CRUD
  5. wordpress搭建个人博客
  6. Java 高并发_JAVA并发编程与高并发解决方案 JAVA高并发项目实战课程 没有项目经验的朋友不要错过!...
  7. 笨办法学python47详解_练习 47 - 自动化测试 - 笨办法学Python3
  8. 布道微服务_06微服务调用的监控
  9. Java 8 - 收集器Collectors_分区partitioningBy
  10. Redis-16Redis备份(持久化)