文档章节

Spring jdbc的搭建

maketc
 maketc
发布于 2017/08/05 15:44
字数 391
阅读 9
收藏 0

 

首先得在pom.xml中新增两个依赖,不然你会发现要用DriverManagerDataSource这个类都没有

	<dependency>  
	    <groupId>org.springframework</groupId>  
	    <artifactId>spring-jdbc</artifactId>  
	    <version>${spring.version}</version>  
	</dependency>  

	<dependency>
		<groupId>mysql</groupId>
		<artifactId>mysql-connector-java</artifactId>
		<version>5.1.43</version>
	</dependency>
    

然后在controller里写了段并加断点测试一下,与数据库联通了,没毛病

		DriverManagerDataSource dataSource = new DriverManagerDataSource();
		dataSource.setUrl("jdbc:mysql://localhost:3306/gotoxoyo");
		dataSource.setUsername("root");
		dataSource.setPassword("go111112");
		dataSource.setDriverClassName("com.mysql.jdbc.Driver");
		
		JdbcCustomerDao customerDao = new JdbcCustomerDao();
		customerDao.setDataSource(dataSource);
		Customer customer = new Customer(1, "mkyong",28);
		customerDao.insert(customer);
		
		
		Customer customer1 = customerDao.findByCustomerId(1);
		System.out.println(customer1);

现在该把这个数据配置移到xml中了,在src根目录下新建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"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd">

	<bean id="dataSource"
	class="org.springframework.jdbc.datasource.DriverManagerDataSource">
		<property name="driverClassName" value="com.mysql.jdbc.Driver" />
		<property name="url" value="jdbc:mysql://localhost:3306/gotoxoyo" />
		<property name="username" value="root" />
		<property name="password" value="go111112" />
	</bean>

	<bean id="customerDao" class="com.gotoxoyo.demo.dao.JdbcCustomerDao">
		<property name="dataSource" ref="dataSource" />
	</bean>

    <!-- <context:property-placeholder location="jdbc.properties"/>
 -->
</beans>

现在还有个问题,controller层如果要用dao类和pojo类,还需要初始化,如下代码:

		
		JdbcCustomerDao customerDao = new JdbcCustomerDao();
		customerDao.setDataSource(dataSource);
		Customer customer = new Customer(1, "mkyong",28);
		customerDao.insert(customer);
		
		
		Customer customer1 = customerDao.findByCustomerId(1);
		System.out.println(customer1);

能不能直接让spring初始化呢,可以的,在applicationContext.xml中配置

	<bean id="customerDao" class="com.gotoxoyo.demo.dao.JdbcCustomerDao">
		<property name="dataSource" ref="dataSource" />
	</bean>
	
	<bean class="com.gotoxoyo.demo.pojo.Customer" id="customer">
		<property name="custId" value="2" />
		<property name="name" value="Yang" />
		<property name="age" value="32" />
	</bean>

然后controller层的类就只需要两句代码了

	@Resource
	private CustomerDao customerDao;
	
	public CustomerDao getCustomerDao() {
		return customerDao;
	}

	public void setCustomerDao(CustomerDao customerDao) {
		this.customerDao = customerDao;
	}
	
	@Resource
	private Customer customer;
	

	public Customer getCustomer() {
		return customer;
	}

	public void setCustomer(Customer customer) {
		this.customer = customer;
	}

在方法里只需一句代码
		customerDao.insert(customer);


 

© 著作权归作者所有

共有 人打赏支持
maketc
粉丝 3
博文 74
码字总数 24692
作品 0
渝北
程序员
私信 提问
为什么越来越多的开发者选择使用Spring Boot?

一、Web应用开发背景 使用Java做Web应用开发已经有近20年的历史了,从最初的Servlet1.0一步步演化到现在如此多的框架、库以及整个生态系统。经过这么长时间的发展,Java作为一个成熟的语言,...

Ala6
10/10
0
0
【Java学习路线】新手该如何一步步的学习 Java

新手该如何一步步的学习 Java? 如果真的想学Java,最好要循序渐进,有章有法的学习它! 今天小慕就不说一些学习方法和技巧了,直接来谈每个阶段要学习的内容。 首先,给大家分享一张以 企业...

Eddie_yang
11/15
131
0
为什么Java大神,都在看Spring Boot和Spring Cloud的书?

如果你是一名Java开发人员,并且最近正打算学习Spring Boot和Spring Cloud框架并寻找一些关于它们的最好的书籍,那么,你今天就来对地方了。 本文,我们将讨论一些学习Spring Boot和Spring ...

Java小铺
09/18
0
0
maven私服nexus之校验和(checksums)

maven是开源的项目构建工具。 nexus可以用来搭建maven私服。 checksum(校验和):用于校验数据的完整性和准确性。 maven nexus中可以查看构件的Checksums:SHA1 checksum和MD5 checksum。 ...

donhui
2014/10/10
0
0
SpringBoot 学习:(一)快速搭建项目

一、简介 从 Spring Boot 项目名称中的 Boot 可以看出来,Spring Boot 的作用在于创建和启动新的基于 Spring 框架的项目。它的目的是帮助开发人员很容易的创建出独立运行和产品级别的基于 Sp...

Element0506
2015/07/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

SRE的含义及与 DevOps 如何关联?

虽然站点可靠性工程师(site reliability engineer SRE)角色在近几年变得流行起来,但是很多人 —— 甚至是软件行业里的 —— 还不知道 SRE 是什么或者 SRE 都干些什么。为了搞清楚这些问题...

linuxCool
7分钟前
0
0
月入3万之一个程序员的转行坎坷历程

陈年往事 “我月入3万,怎么会少少了你一个鸡蛋啊?” 这是2017年9月左右的一个新闻,一位煎饼摊大妈因和顾客争执时脱口而出这样一句话而走红。当时还上了各大新闻的头条。 互联网兴起今天,...

苏南-首席填坑官
29分钟前
1
1
OSChina 周一乱弹 —— 眼看着这颗陨石砸了下来

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子:分享Nachtblut的单曲《Antik》 《Antik》- Nachtblut 手机党少年们想听歌,请使劲儿戳(这里) @mr_chip :上海的初雪之后有点冷 ...

小小编辑
54分钟前
215
7
Confluence 6 修改导航显示选项

选择 子页面(Child pages)来在边栏中查看当前页面的子页面。 选择 页面树(Page tree)来查看整个空间的页面树,扩展当前的页面。 你也可以选择是否完全隐藏导航显示选项或者添加你希望可见...

honeymose
今天
2
0
Ubuntu18.04 安装MySQL

1.安装MySQL sudo apt-get install mysql-server 2.配置MySQL sudo mysql_secure_installation 3.设置MySQL非root用户 设置原因:配置过程为系统root权限,在构建MySQL连接时出现错误:ERROR...

AI_SKI
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部