package com.happy.video.service.impl;
import com.happy.video.mapper.UserMapper;
import com.happy.video.pojo.User;
import com.happy.video.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* Created by zhonglq on 2019/1/10.
*/
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public int deleteByPrimaryKey(Integer userId) {
return userMapper.deleteByPrimaryKey(userId);
}
@Override
public int insert(User record) {
return userMapper.insert(record);
}
@Override
public int insertSelective(User record) {
return userMapper.insertSelective(record);
}
@Override
public User selectByPrimaryKey(Integer userId) {
return userMapper.selectByPrimaryKey(userId);
}
@Override
public int updateByPrimaryKeySelective(User record) {
return userMapper.updateByPrimaryKeySelective(record);
}
@Override
public int updateByPrimaryKey(User record) {
return userMapper.updateByPrimaryKey(record);
}
}
SpringBoot集成Mybatis及如何使用mybatis-generator插件生成代码


在现代Java开发中,SpringBoot框架因其简洁的配置和快速的开发能力而备受青睐。而Mybatis作为一款轻量级的持久层框架,以其灵活的SQL映射和强大的动态SQL功能,同样广受开发者喜爱。当这两者结合时,可以为开发人员提供一个高效且易于维护的数据访问解决方案。本文将详细探讨如何在SpringBoot项目中集成Mybatis,并使用mybatis-generator插件自动生成代码,以提升开发效率。 集成Mybatis到SpringBoot项目中,主要涉及以下步骤: 1. **添加依赖**:在`pom.xml`文件中引入SpringBoot对Mybatis的支持以及Mybatis本身的相关依赖,包括`spring-boot-starter-data-jpa`、`mybatis-spring-boot-starter`和`mybatis`。 2. **配置Mybatis**:在`application.yml`或`application.properties`中配置Mybatis的相关属性,例如数据源、Mapper扫描路径、SqlSessionFactory等。例如,在`application.yml`中,你可以写入以下配置: ```yaml spring: datasource: url: jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=utf8 username: root password: password driver-class-name: com.mysql.jdbc.Driver mybatis: mapper-locations: classpath:mapper/*.xml configuration: map-underscore-to-camel-case: true ``` 接下来,我们讨论如何使用mybatis-generator插件来自动化代码生成。 1. **引入Generator插件**:在`pom.xml`中添加mybatis-generator的依赖,并配置相关插件信息,指定数据库连接、表名、生成的Java模型、Mapper接口和XML文件等。 2. **配置generatorConfig.xml**:这是mybatis-generator的主配置文件,用于定义生成代码的模板和规则。例如: ```xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <generatorConfiguration> <context id="MySQL" targetRuntime="MyBatis3"> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/testdb" userId="root" password="password"/> <javaModelGenerator targetPackage="com.example.model" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> </javaModelGenerator> <sqlMapGenerator targetPackage="com.example.mapper" targetProject="src/main/resources/mapper"> <property name="enableSubPackages" value="true"/> </sqlMapGenerator> <javaClientGenerator targetPackage="com.example.mapper" targetProject="src/main/java" type="XMLMAPPER"> <property name="enableSubPackages" value="true"/> </javaClientGenerator> <table tableName="small_video" domainObjectName="SmallVideo" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"/> </context> </generatorConfiguration> ``` 在这个配置中,我们指定了数据库连接信息,生成的Java模型、Mapper接口和XML文件的路径,以及要生成代码的表(这里是`small_video`表)。 3. **执行生成**:在命令行中运行`mvn mybatis-generator:generate`,mybatis-generator插件会根据配置生成对应的Java类、Mapper接口和XML文件。 4. **整合到SpringBoot**:将生成的Mapper接口注入到Service或者Controller中,通过@Autowired注解进行依赖注入,然后就可以在业务逻辑中调用Mapper方法进行数据库操作了。 通过以上步骤,SpringBoot项目已经成功集成了Mybatis,并且利用mybatis-generator插件自动生成了与`small_video`表相关的实体类、Mapper接口和XML文件,极大地提高了开发效率。在实际开发过程中,可以根据项目需求调整配置,生成更符合项目规范的代码结构。同时,mybatis-generator支持自定义模板,可以根据团队的编码风格定制化生成的代码。

























































































































- 1

- #完美解决问题
- #运行顺畅
- #内容详尽
- #全网独家
- #注释完整

- 粉丝: 1233
- 资源: 9
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- [AB PLC例程源码][MMS_043640]DeviceNet Diagnostic.zip
- [AB PLC例程源码][MMS_039840]ASCII_Messaging.zip
- [AB PLC例程源码][MMS_040306]Configuration of AMCI 3601 Single Axis Stepper Motor Controller with.zip
- [AB PLC例程源码][MMS_040307]MD60, MD65 Drives control with CompactLogix.zip
- [AB PLC例程源码][MMS_040305]ASCII Read , Write for CompactLogix & Bul90.zip
- [AB PLC例程源码][MMS_040316]DINT Conversion of INT data type and Arithmatic comparison .zip
- [AB PLC例程源码][MMS_040315]Double INC and Double DEC of INT datatype.zip
- [AB PLC例程源码][MMS_040317]DINT Conversion of INT data type and Arithmetic operations like Div, Mul.zip
- [AB PLC例程源码][MMS_040319]Swaps Byte in an array.zip
- [AB PLC例程源码][MMS_040318]DINT data type to String data type conversion.zip
- [AB PLC例程源码][MMS_040322]Decoding of Boolean array.zip
- [AB PLC例程源码][MMS_040323]Encoding of Boolean array.zip
- [AB PLC例程源码][MMS_040324]Value search in an array.zip
- [AB PLC例程源码][MMS_040325]Bubble sorting.zip
- [AB PLC例程源码][MMS_040326]Level control using FBD.zip
- [AB PLC例程源码][MMS_040327]Ramp Control of Electrical parameters.zip


