国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

課程項目設(shè)計--項目建立--宿舍管理系統(tǒng)--springboot后端

這篇具有很好參考價值的文章主要介紹了課程項目設(shè)計--項目建立--宿舍管理系統(tǒng)--springboot后端。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前要
項目設(shè)計–宿舍管理系統(tǒng)

項目建立

課程項目設(shè)計--項目建立--宿舍管理系統(tǒng)--springboot后端,項目,spring boot,后端,java

太長了,修改一下
課程項目設(shè)計--項目建立--宿舍管理系統(tǒng)--springboot后端,項目,spring boot,后端,java

導(dǎo)入依賴

暫時先加上下面依賴,還有的話以后在看

        <java.version>17</java.version>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        <hutool.version>5.8.15</hutool.version>
        <druid.version>1.2.16</druid.version>
        <mybatis-plus.version>3.5.3.1</mybatis-plus.version>
        <xxl-job.version>2.4.0</xxl-job.version>

        <java-jwt.version>4.2.1</java-jwt.version>
        <easyexcel.version>3.2.1</easyexcel.version>
        <easy-captcha.version>1.6.2</easy-captcha.version>
        <knife4j.version>4.0.0</knife4j.version>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-validation</artifactId>
        </dependency>
        <!--mybatis-plus依賴-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>${mybatis-plus.version}</version>
        </dependency>
        <!--jwt令牌-->
        <dependency>
            <groupId>com.auth0</groupId>
            <artifactId>java-jwt</artifactId>
            <version>${java-jwt.version}</version>
        </dependency>
        <!--連接池-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>${druid.version}</version>
        </dependency>
        <!--hutool工具包-->
        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>${hutool.version}</version>
        </dependency>
        <!--xxl-job定時任務(wù)-->
        <dependency>
            <groupId>com.xuxueli</groupId>
            <artifactId>xxl-job</artifactId>
            <version>${xxl-job.version}</version>
        </dependency>
        <!--excel操作-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>easyexcel</artifactId>
            <version>${easyexcel.version}</version>
        </dependency>
        <!-- 驗證碼 -->
        <dependency>
            <groupId>com.github.whvcse</groupId>
            <artifactId>easy-captcha</artifactId>
            <version>${easy-captcha.version}</version>
        </dependency>
        <!--swagger-->
        <dependency>
            <groupId>com.github.xiaoymin</groupId>
            <artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
            <version>${knife4j.version}</version>
        </dependency>
       

配置文件

application.yml

spring:
  application:
    name: xiaoyu
  profiles:
    active: dev

application-dev.yml

server:
  port: 8080

spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: 
    username: 
    password: 
  data:
    redis:
      database: 6
      host: 
      port: 
      password: 
      timeout: 10s
      lettuce:
        pool:
          # 連接池最大連接數(shù) 默認(rèn)8 ,負(fù)數(shù)表示沒有限制
          max-active: 8
          # 連接池最大阻塞等待時間(使用負(fù)值表示沒有限制) 默認(rèn)-1
          max-wait: -1
          # 連接池中的最大空閑連接 默認(rèn)8
          max-idle: 8
          # 連接池中的最小空閑連接 默認(rèn)0
          min-idle: 0
mybatis-plus:
  global-config:
    db-config:
      # 主鍵ID類型
      id-type: none
      # 邏輯刪除字段名稱
      logic-delete-field: deleted
      # 邏輯刪除-刪除值
      logic-delete-value: 1
      # 邏輯刪除-未刪除值
      logic-not-delete-value: 0
  configuration:
    # 駝峰下劃線轉(zhuǎn)換
    map-underscore-to-camel-case: true
    # 這個配置會將執(zhí)行的sql打印出來,在開發(fā)或測試的時候可以用
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl


# 認(rèn)證配置
auth:
  token:
    secret_key: 
    # token 有效期(單位:秒)
    ttl: 


# springdoc配置: https://springdoc.org/properties.html
springdoc:
  swagger-ui:
    enabled: true
    operationsSorter: alpha
    tags-sorter: alpha
  api-docs:
    enabled: true

