MyBatis-实现增删查改

MyBatis-新建项目: https://www.cnblogs.com/chenliugou/p/14502135.html

实现:主要是实现了查询单条数据、删除数据、修改、更新、查询全部数据的功能。

问题:在查询全部当中只能用:List students=session.selectList(statement);,如果用老师写的:List<Student> students=session.selectList(statement); 会报错。唉,还好知道用其他方法。

注:conf1没有作用的,只是笔记

  • 整体情况

  • studentMapper.xml

 

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
        <!--namespace:该mapper.xml映射文件的唯一标识  -->
        <mapper namespace="org.lanqiao.entity.studentMapper">
        <!--parameterType:输入参数的类型
            resultType查询返回结果的类型,返回类型
          -->
         <select id="queryStudentById" resultType="org.lanqiao.entity.Student" parameterType="int">
             select * from student where stuno =#{stuno}
         </select>
         
         <insert id="addStudent" parameterType="org.lanqiao.entity.Student">
             insert into student(stuno,stuname,stuage,graname) values(#{stuNo},#{stuName},#{stuAge},#{graName})
         </insert>
         
         <delete id="deleteStudentByStuno" parameterType="int" >
             delete from student where stuno =#{stuno}
         </delete>
         
         <update id="updateStudentByStuno" parameterType="org.lanqiao.entity.Student">
             update student set stuname=#{stuName},stuage=#{stuAge},graname=#{graName} where stuno=#{stuNo}
         </update>
         
         <select id="querAllStudents" resultType="org.lanqiao.entity.Student">
             select * from student
         </select>
</mapper>
  • 测试Test.class
package org.lanqiao.entity;

import java.io.IOException;
import java.io.Reader;
import java.util.List;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;


public class Test {
        public static void queryStudentById() throws IOException{
            //加载MyBatis文件(为了访问数据库)
            Reader reader=Resources.getResourceAsReader("conf.xml");
            // SqlsessionFactory - connection
            SqlSessionFactory sessionFactory=new SqlSessionFactoryBuilder().build(reader);
            //session - connection
            SqlSession session=sessionFactory.openSession();
            String statement="org.lanqiao.entity.studentMapper.queryStudentById";
            Student student= (Student) session.selectOne(statement,Integer.valueOf(1));
            System.out.println(student);
            session.close();
        }
        
        public static void queryAllStudent() throws IOException{
            //加载MyBatis文件(为了访问数据库)
            Reader reader=Resources.getResourceAsReader("conf.xml");
            // SqlsessionFactory - connection
            SqlSessionFactory sessionFactory=new SqlSessionFactoryBuilder().build(reader);
            //session - connection
            SqlSession session=sessionFactory.openSession();
            String statement="org.lanqiao.entity.studentMapper.querAllStudents";
            List students=session.selectList(statement);
            System.out.println(students);
            session.close();
        }
        //增加id
        public static void addStudent() throws IOException{
            //加载MyBatis文件(为了访问数据库)
            Reader reader=Resources.getResourceAsReader("conf.xml");
            // SqlsessionFactory - connection
            SqlSessionFactory sessionFactory=new SqlSessionFactoryBuilder().build(reader);
            //session - connection
            SqlSession session=sessionFactory.openSession();
            String statement="org.lanqiao.entity.studentMapper.addStudent";//执行的sql
            Student student=new Student(3,"22",21,"g1");
            int count =session.insert(statement,student);
            session.commit();
            System.out.println("增加"+count+"个学生");
            session.close();
            }    
        //删除id
        public static void deleteStudentByStuno() throws IOException{
            //加载MyBatis文件(为了访问数据库)
            Reader reader=Resources.getResourceAsReader("conf.xml");
            // SqlsessionFactory - connection
            SqlSessionFactory sessionFactory=new SqlSessionFactoryBuilder().build(reader);
            //session - connection
            SqlSession session=sessionFactory.openSession();
            String statement="org.lanqiao.entity.studentMapper.deleteStudentByStuno";//执行的sql
            int count=session.delete(statement, Integer.valueOf(3));
            
            session.commit();
            System.out.println("删除"+count+"个学生");
            session.close();
            }
        //修改id
        public static void updateStudentByStuno() throws IOException{
            //加载MyBatis文件(为了访问数据库)
            Reader reader=Resources.getResourceAsReader("conf.xml");
            // SqlsessionFactory - connection
            SqlSessionFactory sessionFactory=new SqlSessionFactoryBuilder().build(reader);
            //session - connection
            SqlSession session=sessionFactory.openSession();
            String statement="org.lanqiao.entity.studentMapper.updateStudentByStuno";//执行的sql
            //修改那个人
            Student student=new Student();
            student.setStuNo(2);
            student.setStuName("lxs");
            student.setStuAge(19);
            student.setGraName("s2");
            int count =session.update(statement, student);
            session.commit();
            System.out.println("修改"+count+"个学生");
            session.close();
            }
        
        
        public static void main(String[] arg) throws IOException{
            //查询全部
            queryAllStudent();
            //更新
            updateStudentByStuno();
            //删除
            deleteStudentByStuno();
            //新增
            addStudent();
            //查询全部
            queryAllStudent();
        }
            
}
  • Student.java
package org.lanqiao.entity;

public class Student {
    private int stuNo;
    private String stuName;
    private int stuAge;
    private String graName;
    public int getStuNo() {
        return stuNo;
    }
    public void setStuNo(int stuNo) {
        this.stuNo = stuNo;
    }
    public String getStuName() {
        return stuName;
    }
    public void setStuName(String stuName) {
        this.stuName = stuName;
    }
    public int getStuAge() {
        return stuAge;
    }
    public void setStuAge(int stuAge) {
        this.stuAge = stuAge;
    }
    public String getGraName() {
        return graName;
    }
    public void setGraName(String graName) {
        this.graName = graName;
    }
    public Student(int stuNo, String stuName, int stuAge, String graName) {
        super();
        this.stuNo = stuNo;
        this.stuName = stuName;
        this.stuAge = stuAge;
        this.graName = graName;
    }
    public Student() {
        
    }
    public String toString() {
        return "Student [stuNo=" + this.stuNo + ", stuName=" + this.stuName + ", stuAge="
                + this.stuAge + ", graName=" + this.graName + "]";
    }
    
}

 

posted @ 2021-03-11 22:53  陈遛狗  阅读(67)  评论(0编辑  收藏  举报