文档章节

第一步:Spring访问数据库(jdbcTemplate)

明月_出天山
 明月_出天山
发布于 2014/01/04 15:29
字数 526
阅读 59
收藏 0
点赞 0
评论 0


      首先当然是访问数据库,以前学习php的时候,就是从留言板、登录等功能开始学习的,之所以这样学习无非就是因为从前台到后台,该有的全都有了,完整而简洁的生命周期。

       用的是jdbcTemplate,这还是最近才了解到的。数据库是Oracle 11g,恰好虚拟机里装了,所以就用上了。



public class PlanDao {

	private JdbcTemplate jdbcTemplate;

	public JdbcTemplate getJdbcTemplate() {
		return jdbcTemplate;
	}

	public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
		this.jdbcTemplate = jdbcTemplate;
	}
	
	public Connection getConnection(){
		ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
		   DataSource springDataSource = (DataSource)ctx.getBean("springDataSource");
		   JdbcTemplate jdbcTemplate = (JdbcTemplate)ctx.getBean("jdbcTemplate");
		   /*jdbcTemplate.setDataSource(springDataSource);   
		   setJdbcTemplate(jdbcTemplate);     */
		   DataSource dataSource = jdbcTemplate.getDataSource();
		   Connection conn = null;
		   try {
		    conn = dataSource.getConnection();
		   } catch (SQLException e) {
		    e.printStackTrace();
		   }
		   return conn;
	}
	
	public ResultSet queryPersons(String sql){
		   ResultSet rs = null;
		   try {
		    Connection connection = getConnection();
		    Statement st = connection.createStatement();
		    rs = st.executeQuery(sql);
		   } catch (SQLException e) {
		    e.printStackTrace();
		   }
		   return rs;
		} 
	
}



代码是复制别人的,倒也简洁明了,只是getConnection()方法第一行,原本复制来的时候ctx是用ApplicationContext定义的,但是ApplicationContext好像并不是后来new的对象的父类,报了错,所以修改了这么一点地方。另外applicationContext.xml我是放在了src目录下(Eclipse的动态网站工程)才试验成功的,放WEB-INF下报了“找不到文件”之类的错误。

applicationContext.xml如下:

<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

<bean id="springDataSource"
   class="org.springframework.jdbc.datasource.DriverManagerDataSource">
   <property name="driverClassName"
    value="oracle.jdbc.OracleDriver">
   </property>
   <property name="url"
    value="jdbc:oracle:thin:@192.168.1.152:1521:orcl">
   </property>
   <property name="username" value="plan"></property>
   <property name="password" value="admin"></property>
</bean>

<bean id="jdbcTemplate"
   class="org.springframework.jdbc.core.JdbcTemplate" abstract="false"
   lazy-init="false" autowire="default" dependency-check="default">
   <property name="dataSource">
    <ref bean="springDataSource" />
   </property>
</bean>
</beans>



用来测试的main方法类如下