# 驗證碼配置
easy-captcha:
  # 驗證碼類型: arithmetic-算術(shù)
  type: arithmetic
  # 驗證碼有效時間(單位:秒)
  ttl: 120

# xxl-job 定時任務(wù)配置
xxl:
  job:
    admin:
      # 多個地址使用,分割
      addresses:
    accessToken:
    executor:
      appname: 
      address:
      ip:
      port: 
      logpath:
      logretentiondays: 

# 系統(tǒng)配置
system:
  config:
    # 數(shù)據(jù)權(quán)限開關(guān)
    data-permission-enabled: 
    # 定時任務(wù) xxl-job 開關(guān)
    xxl-job-enabled: 
    # WebSocket 開關(guān)
    websocket-enabled: 

配置目錄結(jié)構(gòu)

課程項目設(shè)計--項目建立--宿舍管理系統(tǒng)--springboot后端,項目,spring boot,后端,java
新加一個handler包,用于像mybatis自動填充的處理配置

config配置

mybatis-plus

具體配置mybaits-plus配置

注解

// 配置文件
@Configuration
// 開啟事務(wù)管理
@EnableTransactionManagement
// mapper掃描
@MapperScan("com.yu.mapper")

插件bean
這里先只配置分頁插件

@Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        //分頁插件
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));

        return interceptor;
    }

自動填充bean

    @Bean
    public GlobalConfig globalConfig() {
        GlobalConfig globalConfig = new GlobalConfig();
        globalConfig.setMetaObjectHandler(new MyMetaObjectHandler());
        return globalConfig;
    }

這里有2種寫法,注釋掉的是低版本的。高版本從3.3.0開始可以使用。不過3.3.0不要使用。有bug。
課程項目設(shè)計--項目建立--宿舍管理系統(tǒng)--springboot后端,項目,spring boot,后端,java

@Component
public class MyMetaObjectHandler implements MetaObjectHandler {

    /**
     * 新增填充創(chuàng)建時間
     *
     * @param metaObject
     */
    @Override
    public void insertFill(MetaObject metaObject) {
//        this.strictInsertFill(metaObject, "createTime", LocalDateTime::now, LocalDateTime.class);
//        this.strictUpdateFill(metaObject, "updateTime", LocalDateTime::now, LocalDateTime.class);
        this.fillStrategy(metaObject,"createTime",LocalDateTime.now());
        this.fillStrategy(metaObject,"updateTime",LocalDateTime.now());
    }

    /**
     * 更新填充更新時間
     *
     * @param metaObject
     */
    @Override
    public void updateFill(MetaObject metaObject) {
//        this.strictUpdateFill(metaObject, "updateTime", LocalDateTime::now, LocalDateTime.class);
        this.fillStrategy(metaObject,"updateTime",LocalDateTime.now());
    }

}

swagger

@Configuration
public class SwaggerConfig {

    /**
     * 接口信息
     */
    @Bean
    public OpenAPI apiInfo() {
        return new OpenAPI()
                .components(new Components()
                        .addSecuritySchemes("Authorization",
                                new SecurityScheme().type(SecurityScheme.Type.HTTP)
                                        .scheme("bearer").bearerFormat("JWT")
                        )
                )
                .info(new Info()
                        .title("xiao-yu-Dormitory 接口文檔")
                        .version("1.0.0")
                        .description("接口文檔")
                );
    }

    /**
     * 系統(tǒng)接口分組
     */
    @Bean
    public GroupedOpenApi systemApi() {
        String[] paths = {"/**"};
        String[] packagesToScan = {"com.yu.controller"};
        return GroupedOpenApi.builder()
                .group("系統(tǒng)接口")
                .packagesToScan(packagesToScan)
                .pathsToMatch(paths)
                .build();
    }


}

生成實體、mapper和service

我直接用mybatisX進(jìn)行生成
通過右鍵表可以
課程項目設(shè)計--項目建立--宿舍管理系統(tǒng)--springboot后端,項目,spring boot,后端,java
選擇模塊
課程項目設(shè)計--項目建立--宿舍管理系統(tǒng)--springboot后端,項目,spring boot,后端,java
基礎(chǔ)包
課程項目設(shè)計--項目建立--宿舍管理系統(tǒng)--springboot后端,項目,spring boot,后端,java
課程項目設(shè)計--項目建立--宿舍管理系統(tǒng)--springboot后端,項目,spring boot,后端,java

