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

wordpress软件站主题百度搜索排名购买

wordpress软件站主题,百度搜索排名购买,江西做网站找谁,网站报错401文章目录 1. 环境准备2. 创建基础实体类3. 编写 Mapper 接口4. Service 层5. 控制器层6. 分页功能7. 条件构造器8. 配置乐观锁9. 常见问题10. 代码生成器1. 创建数据库表2. 引入依赖3. 配置数据库连接4. 编写代码生成器5. 运行代码生成器6. 查看生成的代码 MyBatis-Plus 是一个… 文章目录 1. 环境准备2. 创建基础实体类3. 编写 Mapper 接口4. Service 层5. 控制器层6. 分页功能7. 条件构造器8. 配置乐观锁9. 常见问题10. 代码生成器1. 创建数据库表2. 引入依赖3. 配置数据库连接4. 编写代码生成器5. 运行代码生成器6. 查看生成的代码 MyBatis-Plus 是一个在 MyBatis 基础上进行增强的持久层框架主要目标是简化开发减少重复代码。 1. 环境准备 依赖添加 首先在你的项目中添加 MyBatis-Plus 的相关依赖。 如果是 Maven 项目pom.xml 中添加以下依赖 dependencygroupIdcom.baomidou/groupIdartifactIdmybatis-plus-boot-starter/artifactIdversion最新版本号/version /dependency其他依赖如 MySQL dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion8.0.27/version /dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-jdbc/artifactId /dependency配置数据库 在 application.yml 中配置你的数据库连接信息 spring:datasource:url: jdbc:mysql://localhost:3306/mybatis_plus?useUnicodetruecharacterEncodingUTF-8serverTimezoneAsia/Shanghaiusername: rootpassword: your_passworddriver-class-name: com.mysql.cj.jdbc.Driver mybatis-plus:mapper-locations: classpath:/mapper/**/*.xml2. 创建基础实体类 假设我们有一个 User 表 CREATE TABLE user (id BIGINT(20) NOT NULL AUTO_INCREMENT,name VARCHAR(30) DEFAULT NULL,age INT(11) DEFAULT NULL,email VARCHAR(50) DEFAULT NULL,PRIMARY KEY (id) );对应的实体类 User.java import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data;Data TableName(user) public class User {TableIdprivate Long id;private String name;private Integer age;private String email; }TableName用于指定数据库表名若类名与表名一致可以省略。TableId标识主键。 3. 编写 Mapper 接口 创建一个 UserMapper 接口继承 MyBatis-Plus 提供的 BaseMapper。 import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper;Mapper public interface UserMapper extends BaseMapperUser { }MyBatis-Plus 会自动生成常用的 CRUD 方法常见方法如下 insert()deleteById()updateById()selectById()selectList() 4. Service 层 为了更好地管理业务逻辑可以创建 Service 层。MyBatis-Plus 提供了 IService 和 ServiceImpl 作为基础类。 import com.baomidou.mybatisplus.extension.service.IService;public interface UserService extends IServiceUser { }实现类 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service;Service public class UserServiceImpl extends ServiceImplUserMapper, User implements UserService { }ServiceImpl 类提供了基本的增删改查功能。 5. 控制器层 编写控制器层来处理客户端的请求 import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*;import java.util.List;RestController RequestMapping(/user) public class UserController {Autowiredprivate UserService userService;// 查询所有用户GetMapping(/list)public ListUser list() {return userService.list();}// 根据ID查询用户GetMapping(/{id})public User getById(PathVariable(id) Long id) {return userService.getById(id);}// 新增用户PostMapping(/add)public boolean add(RequestBody User user) {return userService.save(user);}// 修改用户PutMapping(/update)public boolean update(RequestBody User user) {return userService.updateById(user);}// 删除用户DeleteMapping(/delete/{id})public boolean delete(PathVariable(id) Long id) {return userService.removeById(id);} }6. 分页功能 MyBatis-Plus 提供了简单的分页功能只需添加 Page 参数即可。 依赖 dependencygroupIdcom.github.pagehelper/groupIdartifactIdpagehelper-spring-boot-starter/artifactIdversion最新版本/version /dependencyController 中添加分页查询 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;RestController RequestMapping(/user) public class UserController {Autowiredprivate UserService userService;// 分页查询GetMapping(/page)public PageUser page(RequestParam(defaultValue 1) int current,RequestParam(defaultValue 10) int size) {PageUser page new Page(current, size);return userService.page(page);} }7. 条件构造器 MyBatis-Plus 提供了非常强大的条件构造器 QueryWrapper可用于复杂查询。 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;GetMapping(/search) public ListUser search(RequestParam String name, RequestParam Integer age) {QueryWrapperUser queryWrapper new QueryWrapper();queryWrapper.like(name, name).eq(age, age);return userService.list(queryWrapper); }8. 配置乐观锁 乐观锁可以通过版本号字段实现。首先在实体类中添加 Version 注解。 import com.baomidou.mybatisplus.annotation.Version;Data TableName(user) public class User {TableIdprivate Long id;private String name;private Integer age;private String email;Versionprivate Integer version; }然后在 application.yml 中启用乐观锁插件 mybatis-plus:configuration:optimistic-locker: true9. 常见问题 MyBatis-Plus 自定义 SQL 查询 如果需要自定义 SQL可以在 UserMapper 接口中添加注解或者编写 XML 文件 Select(SELECT * FROM user WHERE age #{age}) ListUser selectByAge(Param(age) Integer age);事务管理 可以通过 Spring 的 Transactional 注解来管理事务。 Transactional public boolean saveUser(User user) {return userService.save(user); }MyBatis-Plus 极大简化了数据库操作的开发工作提供了 CRUD 方法、分页、条件构造器、乐观锁等常用功能同时也可以支持自定义 SQL 查询。 10. 代码生成器 下面是一个详细的 MyBatis-Plus 代码生成器教程从创建数据库表开始到生成代码的步骤 1. 创建数据库表 首先你需要在你的数据库中创建一个表。例如我们创建一个名为 user 的表 CREATE DATABASE mybatis_plus_db CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;USE mybatis_plus_db;CREATE TABLE user (id BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 主键ID,name VARCHAR(50) NOT NULL COMMENT 用户名,age INT(11) DEFAULT NULL COMMENT 年龄,email VARCHAR(100) DEFAULT NULL COMMENT 邮箱,PRIMARY KEY (id) ) COMMENT用户表;2. 引入依赖 在你的 Maven 项目的 pom.xml 中添加 MyBatis-Plus 和代码生成器的依赖 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.example/groupIdartifactIdmybatis-plus-demo/artifactIdversion1.0-SNAPSHOT/versionpropertiesmaven.compiler.source21/maven.compiler.sourcemaven.compiler.target21/maven.compiler.targetproject.build.sourceEncodingUTF-8/project.build.sourceEncodingslf4j.version1.7.36/slf4j.version/propertiesdependencies!-- MyBatis-Plus 核心包 --dependencygroupIdcom.baomidou/groupIdartifactIdmybatis-plus-boot-starter/artifactIdversion3.5.2/version/dependency!-- MyBatis-Plus 代码生成器 --dependencygroupIdcom.baomidou/groupIdartifactIdmybatis-plus-generator/artifactIdversion3.5.2/version/dependencydependencygroupIdorg.apache.velocity/groupIdartifactIdvelocity-engine-core/artifactIdversion2.3/version !-- 或者根据需求使用最新的版本 --/dependencydependencygroupIdorg.slf4j/groupIdartifactIdslf4j-api/artifactIdversion${slf4j.version}/version/dependencydependencygroupIdorg.slf4j/groupIdartifactIdslf4j-simple/artifactIdversion${slf4j.version}/version/dependency!-- MySQL 驱动 --dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion8.0.27/version/dependency/dependencies/project3. 配置数据库连接 在 application.yml 或 application.properties 中配置你的数据库连接 spring:datasource:url: jdbc:mysql://localhost:3306/mybatis_plus_db?useSSLfalseserverTimezoneUTCusername: your_usernamepassword: your_passworddriver-class-name: com.mysql.cj.jdbc.Driver4. 编写代码生成器 在你的项目中创建一个新的 Java 类例如 CodeGenerator用来生成代码 package com.example;import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.generator.FastAutoGenerator; import com.baomidou.mybatisplus.generator.config.*; import com.baomidou.mybatisplus.generator.config.rules.DbColumnType; import com.baomidou.mybatisplus.generator.engine.VelocityTemplateEngine; import com.baomidou.mybatisplus.generator.fill.Column;import java.sql.Types; import java.util.Collections;public class CodeGenerator {public static void main(String[] args) {FastAutoGenerator.create(jdbc:mysql://localhost:3306/mybatis_plus_db ?useUnicodetruecharacterEncodingUTF-8 useSSLtrueserverTimezoneAsia/Shanghai,root, password123)// 全局配置.globalConfig(builder - {builder.author(username)// 代码生成后不打开文件夹.disableOpenDir()// 时间日期格式默认为 yyyy-MM-dd.commentDate(yyyy-MM-dd HH:mm:ss)// 文件生成位置.outputDir(System.getProperty(user.dir) /src/main/java);})// 包配置.packageConfig(builder - {// 包路径builder.parent(com.example)// entity 命名(controller/service/mapper 一样适用).entity(pojo)// 路径配置信息.pathInfo(Collections.singletonMap(OutputFile.xml,System.getProperty(user.dir) /src/main/resources/com/username/MybatisPlus));})// 策略配置.strategyConfig(builder - {// 精准添加生成代码的表也可以进行模糊匹配 like/模糊排除表 noLike/精准排除 addExcludebuilder.addInclude(user, user_id_card)// 实体类配置.entityBuilder()// 开启 lombok 生成 GetterSetter.enableLombok()// 字段注解.enableTableFieldAnnotation()// 雪花算法.idType(IdType.ASSIGN_ID)// 表字段自动填充.addTableFills(new Column(created_time, FieldFill.INSERT)).addTableFills(new Column(modified_time, FieldFill.INSERT_UPDATE)).build()// 控制器配置.controllerBuilder().enableRestStyle().mapperBuilder().build();})// 使用默认 Velocity 引擎模板生成代码.templateEngine(new VelocityTemplateEngine()).execute();} }5. 运行代码生成器 确保你已连接到数据库并在你的 IDE 中运行 CodeGenerator 类。生成的代码会自动输出到你指定的目录如 src/main/java。 6. 查看生成的代码 在 src/main/java 目录下你会看到生成的实体类、Mapper 接口、Service 接口及其实现类、Controller 等文件。
http://www.hkea.cn/news/14433706/