public class Main {
	public static void main(String[] args) {
		PlanDao pd = new PlanDao();
		ResultSet rs = pd.queryPersons("select * from plan");
		int n = 0;
		try {
			while (rs.next()) {
				n++;
				System.out.println("id     = " + rs.getString(1));
				System.out.println("name   = " + rs.getString(2));
				System.out.println("gender = " + rs.getString(3));
				System.out.println("*******************************");
			}
			System.out.println("数据库中共有记录 " + n + " 条");
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}
}



成功访问了数据库。 代码是复制的,所以贴上来了。这最初的代码可以测试一下。以后的代码更愿意贴图上来,不然在浏览器和在线编辑器里双滚动条滚得麻烦得很。


© 著作权归作者所有

共有 人打赏支持
明月_出天山
粉丝 10
博文 28
码字总数 6934
作品 0
南京
程序员
java基础---深入解析spring中用到的九种设计模式

转载请注明出处,文章首发于:http://itxxz.com/a/javashili/tuozhan/2014/0601/7.html 设计模式作为工作学习中的枕边书,却时常处于勤说不用的尴尬境地,也不是我们时常忘记,只是一直没有记...

u010775025 ⋅ 04/25 ⋅ 0

Spring中涉及的设计模式总结

Spring中涉及的设计模式总结 1.简单工厂(非23种设计模式中的一种) 实现方式:BeanFactory。 Spring中的BeanFactory就是简单工厂模式的体现,根据传入一个唯一的标识来获得Bean对象,但是否是...

caoxiaohong1005 ⋅ 04/22 ⋅ 0

Spring JdbcTemplate使用详解

JdbcTemplate简介   Spring对数据库的操作在jdbc上面做了深层次的封装,使用spring的注入功能,可以把DataSource注册到JdbcTemplate之中。   JdbcTemplate位于中。其全限定命名为org.spr...

u012843873 ⋅ 04/23 ⋅ 0

为什么SpringMVC数据库取值为空

================================================== applicationContext.xml: ==================================================...

末日花都 ⋅ 2016/11/04 ⋅ 3

Spring Boot中使用Flyway来管理数据库版本

久违了的Spring Boot系列,今天抽空更新一篇。去年写过很多篇关于数据访问的文章了,比如下面这些: 使用JdbcTemplate 使用Spring-data-jpa简化数据访问层(推荐) 多数据源配置(一):Jdb...

翟永超 ⋅ 2017/12/25 ⋅ 0

spring mvc配置 + dbcp数据源+jdbcTemplate

最近打算仔细研究一下spring,就从用了2年的spring mvc开始吧,初学者可以看看,大神就pass好了,呵呵.... 首先去spring官网下载完整的spring包,包含libs, docs和schema,spring的版本是3.2.4 我们...

qq59410a0b9a625 ⋅ 2017/06/15 ⋅ 0

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

利用spring访问数据库是我们ssh程序中必不可少的步骤,在没有hibernate之前,我们一般都用jdbc访问数据库,所以用jdbc访问数据库必不可少的要进行一些配置,spring中为我们提供了访问数据库的...

长平狐 ⋅ 2012/11/12 ⋅ 0

spring boot 1.5.4 集成JdbcTemplate(六)

上一篇:spring boot 1.5.4 集成devTools(五) Spring Boot使用JdbcTemplate访问数据库 spring boot整合jdbcTemplate项目源码: spring-boot相关项目源码, 码云地址:https://git.oschina...

wyait ⋅ 2017/09/25 ⋅ 0

spring jdbcTemplate多数据源简单实用

第一、config/jdbc.properties HC本地数据库 jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/hcdatabase?useUnicode=true&characterEncoding=UTF-8&allowMultiQu......

梦魂清风 ⋅ 02/08 ⋅ 0

Java Web学习(六)

功能介绍 登录页面提供一个用户名/密码输入表单,用户填写并提交表单后,服务端检查是否有匹配的用户名/密码。若没有,则返回到登录页面,并给出提示。若匹配,则记录用户的登录日志,更新用...

kakayang2011 ⋅ 2016/03/11 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

spring Email

使用spring发Email其实就是使用spring自己封装携带的一个javamail.JavaMailSenderImpl类而已。这个类可以当一个普通的java对象来使用,也可以通过把它配置变成spring Bean的方式然后注入使用...

BobwithB ⋅ 20分钟前 ⋅ 0

spark 整理的一些知识

Spark 知识点 请描述spark RDD原理与特征? RDD全称是resilient distributed dataset(具有弹性的分布式数据集)。一个RDD仅仅是一个分布式的元素集合。在Spark中,所有工作都表示为创建新的...

tuoleisi77 ⋅ 23分钟前 ⋅ 0

思考

时间一天天过感觉自己有在成长吗?最怕的是时光匆匆而过,自己没有收获!下面总结下最近自己的思考。 认识自己 认识另一个自己,人们常说要虚心听取别人意见和建议。然而人往往是很难做到的,...

hello_hp ⋅ 24分钟前 ⋅ 0

IT行业的变革就像世界杯德国对战墨西哥一样难以预测[图]

最近在观看世界杯,尤其是昨天的比赛,上一届卫冕冠军德国队居然0:1告负墨西哥,这创造了历史,首先是墨西哥从来没赢过德国队,其次是德国队36年来首站没输过,再差也是打平,而这次,德国队...

原创小博客 ⋅ 43分钟前 ⋅ 0

解决CentOS6、7,/etc/sysconfig/下没有iptables的问题

一、Centos 6版本解决办法: 1.任意运行一条iptables防火墙规则配置命令: iptables -P OUTPUT ACCEPT 2.对iptables服务进行保存: service iptables save 3.重启iptables服务: service ...

寰宇01 ⋅ 53分钟前 ⋅ 2

数据库备份和恢复

备份:mysqldump -u root -p 数据库>磁盘路径 恢复:mysql -u root -p 数据库<sql脚本的磁盘路径

anlve ⋅ 今天 ⋅ 0

发生了什么?Linus 又发怒了?

在一个 Linux 内核 4.18-rc1 的 Pull Request 中,开发者 Andy Shevchenko 表示其在对设备属性框架进行更新时,移除了 union 别名,这引发了 Linus 的暴怒。 这一次 Linus Torvalds 发怒的原...

问题终结者 ⋅ 今天 ⋅ 0

在树莓派上搭建一个maven仓库

在树莓派上搭建一个maven仓库 20180618 lambo init 项目说明 家里有台树莓派性能太慢。想搭建一个maven私服, 使用nexus或者 jfrog-artifactory 运行的够呛。怎么办呢,手写一个吧.所在这个...

林小宝 ⋅ 今天 ⋅ 0

Spring发展历程总结

转自与 https://www.cnblogs.com/RunForLove/p/4641672.html 目前很多公司的架构,从Struts2迁移到了SpringMVC。你有想过为什么不使用Servlet+JSP来构建Java web项目,而是采用SpringMVC呢?...

onedotdot ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部