Spring框架针对dao层的jdbcTemplate操作 包括crud

crud指数据库或者持久层的基本操作,包括

增加(Create)、读取查询(Retrieve 取回)、更新(Update)和删除(Delete)

Spring不仅对JDBC进行了封装,也对Hibernate进行了封装,还有Ibatis

jdbcTemplate与Java Web时的dbutils小型框架功能类似

封装简化了代码,确需要jar包的支持,jdbcTemplate还需要两个jar包:

spring-jdbc-4.2.4.RELEASE.jar

spring-tx-4.2.4.RELEASE.jar



之前有十个jar包,实现了beans annotation aop等功能,复制在下边

需Spring压缩包中的四个核心JAR包

beans 、context、core 和expression

下载地址:

https://pan.baidu.com/s/1qXLHzAW

以及日志jar包

commons-logging 和log4j

下载地址:

https://pan.baidu.com/s/1mimTW5i

再增加一个

spring-aop-5.0.1.RELEASE.jar (用于注解,在Spring-framework库中包含)

再增加

spring-aspects-5.0.1.RELEASE.jar (在Spring-framework库中包含)

aspectjweaver-1.8.12.jar (官方下载地址 http://mvnrepository.com/artifact/org.aspectj/aspectjweaver)

aopalliance-1.0.jar            (官方下载地址 http://mvnrepository.com/artifact/aopalliance/aopalliance/1.0)



简单回顾一下原始的Java连接数据库的操作

package com.swift;
//这里导入的包是java.sql.Connection而不是com.mysql.jdbc.Connection
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

public class TestJDBC {

    public static void main(String[] args) {
        Connection conn=null;
        Statement st=null;
        ResultSet rs=null;
        try {
            //1、装载驱动
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        try {
            //2、链接数据库,使用com.mysql.jdbc.Connection包会出错
            List<User> list=new ArrayList<User>();
            conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/sw_database?user=root&password=root");
            //3、创建连接语句
            st=conn.createStatement();
            //4、执行SQL语句获得结果集
            rs=st.executeQuery("select * from sw_user");
            //5、循环获得数据库字段生成对象
            while(rs.next()) {
                int id=rs.getInt("id");
                String username=rs.getString("username");
                String password=rs.getString("password");
                User user=new User(id,username,password);
                list.add(user);
            }
            //6、遍历对象列表
            for(User user:list) {
                System.out.println(user.toString());
            }

        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally {
            //7、关闭结果集
            try {
                if(rs!=null) {
                   rs.close();
                }
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            //7、关闭连接语句
            try {
                if(st!=null) {
                   st.close();
                }
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            //7、关闭数据库连接
            try {
                if(conn!=null) {
                    conn.close();
                }
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }

}
时间: 2024-10-10 10:20:08

Spring框架针对dao层的jdbcTemplate操作 包括crud的相关文章

Spring框架针对dao层的jdbcTemplate操作crud之delete删除数据库操作 Spring相关Jar包下载

首先,找齐Spring框架中IoC功能.aop功能.JdbcTemplate功能所需的jar包,当前13个Jar包 1.Spring压缩包中的四个核心JAR包,实现IoC控制反转的根据xml配置文件或注解生成对象 beans .context.core 和expression 下载地址: https://pan.baidu.com/s/1qXLHzAW 2.以及日志jar包,以便查看相关执行细节 commons-logging 和log4j 下载地址: https://pan.baidu.com

解决Spring框架的Dao层改用@Repository注解,无法使用JdbcDaoSupport的问题

目的: 想改用spring框架强大的注解功能(@Repository注解)来实现自动注册dao的bean的功能(原来是在xml中配置的).改完之后,运行的时候直接报错: Error creating bean with name 'UserVODao' defined in file [D:\JSP_MyEclipse\.metadata\.me_tcat7\webapps\XYG_WEBDEV_SAMPLE\WEB-INF\classes\com\xinyiglass\springSample

深入理解--SSM框架中Dao层,Mapper层,controller层,service层,model层,entity层都有什么作用

SSM是sping+springMVC+mybatis集成的框架. MVC即model view controller. model层=entity层.存放我们的实体类,与数据库中的属性值基本保持一致. service层.存放业务逻辑处理,也是一些关于数据库处理的操作,但不是直接和数据库打交道,他有接口还有接口的实现方法,在接口的实现方法中需要导入mapper层,mapper层是直接跟数据库打交道的,他也是个接口,只有方法名字,具体实现在mapper.xml文件里,service是供我们使用的方

我的Dao层

Spring 为整合 Hibernate3 提供了两个工具类,分别是 HibernateTemplate 和 HibernateDaoSupport ,但是 Spring 不推荐使用这两个实现 Dao 层,因为操作复杂 CRUD 不是很灵活,而是推荐使用通过注入 SessionFactory 的方式,用过 getCurrentSession() 获取当前线程的 Session 对象,然后进行持久化. 下面是我在自己练手项目中实现的 Dao 层: 1 .  Dao层的顶层接口类: package

Spring框架[一]——spring概念和ioc入门(ioc操作xml配置文件)

Spring概念 spring是开源的轻量级框架(即不需要依赖其他东西,可用直接使用) spring核心主要两部分 aop:面向切面编程,扩展功能不是修改源代码来实现: ioc:控制反转,比如:有一个类,在类中有个方法(非静态的方法),要调用类中的这个方法,则需要创建类的对象,使用对象调用方法.创建类对象的过程,需要new出来对象:而ioc则是将对象的创建不是通过new方式实现,而是交给spring配置来创建对象(即,将对象的创建交给spring来管理): spring是一站式框架 spring

用Spring Aop 实现注解Dao层的自动Spring Redis缓存

摘要: 主要针对Dao层的一些数据库查询的操作,数据实时性不强,直接加入缓存.当缓存中有的时候,就使用缓存中的数据.这样的方法,最终仅仅使用一个注解实现.对于之前的hibernate二级缓存使用,比较陌生.比如是否支持Redis或者可以自己开发支持.是否支持针对部分需要加入缓存的方法配置,而不是所有的hibernate实体都加入缓存.可能我这种方法对于二级缓存来说,抛开代码差距,也是殊途同归的东西. 这几天工作中,突然遇到了对于有些个实体类,需要被缓存起来.但是这些个实体类数目庞大, 初始化加载

Spring框架第三天

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption

DAO 层实现

一.实验介绍 1.1 实验内容 本节课程主要利用 MyBatis 框架实现 DAO 层. 1.2 实验知识点 MyBatis 框架 MySQL 1.3 实验环境 JDK1.8 Eclipse JavaEE 二.实验步骤 根据第一节,我们可以知道系统的功能包括了哪些,根据第三节和第四节,我们知道了数据库表的结构和持久化实体,因此,在这里我们完成数据库的访问操作. 首先在项目 hrms 的 Java Resources 目录的 src/main/java 下新建包 com.shiyanlou.dao

spring框架的一些技术总结

纵观现在互联网行业,java的地位依然不可动摇,因为java拥有着的众多开发人员和适用性广,技术与解决技术大部分开源等特点,因此java依然是众多众多开发行业作为互联网开发的首选,而说到开发,我们就不等不说一下近年来最火爆的那些开源框架! 首先我们来看一下那些曾经以及现在仍然火爆的框架有哪些: 注:因为今天主要目的是讲解Spring,所以其他框架就先不详细讲解了,我改天会单开个框架专栏给大家讲解 传统行业: SSH(Spring,Struts2,Hibernate) 作为传统行业的经典,可以说S