baseEntity

在common包下新建一個類
課程項目設(shè)計--項目建立--宿舍管理系統(tǒng)--springboot后端,項目,spring boot,后端,java
用于規(guī)范創(chuàng)建和更新時間的類文章來源地址http://www.zghlxwxcb.cn/news/detail-661332.html

@Data
public class BaseEntity implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;

    @TableField(fill = FieldFill.INSERT)
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    @TableField(fill = FieldFill.INSERT_UPDATE)
    @JsonInclude(value = JsonInclude.Include.NON_NULL)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;
}

統(tǒng)一響應(yīng)實例

響應(yīng)碼接口

public interface IResultCode {

    String getCode();

    String getMsg();

}

響應(yīng)碼接口實現(xiàn)

@AllArgsConstructor
@NoArgsConstructor
public enum ResultCode implements IResultCode, Serializable {
    SUCCESS("00000", "ok"),
    @Override
    public String getCode() {
        return code;
    }

    @Override
    public String getMsg() {
        return msg;
    }

    private String code;

    private String msg;

    @Override
    public String toString() {
        return "{" +
                "\"code\":\"" + code + '\"' +
                ", \"msg\":\"" + msg + '\"' +
                '}';
    }


    public static ResultCode getValue(String code){
        for (ResultCode value : values()) {
            if (value.getCode().equals(code)) {
                return value;
            }
        }
        return SYSTEM_EXECUTION_ERROR; 
    }
}

統(tǒng)一響應(yīng)result

@EqualsAndHashCode(callSuper = true)
public record Result<T>(
        String code,
        T data,
        String msg
) implements Serializable{

    public static <T> Result<T> success() {
        return success(null);
    }

    public static <T> Result<T> success(T data) {
        return new Result<>(ResultCode.SUCCESS.getCode(),data,ResultCode.SUCCESS.getMsg());
    }

    public static <T> Result<T> failed() {
        return result(ResultCode.SYSTEM_EXECUTION_ERROR.getCode(), ResultCode.SYSTEM_EXECUTION_ERROR.getMsg(), null);
    }

    public static <T> Result<T> failed(String msg) {
        return result(ResultCode.SYSTEM_EXECUTION_ERROR.getCode(), msg, null);
    }

    public static <T> Result<T> judge(boolean status) {
        if (status) {
            return success();
        } else {
            return failed();
        }
    }

    public static <T> Result<T> failed(IResultCode resultCode) {
        return result(resultCode.getCode(), resultCode.getMsg(), null);
    }

    public static <T> Result<T> failed(IResultCode resultCode, String msg) {
        return result(resultCode.getCode(), msg, null);
    }

    private static <T> Result<T> result(IResultCode resultCode, T data) {
        return result(resultCode.getCode(), resultCode.getMsg(), data);
    }

    private static <T> Result<T> result(String code, String msg, T data) {
        return new Result<>(code, data, msg);
    }

    public static boolean isSuccess(Result<?> result) {
        return result != null && ResultCode.SUCCESS.getCode().equals(result.code());
    }
}

統(tǒng)一分頁響應(yīng)

public record PageResult<T>(
        String code,
        Data<T> data,
        String msg
) implements Serializable {


    public static <T> PageResult<T> success(IPage<T> page) {
        Data<T> data = new Data<T>(page.getRecords(), page.getTotal());
        return new PageResult<T>(
                ResultCode.SUCCESS.getCode(), data, ResultCode.SUCCESS.getMsg()
        );
    }

    public record Data<T>(List<T> list, long total) {
    }

}

