在springboot环境下tk-mybatis的使用记录

1. 新建springboot工程

访问https://start.spring.io/,新建一个springboot工程。

自动生成的工程主要的注意点如下:

1)pom.xml

<parent>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<version>2.1.2.RELEASE</version>

<relativePath /> <!-- lookup parent from repository -->

</parent>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter</artifactId>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-test</artifactId>

<scope>test</scope>

</dependency>

将Spring Boot应用打包为可执行的jar或war文件:

<build>

<plugins>

<plugin>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-maven-plugin</artifactId>

</plugin>

</plugins>

</build>

2. 使用tk-mybatis构建数据库访问示例

1)application.properties

resources目录下的application.properties文件配置如下:

spring.datasource.driver-class-name=com.mysql.jdbc.Driver

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/mytest?useUnicode=true&characterEncoding=utf8&useSSL=false

spring.datasource.username=root

spring.datasource.password=123456

spring.datasource.max-idle=10

spring.datasource.max-wait=10000

spring.datasource.min-idle=5

spring.datasource.initial-size=5

logging.level.com.tkmybatislearning.demo=DEBUG

2)entity

新建entity实体类Country.java, 命名与数据库的表名country对应:

package com.tkmybatislearning.demo.entity;

import javax.persistence.Id;

public class Country {

@Id

private Integer id;

private String  countryname;

private String  countrycode;

public Integer getId() {

return id;

}

public void setId(Integer id) {

this.id = id;

}

public String getCountryname() {

return countryname;

}

public void setCountryname(String countryname) {

this.countryname = countryname;

}

public String getCountrycode() {

return countrycode;

}

public void setCountrycode(String countrycode) {

this.countrycode = countrycode;

}

}

3)mapper

新增mapper接口文件CountryMapper.java,继承tk的Mapper,可以自定义方法:

package com.tkmybatislearning.demo.mapper;

import org.apache.ibatis.annotations.Select;

import com.tkmybatislearning.demo.entity.Country;

import tk.mybatis.mapper.common.Mapper;

public interface CountryMapper extends Mapper<Country> {

@Select("select * from country where countryname = #{countryname}")

Country selectByCountryName(String countryname);

}

4)service

新增service服务文件CountryService.java,自动注入CountryMapper,可以使用tk自带的方法,对数据库表进行CRUD操作:

package com.tkmybatislearning.demo.service;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Service;

import com.tkmybatislearning.demo.entity.Country;

import com.tkmybatislearning.demo.mapper.CountryMapper;

@Service

public class CountryService {

@Autowired

private CountryMapper countryMapper;

public void testCountry() {

//从 MyBatis 或者 Spring 中获取 countryMapper,然后调用 selectAll 方法

List<Country> countries = countryMapper.selectAll();

//根据主键查询

Country country = countryMapper.selectByPrimaryKey(1);

//或者使用对象传参,适用于1个字段或者多个字段联合主键使用

Country query = new Country();

query.setId(1);

country = countryMapper.selectByPrimaryKey(query);

}

}

3. 新建应用启动程序

DemoApplication.java:

package com.tkmybatislearning.demo;

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

import tk.mybatis.spring.annotation.MapperScan;

@SpringBootApplication

@MapperScan("com.tkmybatislearning.demo.mapper")

public class DemoApplication {

public static void main(String[] args) {

SpringApplication.run(DemoApplication.class, args);

}

}

4. 使用单元测试验证示例

新建DemoApplicationTests.java:

package com.tkmybatislearning.demo;

import org.junit.Test;

import org.junit.runner.RunWith;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.boot.test.context.SpringBootTest;

import org.springframework.test.context.junit4.SpringRunner;

import com.tkmybatislearning.demo.service.CountryService;

@RunWith(SpringRunner.class)

@SpringBootTest(classes = DemoApplication.class)

public class DemoApplicationTests {

@Autowired

private CountryService countryService;

@Test

public void contextLoads() {

countryService.testCountry();

}

}

原文地址:https://www.cnblogs.com/windpoplar/p/10921819.html

时间: 2024-10-28 06:03:09

