spring-使用JdbcTemplate完成增删改查

  1. 云栖社区>
  2. 博客>
  3. 正文

spring-使用JdbcTemplate完成增删改查

技术小牛人 2017-11-15 19:11:00 浏览649
展开阅读全文
一、创建spring项目
    项目名称:spring101306
二、在项目上添加jar包
    1.在项目中创建lib目录
        /lib
    2.在lib目录下添加spring支持
        commons-logging.jar
        junit-4.10.jar
        log4j.jar
        mysql-connector-java-5.1.18-bin.jar
        spring-beans-3.2.0.RELEASE.jar
        spring-context-3.2.0.RELEASE.jar
        spring-core-3.2.0.RELEASE.jar
        spring-expression-3.2.0.RELEASE.jar
        spring-jdbc-3.2.0.RELEASE.jar
        spring-tx-3.2.0.RELEASE.jar
        com.springsource.com.mchange.v2.c3p0-0.9.1.2.jar
三、在项目中添加配置文件与属性文件
    1.在项目中创建conf目录
    2.在conf目录下添加属性文件
        属性文件名称:jdbc.properties
        属性文件内容:
        jdbc.url=jdbc:mysql://localhost:3306/spring
        jdbc.driver=com.mysql.jdbc.Driver
        jdbc.username=root
        jdbc.password=root
    2.在conf目录下添加spring核心配置文件
        配置文件名称: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">
                
                <!-- 加载属性文件 -->
                <context:property-placeholder location="classpath:jdbc.properties"/>
                
                <!-- 1.配置数据库连接池 -->
                <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
                    <property name="jdbcUrl" value="${jdbc.url}"></property>
                    <property name="driverClass" value="${jdbc.driver}"></property>
                    <property name="user" value="${jdbc.username}"></property>
                    <property name="password" value="${jdbc.password}"></property>
                </bean>
        </beans>
四、实现bean设计
    1.在src目录下创建实体bean的包
        包名:cn.jbit.spring101306.domain
    2.在包下创建实体bean
        public class Temp {
            private Integer tempId;
            private String tempName;
            //省略get and set
        }
五、设计Dao层
    1.在src目录下创建dao层的包
        包名:cn.jbit.spring101306.dao
    2.在包下创建dao层的接口与实现类
        1)接口设计
            接口名称:ITempDao.java
            接口内容:
            public interface ITempDao {
                public void save(Temp temp);
                public void update(Temp temp);
                public void delete(int id);
                public int findCount();
            }
        2)接口实现类设计
            实现类名称:TempDaoImpl.java
            实现类内容:
            public class TempDaoImpl extends JdbcDaoSupport implements ITempDao {
                @Override
                public void save(Temp temp) {
                    this.getJdbcTemplate().update("insert into temp(tid,tname) values(?,?)",temp.getTempId(),temp.getTempName());
                }
                
                @Override
                public void update(Temp temp) {
                    this.getJdbcTemplate().update("update temp set tname=? where tid=?",temp.getTempName(),temp.getTempId());
                }
            
                @Override
                public void delete(int id) {
                    this.getJdbcTemplate().update("delete from temp where tid = ?",id);
                }
            
                @Override
                public int findCount() {
                    return this.getJdbcTemplate().queryForInt("select count(1) from temp");
                }
            }
六、在核心配置文件中配置Dao
    <!-- 配置Dao -->
    <bean id="tempdao" class="cn.jbit.spring101306.dao.TempDaoImpl">
        <!-- 为jdbcTemplate进行注入 -->
        <property name="dataSource" ref="dataSource"></property>    
    </bean>
七、测试
    1.在项目上创建test目录
        /test
    2.在test目录下创建测试包
        包名:cn.jbit.spring101301.dao
    3.在测试包下创建测试类
        测试类名:JdbcTemplateDemo.java
        测试类的内容:
        public class JdbcTemplateDemo {
        
            /**
             * 使用spring jdbctemplate查询个数
             */
            @Test
            public void testJdbcTemplateFindCount(){
                ApplicationContext context = new ClassPathXmlApplicationContext("classpath:applicationContext.xml");
                ITempDao tempDao = (ITempDao) context.getBean("tempdao");
                System.out.println(tempDao.findCount());
            }
            
            
            /**
             * 使用spring jdbctemplate删除
             */
            @Test
            public void testJdbcTemplateDelete(){
                ApplicationContext context = new ClassPathXmlApplicationContext("classpath:applicationContext.xml");
                ITempDao tempDao = (ITempDao) context.getBean("tempdao");
                tempDao.delete(2);
            }
            
            
            /**
             * 使用spring jdbctemplate修改
             */
            @Test
            public void testJdbcTemplateUpate(){
                ApplicationContext context = new ClassPathXmlApplicationContext("classpath:applicationContext.xml");
                ITempDao tempDao = (ITempDao) context.getBean("tempdao");
                Temp temp = new Temp();
                temp.setTempId(1);
                temp.setTempName("liubei");
                tempDao.update(temp);
            }
        
            /**
             * 使用spring jdbctemplate添加数据
             */
            @Test
            public void testJdbcTemplate(){
                ApplicationContext context = new ClassPathXmlApplicationContext("classpath:applicationContext.xml");
                ITempDao tempDao = (ITempDao) context.getBean("tempdao");
                Temp temp = new Temp();
                temp.setTempId(8);
                temp.setTempName("guanyu");
                tempDao.save(temp);
            }

        }


本文转自  素颜猪  51CTO博客,原文链接:http://blog.51cto.com/suyanzhu/1563393

网友评论

登录后评论
0/500
评论
技术小牛人
+ 关注