相关文章:

  • 我做动作你来猜的网站wordpress 图片压缩插件
  • 58同城做网站的电话wordpress新闻
  • 武进网站制作公司关于网络营销的方法
  • 网站的外链接数自己可以做一个网站吗
  • 网站开发网站北京微网站建设公司
  • 网站的tdk指的是什么wordpress固定主题
  • 电子商务网站建设与管理的背景网站建立数据库连接时出错
  • 辽宁朝阳网站建设公司wordpress自己写页面
  • 52麻将官方网站做代理深圳哪个网站好推广一点
  • 江苏定制网站建设费用网站信息发布和内容建设自查报告
  • 自考免费自学网站网站代码需要注意什么问题吗
  • 做网站用html还是python好网站的流程图
  • 网站建设详细描述产品的是什么意思淄博做网站的公司排名
  • 浙江网站建设dyfwzx临沂企业网站建站模板
  • 建一个网站需要哪些知识做网站按页面收费
  • 广告网站模板下载 迅雷下载安装想代理个网站建设平台
  • wordpress加备案号徐州百度搜索优化
  • 网站建设费用兴田德润团队semseo
  • wordpress 整站移植首页定制
  • 电子商务网站设计成功的要素wordpress内容折叠
  • 企业建设网站价格电商网站可以用dw做
  • 外贸购物网站建站不用下载就可以登录微信
  • 浙江建设厅网站怎么进不去wordpress登陆地址修改
  • 做瞹瞹小视频网站河南建筑材料信息网
  • wordpress建立多站点wordpress主题付费
  • 德州极速网站建设百家号有没有什么网站可以直接在网上做试题并且可以给你判出来
  • 网站建设手机端pc端分开semiconductor是什么意思
  • 模拟网站平台怎么做建材类网站建设需要的资料
  • 餐饮网站建设的目的网站建设内容与实现功能
  • 汕头建网站教育网站开发需求说明书