Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

🔥 Spring-Boot-Plus is an easy-to-use, high-speed, high-efficient,feature-rich, open source spring boot scaffolding. 🚀

License

NotificationsYou must be signed in to change notification settings

geekidea/spring-boot-plus

Repository files navigation

spring-boot-plus logo

Everyone can develop projects independently, quickly and efficiently!

spring-boot-plus versionspring boot versionspring boot versioncode style

What is spring-boot-plus?

Aeasy-to-use,high-speed,high-efficient,feature-rich,open source spring boot scaffolding.

spring-boot-plus is a background rapid development framework that integrates spring boot common development components.

Purpose

Everyone can develop projects independently, quickly and efficiently!

Open source License MIT-License

Any individual or company can conduct secondary development based on this framework for commercial use without authorization!

Vue ProjectVUE3+TS

Features

  • Integrated spring boot common development component set, common configuration, AOP log, etc
  • Maven Project
  • Integrated mybatis-plus fast dao operation
  • Quickly generate background code:entity/param/vo/controller/service/mapper/xml
  • Integrated Swagger/Knife4j, automatic generation of api documents
  • Integrated Redis Cache
  • Integration HikariCP connection pool, A solid, high-performance, JDBC connection pool at last.

Source code directory structure

spring-boot-plus├── docs│ ├── bin│ │ └── install│ ├── config│ ├── db│ └── img├── logs└── src    ├── main    │ ├── java    │ │ └── io    │ │     └── geekidea    │ │         └── boot    │ │             ├── auth    │ │             ├── common    │ │             ├── config    │ │             ├── demo    │ │             ├── framework    │ │             ├── system    │ │             ├── user    │ │             └── util    │ │             └── SpringBootPlusApplication.java    │ └── resources    │     ├── mapper    │     └── static    │     ├── application-dev.yml    │     ├── application-prod.yml    │     ├── application-test.yml    │     ├── application.yml    │     ├── banner.txt    │     ├── ip2region.xdb    │     ├── logback-spring.xml    └── test        ├── java        │ └── io        │     └── geekidea        │         └── boot        │             ├── generator        │             └── system        └── resources            └── templates

Project Environment

NameVersionRemark
JDK1.8+JDK1.8 and above
MySQL5.7+5.7 and above
Redis3.2+

Technology stack

ComponentVersionRemark
Spring Boot2.7.18
Mybatis3.5.13DAO Framework
Mybatis Plus3.5.4.1mybatis Enhanced framework
Fastjson2.0.42JSON processing toolset
SwaggerV3Api document generation tool
Knife4j4.3.0Api document generation tool
commons-lang33.14.0Apache language toolkit
commons-io2.15.0Apache IO Toolkit
commons-codec1.16.0Apache Toolkit such as encryption and decryption
commons-collections44.4.4Apache collections toolkit
hibernate-validator6.2.5.FinalValidator toolkit
hutool-all5.8.23Common toolset
lombok1.18.30Automatically plugs

Project Link Diagram

项目调用链路图

Quick Start

Clone spring-boot-plus

git clone https://github.com/geekidea/spring-boot-plus.gitcd spring-boot-plus

Maven Build

dev environment is used by default, The configuration file:application-dev.yml

mvn clean package -Pdev

5 Minutes Finish CRUD

1. Create Table

-- ------------------------------ Table structure for foo_bar-- ----------------------------DROPTABLE IF EXISTS`foo_bar`;CREATETABLE `foo_bar`(`id`bigint(20)NOT NULL COMMENT'ID',`name`varchar(20)NOT NULL COMMENT'Name',`foo`varchar(20)          DEFAULTNULL COMMENT'Foo',`bar`varchar(20)NOT NULL COMMENT'Bar',`remark`varchar(200)         DEFAULTNULL COMMENT'Remark',`state`int(11)NOT NULL DEFAULT'1' COMMENT'State,0:Disable,1:Enable',`version`int(11)NOT NULL DEFAULT'0' COMMENT'Version',`create_time`timestampNULL     DEFAULTCURRENT_TIMESTAMP COMMENT'Create Time',`update_time`timestampNULL     DEFAULTNULL COMMENT'Update Time',PRIMARY KEY (`id`)) ENGINE= InnoDB  DEFAULT CHARSET= utf8mb4  COLLATE= utf8mb4_general_ci COMMENT='FooBar';createtablefoo_bar(    idbigintnot null comment'ID'primary key,    namevarchar(20)not null comment'Name',    foovarchar(100)null comment'Foo',    barvarchar(100)null comment'Bar',    remarkvarchar(200)null comment'Remark',    statustinyint(1) default1not null comment'Status,0:Disable,1:Enable',    create_timetimestamp  defaultCURRENT_TIMESTAMPnull comment'Create Time',    update_timetimestampnull comment'Update Time')    comment'FooBar';-- ------------------------------ Records of foo_bar-- ----------------------------INSERT INTO foo_bar (id, name, foo, bar, remark, status, create_time, update_time)VALUES (1,'FooBar','Foo','Bar',null,1,'2023-07-01 21:01:10',null);