在springboot环境下tk-mybatis的使用记录的相关文章

Linux环境下DB2 v9.7安装记录

本文用于说明在Linux环境下DB2 v9.7的安装步骤: 环境说明: 硬件环境:Lenovo E440, i7, 12GB, 500GB:虚拟设备:VMWare WorkStation 11 + RHEL5.6 X64:安装产品:IBM DB2 v9.7: 一.准备工作 首先,将DB2 v9.7的安装介质上传至服务器,并进行解压: 目前,手头的DB2 v9.7的安装介质是“v9.7fp6_linuxx64_server.tar.gz”,使用如下命令解压: tar -zxvf v9.7fp6_l

Idea中maven环境下搭建MyBatis项目(一)

1.选择Maven框架下的webapp 1.1 添加新节点:archetypeCatalog=internal 1.2 或者在settings------->Build,Execution,Deployment-->Maven-->VM Options设置 -DarchetypeCatalog=internal 2.在Maven的pom文件中引入MyBatis需要用的jar包: 创建对应的java项目,引入需要的mybatis需要的jar,以及连接mysql数据库的jar! asm-3.

springboot环境下配置过滤器和拦截器

以前我们在配置过滤器和拦截器的时候,都是一个类继承一个接口,然后在xml中配置一下就ok 但是,但是,这是springboot的环境,没有xml的配置.所以我们还要继续学习啊啊啊啊啊~~~~~ 先简单大致说明一下,过滤器我们可以直接在类上加上@Component注解实现,但是有些参数啥的还是不好配置,还是需要一个配置文件来搞,所以,spring给我们提供了一个注解,就相当于xml,然后每个方法返回一个对象用@Bean来标注,相当于<bean></bean>注解   看代码吧 Tim

SpringBoot环境中使用MyBatis代码生成工具

一.Maven配置文件中添加如下依赖 <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.3.7</version> </dependency> <plugin> <groupId>org.mybatis.gener

SpringBoot环境下QueryDSL-JPA的使用

1.Pom.xml文件依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-×××tance" xsi:schemaLocation="http://maven.apache.org

Centos7.4 版本环境下安装Mysql5.7操作记录

Centos7.x版本下针对Mysql的安装和使用多少跟之前的Centos6之前版本有所不同的,废话就不多赘述了,下面介绍下在centos7.x环境里安装mysql5.7的几种方法: 一.yum方式安装 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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 5

【甘道夫】Ubuntu14 server + Hadoop2.2.0环境下Sqoop1.99.3部署记录

第一步.下载.解压.配置环境变量: 官网下载sqoop1.99.3 http://mirrors.cnnic.cn/apache/sqoop/1.99.3/ 将sqoop解压到目标文件夹,我的是 /home/fulong/Sqoop/sqoop-1.99.3-bin-hadoop200 配置环境变量: export SQOOP_HOME=/home/fulong/Sqoop/sqoop-1.99.3-bin-hadoop200 export PATH=$PATH:$SQOOP_HOME/bin

mybatisnet Web环境下多线程问题

最近在Web环境下使用mybatis,在Winform和服务模式下运行(多线程访问数据库)没有问题.但是在IIS的环境中出现了一个WebSessionStore: Could not obtain reference to HttpContext 异常. 之前有听说过mybatis在多线程模式下会有异常,不过一直没有遇到过.以为是老版本的问题,也没在意.直到今天遇到这个问题才想起这么个事,首先问度娘,找到了这篇文章.感谢二位. http://q.cnblogs.com/q/24859/ 不过我在

windows7环境下的http-server的问题 排查

刚才写了 windows7环境下的http-server的安装 记录.现在写一下问题,这个新鲜的. 前几天打开http-server时,出现了如下画面 尝试了好几次,也从vivaldi换成了chrome,依旧如此.几经波折,在网上搜到了几个命令: npm list -g --depth=0 列出你安装过的包 sudo npm rm --global foo 这个用于卸载使用npm链接安装的软件包 npm ls --global foo 用于 卸载完成后检查残留 这两个都是stackoverflo