首页 > 其他分享 >JDBCTemplate-执行DML语句、执行DQL语句

JDBCTemplate-执行DML语句、执行DQL语句

时间:2022-10-19 10:55:57浏览次数:45  
标签:语句 return String void DML public sql DQL id

JDBCTemplate-执行DML语句

 

 

 

public class Emp {
    private int id;
    private String ename;
    private int job_id;
    private int mgr;
    private Date joindate;
    private double salary;
    private double bonus;
    private int dept_id;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getEname() {
        return ename;
    }

    public void setEname(String ename) {
        this.ename = ename;
    }

    public int getJob_id() {
        return job_id;
    }

    public void setJob_id(int job_id) {
        this.job_id = job_id;
    }

    public int getMgr() {
        return mgr;
    }

    public void setMgr(int mgr) {
        this.mgr = mgr;
    }

    public Date getJoindate() {
        return joindate;
    }

    public void setJoindate(Date joindate) {
        this.joindate = joindate;
    }

    public double getSalary() {
        return salary;
    }

    public void setSalary(double salary) {
        this.salary = salary;
    }

    public double getBonus() {
        return bonus;
    }

    public void setBonus(double bonus) {
        this.bonus = bonus;
    }

    public int getDept_id() {
        return dept_id;
    }

    public void setDept_id(int dept_id) {
        this.dept_id = dept_id;
    }

    @Override
    public String toString() {
        return "Emp{" +
                "id=" + id +
                ", ename='" + ename + '\'' +
                ", job_id=" + job_id +
                ", mgr=" + mgr +
                ", joindate=" + joindate +
                ", salary=" + salary +
                ", bonus=" + bonus +
                ", dept_id=" + dept_id +
                '}';
    }
import cn.itcast.datasource.utils.JDBCUtils;
import org.junit.Test;
import org.springframework.jdbc.core.JdbcTemplate;

public class jdbcTemplateDemo2 {
    /**
     * junit单元测试,可以让方法独立执行
     */

    /**
     * 修改1号数据的salary为10000
     */
    //获取JDBCTemplate
    JdbcTemplate jdbcTemplate = new JdbcTemplate(JDBCUtils.getDataSource());
    @Test
    public void test1() {
        //定义sql
        String sql = "update emp set salary = 10000 where id = 1001";
        //执行sql
        int update = jdbcTemplate.update(sql);
        //输出
        System.out.println(update);
    }