2. Generator CRUD CODE

Code generation entry class, in the generator module

src/test/java/io/geekidea/boot/generator/Generator.java
/** * spring-boot-plus Code Generator Main Class * * @author geekidea * @date 2022/3/16 **/publicclassGenerator {publicstaticvoidmain(String[]args)throwsException {GeneratorConfigconfig =newGeneratorConfig();// 项目信息配置config.setParentPackage("io.geekidea.boot" )                .setModuleName("foobar" )                .setAuthor("geekidea" );// 表名称和需要去掉的表前缀config.setTableNames("foo_bar" )                .setTablePrefix("");// 是否覆盖已有文件config.setFileOverride(true);// 是否只更新实体类config.setOnlyOverrideEntity(false);GenerateHandlerhandler =newGenerateHandler();handler.generator(config);    }}

Generated code structure

├── controller│ └── FooBarController.java├── dto│ ├── FooBarDto.java│ └── FooBarUpdateDto.java├── entity│ └── FooBar.java├── mapper│ └── FooBarMapper.java├── query│ └── FooBarQuery.java├── service│ ├── FooBarService.java│ └── impl│     └── FooBarServiceImp.java└── vo    ├── FooBarVo.java    └── FooBarVo.javaresources└── mapper    └── foobar        └── FooBarMapper.xml

Code Generator Templates

Use Velocity template to generate code, you can customize and modify the code to generate template

src/test/resources└── templates    ├── addDto.java.vm          Add DTO generator template    ├── controller.java.vm      Controller generator template    ├── entity.java.vm          Entity generator template    ├── infoVo.java.vm          Detail VO generator template    ├── mapper.java.vm          Mapper  generator template    ├── mapper.xml.vm           Mapper xml  generator template    ├── query.java.vm           Page Query  generator template    ├── service.java.vm         Service  generator template    ├── serviceImpl.java.vm     Service implement  generator template    ├── updateDto.java.vm       Update DTO generator template    └── vo.java.vm              List VO generator template

3. Startup Project

Project Main Class: SpringBootPlusApplicationhttp://localhost:8888

src/main/java/io/geekidea/boot/SpringBootPlusApplication.java
/** * spring-boot-plus Project Main Class * * @author geekidea * @date 2022-3-16 */@EnableAsync@SpringBootApplicationpublicclassSpringBootPlusApplication {privatestaticfinalStringBACKSLASH ="/";publicstaticvoidmain(String[]args)throwsException {ConfigurableApplicationContextcontext =SpringApplication.run(SpringBootPlusApplication.class,args);// 打印项目信息printlnProjectInfo(context);System.out.println("  _____ _______       _____ _______    _____ _    _  _____ _____ ______  _____ _____\n" +" / ____|__   __|/\\   |  __\\__   __|  / ____| |  | |/ ____/ ____|  ____|/ ____/ ____|\n" +"| (___    | |  /\\  | |__) | | |    | (___ | |  | | |   | |    | |__  | (___| (___\n" +"\\___\\   | | / /\\\\ |  _  /  | |\\___\\| |  | | |   | |    |  __|\\___\\\\___\\\n" +" ____) |  | |/ ____\\| |\\\\  | |     ____) | |__| | |___| |____| |____ ____) |___) |\n" +"|_____/   |_/_/\\_\\_|\\_\\ |_|    |_____/\\____/\\_____\\_____|______|_____/_____/\n");    }}

4. Access Swagger Docs

http://localhost:8888/swagger-ui/index.htmlswagger-ui.png

5. Access Knife4j Docs

http://localhost:8888/doc.htmlknife4j.png

spring-boot-plus-vue Vue3 Project

System User List

System User List

System Role List

System Role List

System Menu List

System Menu List

System Department

System Department List

System Log List

System Log ListSystem Log Detail

User Profile

User Profile

spring-boot-plus Videos 🎥

QQ群 625301326微信公众号 geekideaio
spring-boot-plus QQ GroupWechat Official Account
微信技术交流群业务咨询商务合作
微信群业务咨询商务合作

License

spring-boot-plus is under the MIT-License. See theLICENSE file for details.

About

🔥 Spring-Boot-Plus is an easy-to-use, high-speed, high-efficient,feature-rich, open source spring boot scaffolding. 🚀

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages


[8]ページ先頭

©2009-2026 Movatter.jp