Mybatis增删改查

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

目录

一、增删查改

1.创建Mybatis配置文件mybatis-config.xml

2.创建实体类对象

3.编写接口

4.编写接口的实现类Employee \Department Mapper.xml

5.测试是否可以用 

EmployeeTest\DepartmentTest 

二、多条件查询

1、分别增加查询方法

1)EmployeeDao

2)Employee Mapper.xml

3)Test


一、增删查改

1.创建Mybatis配置文件mybatis-config.xml

提示:resources文件下新建

Mybatis增删改查_第1张图片

2.创建实体类对象

  • 新建一个com.etc.bean包

Mybatis增删改查_第2张图片

  •  新建Employee 类,Department类属性对应数据库employee 表,department表的属性

Employee :Mybatis增删改查_第3张图片

 Department:

Mybatis增删改查_第4张图片

3.编写接口

  • 创建com.etc.dao包

 

  • 创建Employee Dao接口

Mybatis增删改查_第5张图片

Mybatis增删改查_第6张图片

  • 创建 Department Dao接口

 Mybatis增删改查_第7张图片

Mybatis增删改查_第8张图片

 4.编写接口的实现类Employee \Department Mapper.xml

 Mybatis增删改查_第9张图片

 Mybatis增删改查_第10张图片

5.测试是否可以用 

EmployeeTest\DepartmentTest 

  •  Employee:Mybatis增删改查_第11张图片
  • findByEid 

 ​​​Mybatis增删改查_第12张图片

  •  findAllMybatis增删改查_第13张图片

  •  add\updateMybatis增删改查_第14张图片
  •  deleteMybatis增删改查_第15张图片

  •  Department:
  • findByDid\selectAllMybatis增删改查_第16张图片
  • add\updateMybatis增删改查_第17张图片
  •  deleteMybatis增删改查_第18张图片


、多条件查询

1、分别增加查询方法

1)EmployeeDao


    /**
     * 多条件查询
     * @param name 员工姓名
     * @param sex 员工性别
     * @return 员工对象集合
     */
    public List queryList(String name,char sex);

    /**
     * 多条件查询2
     * @param name 姓名
     * @param sex 性别
     * @return 员工对象集合
     */
    public List queryList2(@Param("name") String name, @Param("sex") char sex);

    /**
     * 多条件查询
     * @param map 查询参数集合
     * @return 员工对象集合
     */
    public List queryList3(Map map);

    /**
     * 模糊查询
     */
    public List queryByIf(Employee emp);

2)Employee Mapper.xml

  

 

#和$的区别

1、#和$两者含义不同 #会把传入的数据都当成一个字符串来处理,会在传入的数据上面加一个双引号来处理。 而$则是把传入的数据直接显示在sql语句中,不会添加双引号。

2、两者的实现方式不同

(1)$作用相等于是字符串拼接 相当于使用StringBuffer的append方法将${username}$追加在 select username,password from t_login where username=后面,拼接在一起。

(2)#作用相当于变量值替换 相当于使用PreparedStement接口来对#{username}#来进行赋值操作。

3、#和$使用场景不同

(1)在sql语句中,如果要接收传递过来的变量的值的话,必须使用#。因为使用#是通过PreparedStement接口来操作,可以防止sql注入,并且在多次执行sql语句时可以提高效率。 (2)$只是简单的字符串拼接而已,所以要特别小心sql注入问题。对于sql语句中非变量部分,那就可以使用$,比如$方式一般用于传入数据库对象(如传入表名)。

  
    
   
    
    
    

    

3)Test

@Test
    public void queryList(){
     List list = employeeDao.queryList("李",'女');
        for (Employee employee:list) {
            System.out.println(employee);
        }
    }
    @Test
    public void queryList2(){
        List list = employeeDao.queryList2("小",'男');
        for (Employee employee:list) {
            System.out.println(employee);
        }
    }
    @Test
    public void queryList3(){
        Map map = new HashMap<>();
        map.put("userName","李");
        map.put("userSex","男");
        List list = employeeDao.queryList3(map);
        for (Employee employee:list) {
            System.out.println(employee);
        }
    }
    @Test
    public void queryByIf(){
     Employee employee = new Employee();
     employee.seteName("李");
     List list = employeeDao.queryByIf(employee);
        for (Employee emp:list) {
            System.out.println(emp);
        }
    }

二、使用步骤

1.引入库

代码如下(示例):

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import  ssl
ssl._create_default_https_context = ssl._create_unverified_context

2.读入数据

代码如下(示例):

data = pd.read_csv(
    'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())

该处使用的url网络请求的数据。


总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

你可能感兴趣的:(python,pandas,数据分析)