JavaWeb学习笔记——后端实战1_准备工作

1、配置文件格式

首先在resource文件下新建一个文件:命名为 application.yml

之后在文件中创建对象,一定要记得,添加空格!!!

复制代码
#创建一个对象/Map集合
user:
  name: Tom
  age: 18
  gender: 男

#创建一个数组/List/Set集合
hobby:
  - java
  - game
  - sport

之后将以上内容进行更改:

直接输入所有关键字之后选择下拉列表中,idea自动生成相应的格式:

完整yml文件如下所示:

复制代码
spring:
  #数据库连接信息
  datasource:
    url: jdbc:mysql://localhost:3306/web01
    driver-class-name: com.mysql.cj.jdbc.Driver
    username: root
    password: 123456

#mybatis相关配置
mybatis:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
  mapper-locations: classpath:mappers/*.xml
  type-aliases-package: com.itheima.mybatis.entity

删除properties文件,在测试中验证是否正确!测试通过!

2、实战准备工作

基于Restful进行规范设计!

下载并安装Apifox

下面是apifox的下载资源:在文章顶部展示

之后将以上软件下载在develop文件夹下,并新建一个文件夹名为apifox

下载完成之后,点击新创建一个空白项目,之后点击快速请求,将java的以下项目启动:

之后在apifox中输入网址并发送,可以看到输出结果:

3、工程搭建

首先重新创建一个项目:web-ai-project02------设置项目的jdk为17,之后查看maven的配置是否正确------将文字编码都改为utf-8

之后新建立一个模块为springboot项目,并添加依赖,其中对于lombok需要手动添加版本:1.18.30

如果在文件生成之后发现右侧并没有Maven,需要右键pom文件将该项目添加到Maven即可!

之后打开 数据库,并创建一个dept的表,数据如下:

-- 创建部门表

CREATE TABLE dept (

id int unsigned PRIMARY KEY AUTO_INCREMENT COMMENT 'ID, 主键',

name varchar(10) NOT NULL UNIQUE COMMENT '部门名称',

create_time datetime DEFAULT NULL COMMENT '创建时间',

update_time datetime DEFAULT NULL COMMENT '修改时间'

) COMMENT '部门表';

-- 插入部门数据

INSERT INTO dept VALUES

(1,'学工部','2024-09-25 09:47:40','2024-09-25 09:47:40'),

(2,'教研部','2024-09-25 09:47:40','2024-09-09 15:17:04'),

(3,'咨询部','2024-09-25 09:47:40','2024-09-30 21:26:24'),

(4,'就业部','2024-09-25 09:47:40','2024-09-25 09:47:40'),

(5,'人事部','2024-09-25 09:47:40','2024-09-25 09:47:40'),

(6,'行政部','2024-11-30 20:56:37','2024-09-30 20:56:37');

之后在java中的resource中新建一个文件:application.yml,并输入以下内容:要将url改成自己的数据库名,以及username和password

复制代码
spring:
  #数据库连接信息
  datasource:
    url: jdbc:mysql://localhost:3306/tlias
    driver-class-name: com.mysql.cj.jdbc.Driver
    username: root
    password: 123456

#mybatis相关配置
mybatis:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
  type-aliases-package: com.itheima.mybatis.entity

之后在主程序中新创建4个软件包:

之后在pojo包下新建两个实体类,一个是Dept:

复制代码
package com.itheima.pojo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class Dept {
    private Integer id;
    private String name;
    private LocalDateTime createTime;
    private LocalDateTime updateTime;
}

另一个是Result:
复制代码
package com.itheima.pojo;

import lombok.Data;
import java.io.Serializable;

/**
 * 后端统一返回结果
 */
@Data
public class Result {

    private Integer code; //编码:1成功,0为失败
    private String msg; //错误信息
    private Object data; //数据

    public static Result success() {
        Result result = new Result();
        result.code = 1;
        result.msg = "success";
        return result;
    }

    public static Result success(Object object) {
        Result result = new Result();
        result.data = object;
        result.code = 1;
        result.msg = "success";
        return result;
    }

    public static Result error(String msg) {
        Result result = new Result();
        result.msg = msg;
        result.code = 0;
        return result;
    }

}

之后在 Mapper软件包下新建一个接口:DeptMapper

复制代码
package com.itheima.mapper;

import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface DeptMapper {
}

之后在service下新建一个DeptService

复制代码
package com.itheima.service;

public interface DeptService {
}

之后同样在这个包下新建一个类为:impl.DeptServiceImpl

复制代码
package com.itheima.service.impl;

import com.itheima.service.DeptService;
import org.springframework.stereotype.Service;

@Service
public class DeptServiceImpl implements DeptService {
}

最后在controller包下新建一个类:DeptController

复制代码
package com.itheima.controller;

import org.springframework.web.bind.annotation.RestController;

@RestController
public class DeptController {
}

基础工作完成,接下来进行具体的功能开发!!!

相关推荐
猫头鹰源码(同名B站)1 天前
基于django+vue的时尚穿搭社区(商城)(前后端分离)
前端·javascript·vue.js·后端·python·django
朗迹 - 张伟1 天前
UE5 City Traffic Pro 交通插件学习笔记
笔记·学习·ue5
好奇龙猫1 天前
工智能学习-AI入试相关题目练习-第十次
人工智能·学习
来两个炸鸡腿1 天前
【Datawhale组队学习202601】Base-NLP task05 高级微调技术
人工智能·学习·自然语言处理
EverydayJoy^v^1 天前
RH134学习进程——九.访问网络附加存储
linux·网络·学习
GHL2842710901 天前
coze多agent学习
学习·ai编程
Engineer邓祥浩1 天前
设计模式学习(20) 23-18 中介者模式
学习·设计模式·中介者模式
Watermelo6171 天前
随机扣款实现赛博共产主义,《明日方舟:终末地》公测支付事故复盘
数据库·后端·游戏程序·技术美术·用户体验·游戏策划·游戏美术
观音山保我别报错1 天前
Spring Boot 项目学习内容详解(一)
spring boot·后端·学习
哪里不会点哪里.1 天前
Spring Boot 启动原理深度解析
java·spring boot·后端