当前位置:   article > 正文

java Spring JdbcTemplate配合mysql查询一个表中具体有几条数据_jdbctemplate 查询单个

jdbctemplate 查询单个

查询操作返回的主要有三种
分别是 查询一个字段 查询一个对象 查询一个集合

而我们将实现的 返回长度 也是是返回某个值的其中一种

我们创建一个java项目 然后引入java Spring JdbcTemplate所需要的 Jar包
在这里插入图片描述
我这里 有一个test数据库 其中有一张 user_list表 其中有这么几条数据
在这里插入图片描述
这次 我们要用程序去实现查询 这个表中的记录数
简单说 查有多少条数据

在java项目 src目录下创建一个包 叫 dao
在 dao下创建一个接口 我这里叫 BookDao
参考代码如下

package dao;

import mydata.user_list;

public interface BookDao {
    int findCount();
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

然后 在dao 下创建BookDaoImpl类 来实现这个接口
参考代码如下

package dao;

import mydata.user_list;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;

@Repository
public class BookDaoImpl implements BookDao {
    @Autowired
    private JdbcTemplate jdbcTemplate;
    @Override
    public int findCount() {
        String sql = "select count(*) from user_list";
        Integer hangm = jdbcTemplate.queryForObject(sql,Integer.class);
        System.out.println(hangm);
        return hangm;
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

这里 我们使用了jdbcTemplate中的queryForObject 此方法用于操作数据库 第一个参数 接受一段sql语句 作为执行语句 第二个参数是参数的返回类型的类
例如 我们要返回的是一个长度 数字类型的 int类型 对应的类就是Integer

然后 在src下创建 一个包 叫 senvice 下面创建一个类 叫 BookService
参考代码如下

package senvice;

import dao.BookDao;
import mydata.user_list;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class BookService {
    @Autowired
    protected BookDao BookDao;

    public int findCountUser_list () {
        return BookDao.findCount();
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

主要就是做一个调用 三层架构中这些 还是有必要的

然后我们在src下创建 bean.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="com.alibaba.druid.pool.DruidDataSource"
             destroy-method="close">
              <property name="url" value="jdbc:mysql:///test" /><!--对应SQLyog里的数据库-->
              <property name="username" value="root" />            <!-- 用户名 -->
              <property name="password" value="root" />        <!-- 密码 -->
              <property name="driverClassName" value="com.mysql.jdbc.Driver" />
       </bean>

       <!-- JdbcTemplate对象 -->
       <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
              <!--注入dataSource属性-->
              <property name="dataSource" ref="dataSource"></property>
       </bean>

       <context:component-scan base-package="senvice"></context:component-scan>
       <context:component-scan base-package="dao"></context:component-scan>

</beans>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26

这里这个配置是需要注意的 首先 jdbc:mysql:///test 这里 我指向的是 test数据库
在这里插入图片描述
其次是用户名和密码

然后 我们在src下编写测试类 参考代码如下


import mydata.user_list;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import senvice.BookService;

public class text {
    public static void main(String args[]) {
        ApplicationContext context = new ClassPathXmlApplicationContext("bean.xml");
        BookService bookService = context.getBean("bookService", BookService.class);
        int length = bookService.findCountUser_list();
        System.out.println("user_list共有"+length+"条数据");
    }
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

运行结果如下
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/576676
推荐阅读
相关标签
  

闽ICP备14008679号