到了這里,關(guān)于課程項目設(shè)計--項目建立--宿舍管理系統(tǒng)--springboot后端的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 基于微信小程序的高校宿舍管理系統(tǒng)設(shè)計與實現(xiàn)(亮點:選擇宿舍、宿舍評分、宿舍報修)

    基于微信小程序的高校宿舍管理系統(tǒng)設(shè)計與實現(xiàn)(亮點:選擇宿舍、宿舍評分、宿舍報修)

    ??博主介紹:?全網(wǎng)粉絲10W+,CSDN特邀作者、博客專家、CSDN新星計劃導(dǎo)師、全棧領(lǐng)域優(yōu)質(zhì)創(chuàng)作者,博客之星、掘金/華為云/阿里云/InfoQ等平臺優(yōu)質(zhì)作者、專注于Java、小程序技術(shù)領(lǐng)域和畢業(yè)項目實戰(zhàn)??? ???? 精彩專欄 推薦訂閱???? 2023-2024年最值得選的微信小程序畢業(yè)設(shè)計

    2024年04月25日
    瀏覽(30)
  • 【計算機畢業(yè)設(shè)計】023學(xué)生宿舍管理系統(tǒng)

    【計算機畢業(yè)設(shè)計】023學(xué)生宿舍管理系統(tǒng)

    ????????? ? 摘 ?要 互聯(lián)網(wǎng)發(fā)展至今,無論是其理論還是技術(shù)都已經(jīng)成熟,而且它廣泛參與在社會中的方方面面。它讓信息都可以通過網(wǎng)絡(luò)傳播,搭配信息管理工具可以很好地為人們提供服務(wù)。針對學(xué)生宿舍信息管理混亂,出錯率高,信息安全性差,勞動強度大,費時費

    2024年02月08日
    瀏覽(33)
  • (附源碼)Python宿舍管理系統(tǒng)  畢業(yè)設(shè)計231642

    (附源碼)Python宿舍管理系統(tǒng) 畢業(yè)設(shè)計231642

    摘要 本論文主要論述了如何使用Django開發(fā)一個宿舍管理系統(tǒng),本系統(tǒng)將嚴(yán)格按照軟件開發(fā)流程進(jìn)行各個階段的工作,采用B/S架構(gòu),面向?qū)ο缶幊趟枷脒M(jìn)行項目開發(fā)。在引言中,作者將論述宿舍管理系統(tǒng)的當(dāng)前背景以及系統(tǒng)開發(fā)的目的,后續(xù)章節(jié)將嚴(yán)格按照軟件開發(fā)流程,對系

    2024年02月04日
    瀏覽(31)
  • 計算機畢業(yè)設(shè)計------SSH宿舍管理系統(tǒng)

    計算機畢業(yè)設(shè)計------SSH宿舍管理系統(tǒng)

    項目介紹 本項目分為三種角色:系統(tǒng)管理員、樓宇管理員、學(xué)生; 系統(tǒng)管理員主要功能如下: 樓宇管理員管理、學(xué)生管理、樓宇管理、宿舍管理、學(xué)生入住登記、學(xué)生寢室調(diào)換、學(xué)生遷出登記、學(xué)生缺勤記錄、修改密碼、退出登錄 樓宇管理員主要功能如下: 學(xué)生管理、學(xué)

    2024年01月23日
    瀏覽(27)
  • 基于Axure原型的學(xué)生宿舍管理系統(tǒng)設(shè)計與實現(xiàn)

    基于Axure原型的學(xué)生宿舍管理系統(tǒng)設(shè)計與實現(xiàn)

    ? 完成人:**************** 班級:************* 學(xué)號:************* ? 目錄 1 引言... 3 1.1開發(fā)背景... 3 1.2開發(fā)環(huán)境... 3 2 需求分析... 4 2.1功能需求... 4 2.2系統(tǒng)參與者及用例... 5 2.3非功能需求... 10 3系統(tǒng)總體設(shè)計... 10 3.1模塊設(shè)計... 10 3.2數(shù)據(jù)庫設(shè)計... 11 4詳細(xì)設(shè)計... 14 4.1學(xué)生信息管理模塊

    2023年04月24日
    瀏覽(120)
  • (附源碼)springboot學(xué)生宿舍管理系統(tǒng)  畢業(yè)設(shè)計161542

    (附源碼)springboot學(xué)生宿舍管理系統(tǒng) 畢業(yè)設(shè)計161542

    摘要 本論文主要論述了如何使用springboot開發(fā)一個宿舍管理系統(tǒng),本系統(tǒng)將嚴(yán)格按照軟件開發(fā)流程進(jìn)行各個階段的工作,采用B/S架構(gòu),面向?qū)ο缶幊趟枷脒M(jìn)行項目開發(fā)。在引言中,作者將論述宿舍管理系統(tǒng)的當(dāng)前背景以及系統(tǒng)開發(fā)的目的,后續(xù)章節(jié)將嚴(yán)格按照軟件開發(fā)流程,

    2024年02月03日
    瀏覽(24)
  • ( 附源碼 )ssm學(xué)生宿舍管理系統(tǒng)  畢業(yè)設(shè)計161527

    ( 附源碼 )ssm學(xué)生宿舍管理系統(tǒng) 畢業(yè)設(shè)計161527

    學(xué)生宿舍管理系統(tǒng) 摘 要 科技進(jìn)步的飛速發(fā)展引起人們?nèi)粘I畹木薮笞兓?,電子信息技術(shù)的飛速發(fā)展使得電子信息技術(shù)的各個領(lǐng)域的應(yīng)用水平得到普及和應(yīng)用。信息時代的到來已成為不可阻擋的時尚潮流,人類發(fā)展的歷史正進(jìn)入一個新時代。在現(xiàn)實運用中,應(yīng)用軟件的工作

    2024年02月04日
    瀏覽(28)
  • 基于java的校園宿舍管理系統(tǒng)的設(shè)計與實現(xiàn)

    基于java的校園宿舍管理系統(tǒng)的設(shè)計與實現(xiàn)

    目錄 摘要 I Abstract II 1緒論 3 1.1研究背景 3 1.2研究目的及意義 3 1.3研究現(xiàn)狀 3 2開發(fā)工具介紹及其技術(shù) 4 2.1Jsp 技術(shù)和 Java 技術(shù) 4 2.2SpringMVC 和 Hibernate 框架 4 2.3Tomcat 服務(wù)器 4 2.4MySQL 數(shù)據(jù)庫 4 3需求分析 5 3.1系統(tǒng)可行性分析 5 3.2功能需求分析 5 4系統(tǒng)設(shè)計 7 4.1系統(tǒng)框架及結(jié)構(gòu)設(shè)計 7

    2024年02月08日
    瀏覽(59)
  • 46基于java的校園宿舍管理系統(tǒng)設(shè)計與實現(xiàn)

    本章節(jié)給大家?guī)硪粋€基于java的校園宿舍管理系統(tǒng)設(shè)計與實現(xiàn),可適用于智慧校園宿舍管理系統(tǒng),基于java學(xué)生宿舍管理系統(tǒng),基于java的學(xué)生宿舍管理系統(tǒng),java校園宿舍系統(tǒng),springboot宿舍管理系統(tǒng),大學(xué)宿舍管理系統(tǒng); 現(xiàn)在的信息時代是各種資訊紛至沓來的一個年代,而這種

    2024年02月08日
    瀏覽(36)
  • Java實現(xiàn)宿舍管理系統(tǒng)的設(shè)計與實現(xiàn)【附源碼】

    Java實現(xiàn)宿舍管理系統(tǒng)的設(shè)計與實現(xiàn)【附源碼】

    目 錄 摘 要 I Abstract II 1 引言 1 1.1 研究背景 1 1.2 國內(nèi)外研究現(xiàn)狀 1 1.3 研究目的與意義 1 2 開發(fā)工具和相關(guān)技術(shù) 2 2.1 Eclipse 2 2.2 MySQL 2 2.3 Bootstrap 3 2.4 Tomcat 3 3 系統(tǒng)分析 3 3.1 可行性分析 3 3.2 性能需求分析 3 3.3 功能模塊分析 3 4 系統(tǒng)設(shè)計 4 4.1 系統(tǒng)體系結(jié)構(gòu)設(shè)計 4 4.2 系統(tǒng)功能模塊

    2024年02月02日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包