zoukankan      html  css  js  c++  java
  • Spring框架针对dao层的jdbcTemplate操作之jdbc数据库连接原始操作方法 所需安装包下载

    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();
                }
            }
        }
        
    }

    String url="jdbc:mysql://localhost:3306/sw_database";
    String u="root";
    String p="root";
    conn=DriverManager.getConnection(url, u, p);

    连接数据库也可以使用3个参数的方法

    如果忘记倒入连接mysql数据库的包,会出现上面的java.lang.ClassNotFoundException: com.mysql.jdbc.Driver问题

    mysql-connector-java-5.1.7-bin.jar

    下载地址:链接: https://pan.baidu.com/s/1geBRqqn 密码: 8jxm

    成功执行代码后,显示效果


  • 相关阅读:
    spring boot 在SpringMVC中使用Jackson并格式化时间
    MUI 同一个页面初始化多个pullrefresh 下拉刷新/上拉加载组件的问题
    Fixflow引擎解析(五)(内核)
    Fixflow引擎解析(四)(模型)
    Fixflow引擎解析(三)(模型)
    Fixflow引擎解析(二)(模型)
    Fixflow引擎解析(一)(介绍)
    Raspberry Pi 摄像头模块应用程序文档翻译
    js 继承如何让对象instanceof 当前类及父类均返回true?
    zabbix邮件脚本报警
  • 原文地址:https://www.cnblogs.com/qingyundian/p/7892049.html
Copyright © 2011-2022 走看看