    /**
     * 添加一条记录
     */
    @Test
    public void test2() {
        //定义sql
        String sql= "insert into emp(id,ename,dept_id) value(?,?,?)";
        //执行sql
        int ai = jdbcTemplate.update(sql, 1015, "哎嘿嘿", 20);
        //输出
        System.out.println(ai);
    }
/**
* 删除一条记录
*/
@Test public void test3(){ //定义sql String sql = "delete from emp where id = ?"; //执行slq int update = jdbcTemplate.update(sql, 1015); //输出 System.out.println(update); } }

 

JDBCTemplate-执行DQL语句

EMP

public class Emp {
    private Integer id;
    private String ename;
    private Integer job_id;
    private Integer mgr;
    private Date joindate;
    private Double salary;
    private Double bonus;
    private Integer dept_id;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getEname() {
        return ename;
    }

    public void setEname(String ename) {
        this.ename = ename;
    }

    public Integer getJob_id() {
        return job_id;
    }

    public void setJob_id(Integer job_id) {
        this.job_id = job_id;
    }

    public Integer getMgr() {
        return mgr;
    }

    public void setMgr(Integer mgr) {
        this.mgr = mgr;
    }

    public Date getJoindate() {
        return joindate;
    }

    public void setJoindate(Date joindate) {
        this.joindate = joindate;
    }

    public Double getSalary() {
        return salary;
    }

    public void setSalary(Double salary) {
        this.salary = salary;
    }

    public Double getBonus() {
        return bonus;
    }

    public void setBonus(Double bonus) {
        this.bonus = bonus;
    }

    public Integer getDept_id() {
        return dept_id;
    }

    public void setDept_id(Integer dept_id) {
        this.dept_id = dept_id;
    }

    @Override
    public String toString() {
        return "Emp{" +
                "id=" + id +
                ", ename='" + ename + '\'' +
                ", job_id=" + job_id +
                ", mgr=" + mgr +
                ", joindate=" + joindate +
                ", salary=" + salary +
                ", bonus=" + bonus +
                ", dept_id=" + dept_id +
                '}';
    }
}

 

package cn.itcast.datasource.jdbcTemplate;

import cn.itcast.datasource.domain.demain.Emp;
import cn.itcast.datasource.utils.JDBCUtils;
import org.junit.Test;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;

import java.sql.Date;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
import java.util.Map;

public class jdbcTemplateDemo2 {
    /**
     * junit单元测试,可以让方法独立执行
     */

    /**
     * 修改1号数据的salary为10000
     */
    //获取JDBCTemplate
    JdbcTemplate jdbcTemplate = new JdbcTemplate(JDBCUtils.getDataSource());
    @Test
    public void test1() {
        //定义sql
        String sql = "update emp set salary = 10000 where id = 1001";
        //执行sql
        int update = jdbcTemplate.update(sql);
        //输出
        System.out.println(update);
    }

    /**
     * 添加一条记录
     */
    @Test
    public void test2() {
        //定义sql
        String sql= "insert into emp(id,ename,dept_id) value(?,?,?)";
        //执行sql
        int ai = jdbcTemplate.update(sql, 1015, "哎嘿嘿", 20);
        //输出
        System.out.println(ai);
    }

    /**
     * 删除一条记录
     */
    @Test
    public void test3(){
        //定义sql
        String sql = "delete from emp where id = ?";
        //执行slq
        int update = jdbcTemplate.update(sql, 1015);
        //输出
        System.out.println(update);
    }

    /**
     * 查询id为1001的记录,将其封装为map集合
     */
    @Test
    public void test4(){
        //定义sql
        String sql = "select * from emp where id = ?";
        //封装为map集合
        Map<String, Object> stringObjectMap = jdbcTemplate.queryForMap(sql, 1001);
        //输出
        System.out.println(stringObjectMap);
    }

    /**
     * 查询所有记录,将其封装为list集合
     */
    @Test
    public void test5(){
        //定义sql
        String sql = "select * from emp";
        //转变list集合
        List<Map<String, Object>> maps = jdbcTemplate.queryForList(sql);
        //遍历
        for (Map<String, Object> map : maps) {
            //输出
            System.out.println(map);
        }
    }

    /**
     * 查询所有记录,将其封装为emp对象的list集合
     */

    @Test
    public void test6(){
        //定义sql
        String sql = "select * from emp";
        //转变list集合
        List<Emp> list = jdbcTemplate.query(sql, new BeanPropertyRowMapper<Emp>(Emp.class));
        //遍历
        for (Emp emp: list){
            //输出
            System.out.println(emp);
        }
    }

    @Test
    public void test7(){
        //定义sql
        String sql = "select count(id) from emp";
        //查询
        Long aLong = jdbcTemplate.queryForObject(sql, Long.class);
        //输出
        System.out.println(aLong);
    }
}

 

标签:语句,return,String,void,DML,public,sql,DQL,id
From: https://www.cnblogs.com/yuzong/p/16805456.html

相关文章

  • DQL_分组查询与DQL_分页查询
    DQL_分组查询分组查询1.语法:group   by分钟字段;         ......
  • 工作笔记之 SELECT 语句在 SAP ABAP 中的用法总结(上)
    日常开发过程中,最常用的语句可能就是查询语句了。那么如果从数据库表中查询数据呢?答:​​selectfrom​​语句。SELECT的三个部分在OPENSQL中,​​SELECT​​语句可以查......
  • Matlab学习笔记(03)——三种循环语句的用法(for、switch、while)
    为了减轻循环计算的步骤,三种循环语句可以根据所需要的方法进行选择。 for循环格式:fori=1:10a=1+i;end这个格式可以用于求的1到10的总和 switch循环......
  • C语言-流程控制语句
    一:分支语句1.if语句流程控制语句可以让程序中的语句不再从上到下逐条执行分支是一种流程控制语句,可以把程序中某些语句忽略掉不去执行if关键字可以用来编写分支语句,只有......
  • python基础:模块简介、模块的语句、绝对导入和相对导入
    python基础:模块简介、模块的语句、绝对导入和相对导入目录一、索引取值与迭代取值的差异二、模块简介三、模块的分类四、导入模块的两种句式1.import句式2.from...import......
  • AI智能视频融合平台EasyCVR如何使用SQL语句批量开启通道音频?
    EasyCVR视频融合云平台可支持多协议、多类型的设备接入,包括国标GB28181、RTSP/Onvif、RTMP协议,以及海康/大华SDK、海康Ehome等,对外可分发RTSP、RTMP、FLV、HLS、WebRTC等格......
  • shell的流程控制语句
    shell的流程控制语句:选择判断循环shell的条件选择语句:ifif分为单分支、双分支和多分支单分支格式:if判断条件;then执行的操作fi例如:[root@CentOS7~......
  • shell的条件测试语句:test
    条件测试:  判断某需求是否满足,需要由测试机制来实现,专用的测试表达式需要由测试命令辅助完成测试结果:若真,则状态码变量$?返回0若假,则状态码变量$?返回1条......
  • if语句(选择流程控制语句)
    第一种格式if(条件表达式){   要执行的语句;} 例子    运行结果  第二种格式if(条件表达式){      语句一;}else{     语......
  • DML_修改数据与DQL_基础查询
    DML_修改数据修改数据语法:UPDATE表名set列名1=值1,列名2=值2,...[where条件];    注意:如果不加任何条件,则会......