当前位置: 首页 > news >正文

网站文章收录慢网站开发的功能需求和模块划分

网站文章收录慢,网站开发的功能需求和模块划分,网站与客户端的区别,移动网站建设方面前言 SpringBoot3.0 开始最低要求 Java 17,虽然目前最新的版本为 JDK22,但是在官网上看到 JDK23 在今年9月又要发布了,感觉这 JDK 也有点太过于给力了 所以我们选择用目前的 LTS 版本 JDK21 就好了,不用追求最新的 springboot 版…

前言

SpringBoot3.0 开始最低要求 Java 17,虽然目前最新的版本为 JDK22,但是在官网上看到 JDK23 在今年9月又要发布了,感觉这 JDK 也有点太过于给力了

所以我们选择用目前的 LTS 版本 JDK21 就好了,不用追求最新的

springboot 版本

从官网的 https://start.spring.io/ 可以看到,目前的 SpringBoot 的最新正式版为 3.2.5,JAVA版本支持 17、21、22

mybatis-plus 版本

mybatis-plus 针对 springboot3.x 发布了新的依赖库,我们要选择带 spring-boot3 的版本

项目整合

项目资源下载

创建项目

JDK 选择 21,Java 选择 21

Spring Boot 选择 3.2.5,依赖选择 Spring Web

最后点击 Create 创建项目

pom.xml 文件

引入了 mybatis-plus 依赖包,还有对应生成器所需的依赖包

<?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.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.2.5</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>org.liurb</groupId><artifactId>Springboot3-CRUD</artifactId><version>0.0.1-SNAPSHOT</version><name>Springboot3-CRUD</name><description>Springboot3-CRUD</description><properties><java.version>21</java.version><mybatis-plus.version>3.5.6</mybatis-plus.version><freemarker.version>2.3.32</freemarker.version><mysql-connector-java.version>8.4.0</mysql-connector-java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-spring-boot3-starter</artifactId><version>${mybatis-plus.version}</version></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-generator</artifactId><version>${mybatis-plus.version}</version></dependency><dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><version>${mysql-connector-java.version}</version><scope>runtime</scope></dependency><dependency><groupId>org.freemarker</groupId><artifactId>freemarker</artifactId><version>${freemarker.version}</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>

生成代码

我们创建一张表 demo_user 进行测试

创建代码生成器

public class CodeGenerator {// 数据库连接配置private static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";private static final String JDBC_URL = "jdbc:mysql://192.168.1.31:3307/my_db?useSSL=false";private static final String JDBC_USER_NAME = "test_usr";private static final String JDBC_PASSOWRD = "test_usr#Passw0rd";// 输出目录private static final String MAIN_JAVA_PATH = "/src/main/java";private static final String MAIN_MAPPER_PATH = "/src/main/resources/mapper";// 包名和模块名private static final String PACKAGE_NAME = "org.liurb.springboot3";private static final String MODULE_NAME = "crud";// 表名,多个表使用英文逗号分割private static final String TBL_NAMES = "demo_user";// 表名的前缀,从表生成代码时会去掉前缀private static final String TABLE_PREFIX = "";// 生成代码入口main方法public static void main(String[] args) {FastAutoGenerator.create(JDBC_URL, JDBC_USER_NAME, JDBC_PASSOWRD).globalConfig(builder -> builder.author("liurb") // 设置作者.outputDir(Paths.get(System.getProperty("user.dir")) + MAIN_JAVA_PATH) // 输出路径.commentDate("yyyy-MM-dd").disableOpenDir() // 禁止打开输出目录).packageConfig(builder -> builder.parent(PACKAGE_NAME) // 设置需要生成的表名.moduleName(MODULE_NAME) // 设置过滤表前缀.pathInfo(Collections.singletonMap(OutputFile.xml, Paths.get(System.getProperty("user.dir")) + MAIN_MAPPER_PATH)) // 设置mapperXml生成路径).strategyConfig(builder -> builder.addInclude(TBL_NAMES) // 设置需要生成的表名.addTablePrefix(TABLE_PREFIX) // 设置过滤表前缀.entityBuilder() // 设置实体类.enableFileOverride() // 实体类覆盖.enableTableFieldAnnotation() // 属性加上说明注释.enableLombok() // 使用lombok.serviceBuilder() // 设置服务类.formatServiceFileName("%sService") // 格式化service类).templateEngine(new FreemarkerTemplateEngine()).execute();}}

运行生成 demo_user 表的对应代码

配置数据库链接

spring:application:name: Springboot3-CRUD#配置数据源datasource:url: jdbc:mysql://192.168.1.31:3307/my_db?useSSL=false&useUnicode=true&characterEncoding=utf-8username: test_usrpassword: test_usr#Passw0rddriver-class-name: com.mysql.cj.jdbc.Driverhikari:minimum-idle: 5maximum-pool-size: 10max-lifetime: 1800000idle-timeout: 180000connection-timeout: 30000

配置 MapperScan 注解

@SpringBootApplication
@MapperScan("org.liurb.**.mapper") // mapper 类路径
public class Springboot3CrudApplication {public static void main(String[] args) {SpringApplication.run(Springboot3CrudApplication.class, args);}}

测试用例

我们通过单元测试保存一条记录

@SpringBootTest
class Springboot3CrudApplicationTests {@ResourceDemoUserService demoUserService;@Testvoid contextLoads() {DemoUser record = new DemoUser();record.setName("李四");record.setAge(18);demoUserService.save(record);}}

记录保存成功

创建查询接口

在控制层加入查询接口,根据 用户id 查询对应的记录

@RestController
@RequestMapping("/crud/demoUser")
public class DemoUserController {@ResourceDemoUserService demoUserService;@GetMapping("/{userId}")public DemoUser user(@PathVariable Long userId) {return demoUserService.getById(userId);}}

请求返回

http://www.yayakq.cn/news/495681/

相关文章:

  • 做个网站网站需要多少钱智慧团建网页
  • 哪个公司做网站好佛山网页网站设计
  • 深圳专业网站建设制作互联网服务平台12123
  • 东莞长安网站优化岳阳新网网站建设有限公司
  • 百度竞价推广培训seo是什么缩写
  • 下载网站专用空间邯郸信息港最新招聘信息2023
  • 蒲城矿建设备制造厂网站太原网站排名系统
  • 手机做网站的软件怎么看网站文章的收录
  • 黄江网站设计防止入侵网站
  • 创建一个网站一个做网站的团队需要哪些人员
  • 建网站电话投资网站php源码
  • 建设网站的华丽语言临夏市建设局网站
  • 凡科做的网站打不开南通seo公司网站
  • 武威建设厅网站注册深圳公司流程
  • 如何设计好网站免费云服务器网站有哪些
  • 张家口网站建设价格2022年世界职业技能大赛
  • 做网站维护需要学什么广州番禺区有什么好玩的地方
  • 厦门网站设计公司哪家好福建电商小程序厦门开发公司网站制作评分标准
  • 晋城门户网站建设东莞微网站建设
  • 云上网站做等保佛山品牌网站建设
  • 二手车交易网站怎么做学网站建设需要下载什么
  • 网站设计公司市场容量做选择网站
  • 安徽经工建设集团网站ueditor 插件wordpress
  • 最牛视频网站建设广州建外贸网站公司
  • 做网站能带来什么ppt模板免费下载 素材医疗
  • 网站seo诊断站酷官网首页
  • 移动端网站开发标题设置河南建设监理协会官方网站
  • 池州网站建设公司项目优化seo
  • 网站备案 多少钱北京市房山建设培训学校网站
  • 凡科轻站做网站现在挣钱吗