TKMapper的使用

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-context</artifactId>
  <version>5.0.8.RELEASE</version>
</dependency>

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-aspects</artifactId>
  <version>5.0.8.RELEASE</version>
</dependency>
<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-jdbc</artifactId>
  <version>5.0.8.RELEASE</version>
</dependency>
<dependency>
  <groupId>org.mybatis</groupId>
  <artifactId>mybatis</artifactId>
  <version>3.5.6</version>
</dependency>

<dependency>
  <groupId>org.mybatis</groupId>
  <artifactId>mybatis-spring</artifactId>
  <version>2.0.6</version>
</dependency>

<dependency>
  <groupId>log4j</groupId>
  <artifactId>log4j</artifactId>
  <version>1.2.17</version>
</dependency>

<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-log4j12</artifactId>
  <version>1.6.6</version>
</dependency>
<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-api</artifactId>
  <version>1.7.30</version>
</dependency>

<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
  <version>8.0.25</version>
</dependency>

<dependency>
  <groupId>org.projectlombok</groupId>
  <artifactId>lombok</artifactId>
  <version>1.18.20</version>
</dependency>

<dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <version>4.13.2</version>
  <scope>test</scope>
</dependency>

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-test</artifactId>
  <version>5.0.8.RELEASE</version>
</dependency>


<dependency>
  <groupId>com.alibaba</groupId>
  <artifactId>druid</artifactId>
  <version>1.2.3</version>
</dependency>

    <dependency>
      <groupId>tk.mybatis</groupId>
      <artifactId>mapper</artifactId>
      <version>4.1.5</version>
    </dependency>

applicationContext.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"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xmlns:tx="http://www.springframework.org/schema/tx"
       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
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx.xsd">

    <import resource="classpath:springmvc.xml"/>

    <context:component-scan base-package="com.ycz"/>

    <context:property-placeholder location="classpath:db.properties"/>

    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
        <property name="driverClassName" value="${db.driver}"/>
        <property name="url" value="${db.url}"/>
        <property name="username" value="${db.username}"/>
        <property name="password" value="${db.password}"/>
    </bean>

    <bean class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="configLocation" value="classpath:mybatis-config.xml"/>
        <property name="dataSource" ref="dataSource"/>
    </bean>

    <bean class="tk.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="com.ycz.mapper"/>
    </bean>


</beans>

mybatis-config.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>

</configuration>

User

package com.ycz.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.Table;
import java.io.Serializable;

/**
 * (User)实体类
 *
 * @author makejava
 * @since 2021-12-03 13:44:50
 */
@Table(name = "user")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User implements Serializable {
    private static final long serialVersionUID = 206334966274892680L;

    private Integer id;

    private String address;

    private String name;

    private String gender;

    private Integer age;
    

}

UserMapper

package com.ycz.mapper;

import com.ycz.entity.User;
import com.ycz.query.UserQuery;
import org.springframework.stereotype.Repository;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;

/**
 * (User)表数据库访问层
 *
 * @author makejava
 * @since 2021-12-03 13:44:49
 */
@Repository(value = "userMapper")
public interface UserMapper extends Mapper<User> {



}

测试

package com.ycz.test;/*
 @author ycz
 @date 2021-12-05-21:52
*/

import com.ycz.entity.User;
import com.ycz.mapper.UserMapper;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

import java.util.List;

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath:applicationContext.xml")
public class MyTest {

    @Autowired
    private UserMapper userMapper;

    /**
     *查询所有
     */
    @Test
    public void t1(){
        List<User> users = userMapper.selectAll();
        users.forEach(System.out::println);
    }

    @Test
    public void t2(){
        User user=new User();
        user.setId(1);
        User user1 = userMapper.selectOne(user);
        System.out.println(user1);
    }


}

结果:

输出结果:

User(id=1, address=广东省, name=admin, gender=女, age=12)

User(id=2, address=北京, name=ycz, gender=女, age=14)

User(id=3, address=广东省, name=haha, gender=女, age=13)

User(id=4, address=广东省, name=ycz123, gender=男, age=123123)

User(id=5, address=广东省, name=123ycz, gender=男, age=123123)

User(id=6, address=广东省, name=12312312, gender=女, age=1123)

User(id=7, address=广东省, name=ycz123141, gender=男, age=123)

User(id=8, address=广东省, name=ycz1234, gender=男, age=12312)

User(id=9, address=广东省, name=ycz782131, gender=男, age=213)

User(id=10, address=广东省, name=ycaasd12, gender=女, age=12312312)

第二个:

User(id=1, address=广东省, name=admin, gender=女, age=12)

模糊查询

@Test
public void t3(){
    Example example=new Example(User.class);
    Example.Criteria criteria=example.createCriteria();
    criteria.andLike("name","%"+"ycz"+"%");
   List<User> users= userMapper.selectByExample(example);
   users.forEach(System.out::println);
}

结果:

User(id=2, address=北京, name=ycz, gender=女, age=14)

User(id=4, address=广东省, name=ycz123, gender=男, age=123123)

User(id=5, address=广东省, name=123ycz, gender=男, age=123123)

User(id=7, address=广东省, name=ycz123141, gender=男, age=123)

User(id=8, address=广东省, name=ycz1234, gender=男, age=12312)

User(id=9, address=广东省, name=ycz782131, gender=男, age=213)

User(id=15, address=广东省, name=ycz1231231241, gender=男, age=1231)

User(id=16, address=广西省, name=ycz231231, gender=女, age=123123)

User(id=17, address=广东省, name=ycz123131, gender=男, age=1231231)

between查询

@Test
public void t4(){
    Example example=new Example(User.class);
    Example.Criteria criteria=example.createCriteria();
    criteria.andBetween("age",10,100);
    List<User> users= userMapper.selectByExample(example);
    users.forEach(System.out::println);
}

结果:

User(id=1, address=广东省, name=admin, gender=女, age=12)

User(id=2, address=北京, name=ycz, gender=女, age=14)

User(id=3, address=广东省, name=haha, gender=女, age=13)

User(id=20, address=天津市, name=12312312, gender=男, age=100)

User(id=21, address=台湾省, name=abc, gender=男, age=100)

User(id=22, address=天津市, name=温晋病, gender=女, age=18)

User(id=25, address=内蒙古自治区, name=小唐, gender=女, age=26)

User(id=26, address=山东省, name=郭美美, gender=女, age=24)

User(id=28, address=海南省, name=路飞, gender=男, age=23)

结合起来:

@Test
public void t5() {
    Example example = new Example(User.class);
    Example.Criteria criteria = example.createCriteria();
    criteria.andLike("name","%"+"ycz"+"%");
    criteria.andBetween("age",10,1000);
    List<User> users= userMapper.selectByExample(example);
    users.forEach(System.out::println);
}

结果:

User(id=2, address=北京, name=ycz, gender=女, age=14)

User(id=7, address=广东省, name=ycz123141, gender=男, age=123)

User(id=9, address=广东省, name=ycz782131, gender=男, age=213)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值