springboot(三).springboot用最简单的方式整合mybatis

                                Springboot整合mybatis

在众多的orm框架中,我使用最多的,最习惯的,也是目前使用最广泛的就是mybatis,接下来我们就去将springboot整合mybatis

对于springboot整合mybatis有好几种方法,在这里我们使用最简单,最方便的一种整合方式

在pom中添加以下依赖

在application.properties 中增加以下配置

#数据库连接本地
spring.datasource.url=jdbc:mysql://localhost:3306/springbootTest
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.initial-size = 10
spring.datasource.max-active = 50
spring.datasource.min-idle = 5
spring.datasource.max-idle = 10

在这里要想使用这种最简单的方法,就必须用spring.datasource开头,只有以datasource开头,才能在项目的Application启动时将配置文件的该类信息组装成datasource(数据源),达到了连接数据库的目的

接下来创建user表

表结构:

CREATE TABLE `user` (
  `id` varchar(255) NOT NULL,
  `username` varchar(255) DEFAULT NULL,
  `password` varchar(255) DEFAULT NULL,
  `name` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

编写dao层代码,新建UserMapper 接口

@Mapper
public interface UserMapper {

    @Select("SELECT * FROM USER WHERE username = #{username}")
    UserInfo findByName(@Param("username") String username);

    @Insert("INSERT INTO user(id,username, password,name) VALUES(#{id},#{username}, #{password},#{name})")
    int insert(UserInfo userInfo);

}

 

在业务层增加对dao层接口的引用,创建userService

public interface UserService {

    public UserInfo getUserInfoByUserName(String username);

    public void insertUserInfo(UserInfo userInfo);
}

  

@Service
public class UserServiceImpl implements UserService {

    @Autowired
    private UserMapper userMapper;
    @Override
    public UserInfo getUserInfoByUserName(String username) {
        UserInfo userInfo = userMapper.findByName(username);
        return userInfo;
    }

    @Override
    public void insertUserInfo(UserInfo userInfo) {
        userMapper.insert(userInfo);
    }
}

  

接下来添加我们的controller,提供对外的接口,修改UserController

@RestController
@RequestMapping(value = "/user")
public class UserController {

    //增加日志
    private final Logger log = LoggerFactory.getLogger(UserController.class);

    @Autowired
    private UserService userService;

    /*
    * 测试mybatis连接数据库
    * 查询信息
    * @return
    * *
    * */
    @RequestMapping(value = "/getUserInfoByName",method = RequestMethod.GET)
    public String getUserInfoByName(){
        //打印日志
        log.info("开始根据用户名查询用户信息");
        String username = "yangheng";
        UserInfo userInfo = userService.getUserInfoByUserName(username);
        Map<String,Object> resMap = new HashMap<String, Object>();
        resMap.put("data",userInfo);
        return JSONConvertor.toJSON(resMap);
    }

    /*
    * 测试mybatis连接数据库
    * 新增用户信息
    * @return
    * *
    * */
    @RequestMapping(value = "/insertUserInfo",method = RequestMethod.GET)
    public String insertUserInfo() throws Exception{
        //打印日志
        log.info("开始插入用户信息");
            UserInfo userInfo = new UserInfo();
            //用户id
            userInfo.setId(UUID.randomUUID().toString());
            //用户用户名
            userInfo.setUsername("yangheng");
            //用户密码
            userInfo.setPassword(MD5.EncodeByMd5("123456"));
            //姓名
            userInfo.setName("哼哼");
            userService.insertUserInfo(userInfo);
            return "成功";

    }
}

来测试一下我们的新接口,访问 http://localhost:8080/user/insertUserInfo

访问  http://127.0.0.1:8080/user/getUserInfoByName

这里密码做了MD5加密

然后去数据库中查一下是否查入成功了

这样,最简单的mybatis整合就完成了

原文地址:https://www.cnblogs.com/GodHeng/p/9284180.html

时间: 2024-07-31 18:07:33

springboot(三).springboot用最简单的方式整合mybatis的相关文章

Spring Boot使用配置文件方式整合MyBatis

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-instance" xsi:schemaLocation="http://maven.apache.org/POM/4

springboot 获取控制器参数的几种方式

这里介绍springboot 获取控制器参数有四种方式 1.无注解下获取参数 2.使用@RequestParam获取参数 3.传递数组 4.通过URL传递参数 无注解下获取参数无注解下获取参数,需要控制器层参数与HTTP请求栏参数名称一致,这样后台就可以获取到请求栏的参数. /** * 无注解获取参数时,参数名称和HTTP请求参数必须一致 * @param name String 姓名 * @param age int 年龄 * @param score double 分数 * @return

利用SpringBoot+Logback手写一个简单的链路追踪

目录 一.实现原理 二.代码实战 三.测试 最近线上排查问题时候,发现请求太多导致日志错综复杂,没办法把用户在一次或多次请求的日志关联在一起,所以就利用SpringBoot+Logback手写了一个简单的链路追踪,下面详细介绍下. 一.实现原理 Spring Boot默认使用LogBack日志系统,并且已经引入了相关的jar包,所以我们无需任何配置便可以使用LogBack打印日志. MDC(Mapped Diagnostic Context,映射调试上下文)是log4j和logback提供的一种

SpringBoot整合Mybatis传参的几种方式

转自https://blog.csdn.net/irelia_/article/details/82347564 在SpringBoot整合Mybatis中,传递多个参数的方式和Spring整合Mybatis略微有点不同,下面主要总结三种常用的方式 一.顺序传参法 Mapper层: 传入需要的参数 public interface GoodsMapper { public Goods selectBy(String name,int num); }1234Mapper.xml: *使用这种方式,

【Springboot】Springboot整合Jasypt,让配置信息安全最优雅方便的方式

1 简介 在上一篇文章中,介绍了Jasypt及其用法,具体细节可以查看[Java库]如何使用优秀的加密库Jasypt来保护你的敏感信息?.如此利器,用之得当,那将事半功倍.本文将介绍Springboot整合Jasypt,实现配置信息的安全,如数据库连接.账号和密码.接口凭证信息等. Jasypt可以为Springboot加密的信息很多,主要有: System Property 系统变量 Envirnment Property 环境变量 Command Line argument 命令行参数 Ap

springboot整合mybatis(映射文件方式和注解方式)

springboot作为一个微服务框架,给我们开发人员提供极大的便利,秉着约定大于配置的原则,通过starter包的形式为我们做了许多默认的配置,在进行数据持久化到关系型数据库时,我们一般都会首选spring data jpa,springboot为我们提供了starter包,只需配置很少的参数,就能满足我们的需求,非常方便.但是当我们遇到一些比较复杂的查询.多表关联查询及动态sql时,mybatis则在这方面更出色,并且在使用mybatis时我们可以通过sql优化来提高查询效率,springb

最简单的SpringBoot整合MyBatis教程

本文就来看看在Spring Boot中MyBatis要如何使用. 工程创建 首先创建一个基本的Spring Boot工程,添加Web依赖,MyBatis依赖以及MySQL驱动依赖,如下:最简单的SpringBoot整合MyBatis教程创建成功后,添加Druid依赖,并且锁定MySQL驱动版本,完整的依赖如下: <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-

Springboot中IDE支持两种打包方式,即jar包和war包

Springboot中IDE支持两种打包方式,即jar包和war包 打包之前修改pom.xml中的packaging节点,改为jar或者war    在项目的根目录执行maven 命令clean package -Dmaven.test.skip=true,即可打包,如下 命令执行成功后,在target目录下即可看到打包好的文件 提示:若打的包为jar包,可通过java -jar guns-xxx.jar来启动Guns系统 原文地址:https://www.cnblogs.com/mracale

springboot使用之二:整合mybatis(xml方式)并添加PageHelper插件

整合mybatis实在前面项目的基础上进行的,前面项目具体整合请参照springboot使用之一. 一.整合mybatis 整合mybatis的时候可以从mybatis官网下载mybatis官网整合的项目mybatis-spring-boot-start.对原理感兴趣可以研究2一下,这里只叙述步骤. 引入依赖: <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybati