根据数据表自动生成实体类、Mapper、Service、ServiceImpl、Controller
一、依赖
1、pom.
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.3.1.tmp</version></dependency><dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity</artifactId> <version>1.7</version></dependency>Velocity(默认)、Freemarker、Beetl
数据库中的表

二、启动类
package com.md.mybatisplus;import com.baomidou.mybatisplus.annotation.DbType;import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;import com.baomidou.mybatisplus.core.toolkit.StringUtils;import com.baomidou.mybatisplus.generator.AutoGenerator;import com.baomidou.mybatisplus.generator.config.DataSourceConfig;import com.baomidou.mybatisplus.generator.config.GlobalConfig;import com.baomidou.mybatisplus.generator.config.PackageConfig;import com.baomidou.mybatisplus.generator.config.StrategyConfig;import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;import java.util.Scanner;/** * @author md * @Desc * @date 2020/10/26 22:13 */public class main { /** * <p> * 读取控制台内容 * </p> */ public static String scanner(String tip) { Scanner scanner = new Scanner(System.in); StringBuilder help = new StringBuilder(); help.append("请输入" + tip + ":"); System.out.println(help.toString()); if (scanner.hasNext()) { String ipt = scanner.next(); if (StringUtils.isNotBlank(ipt)) { return ipt; } } throw new MybatisPlusException("请输入正确的" + tip + "!"); } public static void main(String[] args) { //创建generator对象 AutoGenerator autoGenerator = new AutoGenerator(); //数据源 DataSourceConfig dataSourceConfig = new DataSourceConfig(); dataSourceConfig.setDbType(DbType.MYSQL); dataSourceConfig.setUrl("jdbc:mysql://localhost:3306/springboot?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=UTF-8"); dataSourceConfig.setUsername("root"); dataSourceConfig.setPassword("123456"); dataSourceConfig.setDriverName("com.mysql.cj.jdbc.Driver"); autoGenerator.setDataSource(dataSourceConfig); //全局配置 GlobalConfig globalConfig = new GlobalConfig(); // 工程的绝对路径+下面的目录,根据自己的路径修改 globalConfig.setOutputDir(System.getProperty("user.dir")+"/02-auto/src/main/java"); globalConfig.setOpen(false); globalConfig.setAuthor("md"); globalConfig.setServiceName("%sService"); autoGenerator.setGlobalConfig(globalConfig); //包信息 PackageConfig packageConfig = new PackageConfig(); packageConfig.setParent("com.md.mybatisplus"); // 生成的module packageConfig.setModuleName(scanner("模块名:")); packageConfig.setController("controller"); packageConfig.setService("service"); packageConfig.setServiceImpl("service.impl"); packageConfig.setMapper("mapper"); packageConfig.setEntity("entity"); autoGenerator.setPackageInfo(packageConfig); //配置策略 StrategyConfig strategyConfig = new StrategyConfig(); // 自动添加Lombok注解 strategyConfig.setEntityLombokModel(true); // 数据库中的下划线改驼峰 strategyConfig.setColumnNaming(NamingStrategy.underline_to_camel); strategyConfig.setNaming(NamingStrategy.underline_to_camel); // 可以指定表名 strategyConfig.setInclude(scanner("表名,多个英文逗号分割").split(",")); autoGenerator.setStrategy(strategyConfig); autoGenerator.execute(); }}
这样就基本生成,默认有很多方法,可以直接使用
三、测试
1. Application
加入mapper
package com.md.mybatisplus;import org.mybatis.spring.annotation.MapperScan;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication@MapperScan(value = "com.md.mybatisplus.user.mapper")public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); }}2. 主配置文件
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/springboot?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=UTF-8spring.datasource.username=rootspring.datasource.password=123456# 专门用于打印日志mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl#thymeleaf 模版前缀,默认可以不写spring.thymeleaf.prefix=classpath:/templates/#thymeleaf 模版后缀,默认可以不写spring.thymeleaf.suffix=.html4. UserController
package com.md.mybatisplus.user.controller;import com.md.mybatisplus.user.service.UserService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.stereotype.Controller;import org.springframework.web.servlet.ModelAndView;/** * <p> * 前端控制器 * </p> * * @author md * @since 2020-10-26 */@Controller@RequestMapping("/user/user")public class UserController { @Autowired private UserService userService; @GetMapping("/index") public ModelAndView index(){ ModelAndView mv = new ModelAndView(); mv.setViewName("index"); // 自动生成的方法,直接使用,查询数据库中的全部数据 mv.addObject("users",userService.list()); return mv; }}5. index
templates下的index.html
<!DOCTYPE html><html lang="en" 此时访问页面就可以访问到数据库中的数据

原文转载:http://www.shaoqun.com/a/501428.html
贝恩资本:https://www.ikjzd.com/w/1336
黄劲:https://www.ikjzd.com/w/2426
根据数据表自动生成实体类、Mapper、Service、ServiceImpl、Controller一、依赖1、pom.<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-generator</artifactId><version>3.3.1
启明星软件:启明星软件
东杰智能:东杰智能
2020五一怎么放假的?五一假怎么安排?:2020五一怎么放假的?五一假怎么安排?
封号数天的亚马逊傲基账号被解封!傲基账号到底因何被封?:封号数天的亚马逊傲基账号被解封!傲基账号到底因何被封?
惠州巽寮湾有什么好玩的?:惠州巽寮湾有什么好玩的?
No comments:
Post a Comment