文章目录
- 1.企业做项目流程
- 2.需求分析
- 1.登录/注册
- 2.用户管理(仅管理员可见)
- 3.用户校验
- 3.技术选型
- 4.计划
- 5.初始化项目
- 1.前端初始化
- 1.ant design pro 官网
- 2.ant design pro 初始化
- 1.本地创建一个文件夹存放项目
- 2.cmd进入该目录
- 3.根据官网进行初始化项目
- 4.npm i @ant-design/pro-cli -g
- 5.pro create myapp(项目名)
- 6.选择simple的脚手架
- 7.cd myapp(项目名)
- 8.npm install 安装依赖
- 9.npm audit fix
- 10.npm run start
- 11.输入http://localhost:8000查看效果
- 12.ctrl + c 退出
- 13.使用idea打开,并配置start命令
- 14.运行成功
- 2.项目瘦身(熟悉这个项目之前不建议乱搞,跳过即可)
- 3.安装MySQL5.7.19
- 4.初始化SpringBoot项目(手动配置方式)
- 1.创建maven项目
- 2.pom.xml 引入依赖
- 3.删除不必要的文件夹
- 4.src/main/resources/application.yml 配置数据源和服务器端口8080
- 5. com/sun/usercenter/Application.java 编写运行类,测试是否可以正常运行
- 6.目前阶段项目目录
- 7.数据库创建
- 8.src/main/resources/application.yml 修改数据库名
- 9.根据官方文档的案例进行测试
- 1.在navicat中,使用刚才创建的数据库,创建一个user表并插入测试数据
- 2.编写实体类 com/sun/usercenter/model/User.java
- 3.com/sun/usercenter/mapper/UserMapper.java 编写Mapper接口
- 4.com/sun/usercenter/mapper/UserMapper.java demo测试
- 5.结果展示
- 6.将本地项目交给Git管理
- 1.GitHub创建远程仓库
- 2.克隆项目到本地任意一个文件夹
- 3.将文件夹中的内容全部复制到项目文件夹下
- 4.注意这里如果没有看到.git文件夹,就是默认被隐藏了,可以设置一下显示隐藏的项目
- 5.提交代码
1.企业做项目流程
需求分析 => 设计 => 技术选型 => 初始化/引入需要的技术 => 写demo => 写代码 => 单元测试 => 代码提交/代码评审 => 部署 => 发布
2.需求分析
1.登录/注册
2.用户管理(仅管理员可见)
3.用户校验
3.技术选型
4.计划
5.初始化项目
1.前端初始化
1.ant design pro 官网
ant design pro 官网
2.ant design pro 初始化
1.本地创建一个文件夹存放项目
2.cmd进入该目录
3.根据官网进行初始化项目
初始化项目
4.npm i @ant-design/pro-cli -g
5.pro create myapp(项目名)
6.选择simple的脚手架
7.cd myapp(项目名)
8.npm install 安装依赖
9.npm audit fix
10.npm run start
11.输入http://localhost:8000查看效果
12.ctrl + c 退出
13.使用idea打开,并配置start命令
14.运行成功
2.项目瘦身(熟悉这个项目之前不建议乱搞,跳过即可)
3.安装MySQL5.7.19
4.初始化SpringBoot项目(手动配置方式)
1.创建maven项目
2.pom.xml 引入依赖
<!--指定编译版本为1.8-->
<properties>
<java.version>1.8</java.version>
</properties>
<!--引入springboot父工程-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.6.4</version>
<relativePath/>
</parent>
<!--引入依赖-->
<dependencies>
<!--web场景启动器-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--mybatis场景启动器(其实在引入了MybatisPlus场景启动器就不需要引入了)-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.2.2</version>
</dependency>
<!--MybatisPlus场景启动器-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.1</version>
</dependency>
<!--Apache Commons Lang,一个Java库,提供了一些Java基本类的帮助工具,如字符串操作、-->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version>
</dependency>
<!--Spring Boot的一个开发工具包,主要用于提高开发效率,例如通过提供自动重启来加快开发循环。-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<!--MySQL的官方JDBC驱动包,允许Java应用与MySQL数据库进行连接和交互。-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<!--用于处理Spring Boot配置属性的注解处理器,通过该依赖,可以生成和提供配置元数据信息,使IDE能够提供自动补全和文档支持。-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
<!--一个Java库,用于自动化生成代码(如getters, setters, equals, hashCode等方法)。-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<!--Spring Boot的测试套件,包含了进行单元测试和集成测试所需的依赖,如JUnit、Spring Test、Mockito等。-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!--一个Java编程语言的单元测试框架,用于编写和运行可重复的测试,它是Java开发中最广泛使用的测试框架之一。-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.2</version>
<scope>test</scope>
</dependency>
</dependencies>
<!--这个配置的目的是在打包应用时,从最终的包中排除lombok。
Lombok是一个在编译时提供自动代码生成(如getters, setters, constructors等)的Java库,
通常只在开发阶段需要,而不需要被包含在最终的应用包中。-->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
3.删除不必要的文件夹
4.src/main/resources/application.yml 配置数据源和服务器端口8080
# 配置服务器端口
server:
port: 8080
# 配置数据源
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver #注意这里是mysql5的驱动,如果是mysql8选择另一个
username: root
password: root
# 这里的url别忘记填写数据库名
url: jdbc:mysql://localhost:3306/xxxx?useSSL=false&useUnicode=true&characterEncoding=UTF-8
application:
name: user-center #这个名字一般是用来做微服务的服务名,用来标识某个服务的,与项目名保持一致即可
5. com/sun/usercenter/Application.java 编写运行类,测试是否可以正常运行
package com.sun.usercenter;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* @author 孙显圣
* @version 1.0
*/
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
6.目前阶段项目目录
7.数据库创建
8.src/main/resources/application.yml 修改数据库名
9.根据官方文档的案例进行测试
1.在navicat中,使用刚才创建的数据库,创建一个user表并插入测试数据
-- 使用刚才创建的数据库
use sun;
-- 创建user表
CREATE TABLE `user`
(
id BIGINT NOT NULL COMMENT '主键ID',
name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名',
age INT NULL DEFAULT NULL COMMENT '年龄',
email VARCHAR(50) NULL DEFAULT NULL COMMENT '邮箱',
PRIMARY KEY (id)
);
-- 插入测试数据
INSERT INTO `user` (id, name, age, email) VALUES
(1, 'Jone', 18, 'test1@baomidou.com'),
(2, 'Jack', 20, 'test2@baomidou.com'),
(3, 'Tom', 28, 'test3@baomidou.com'),
(4, 'Sandy', 21, 'test4@baomidou.com'),
(5, 'Billie', 24, 'test5@baomidou.com');
SELECT * FROM user;
2.编写实体类 com/sun/usercenter/model/User.java
package com.sun.usercenter.model;
import lombok.Data;
/**
* @author 孙显圣
* @version 1.0
*/
@Data
public class User {
private Long id;
private String name;
private Integer age;
private String email;
}
3.com/sun/usercenter/mapper/UserMapper.java 编写Mapper接口
package com.sun.usercenter.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.sun.usercenter.model.User;
import org.apache.ibatis.annotations.Mapper;
/**
* @author 孙显圣
* @version 1.0
*/
@Mapper
public interface UserMapper extends BaseMapper<User> {
}
4.com/sun/usercenter/mapper/UserMapper.java demo测试
- 注意一个问题,关于@RunWith(SpringRunner.class)注解,如果使用的是
org.junit.jupiter.api.Test;
这个测试类就不需要加 - 但是如果使用的是
org.junit.Test;
这个测试类就需要加,否则依赖不会自动注入
package com.sun.usercenter;
import com.baomidou.mybatisplus.core.toolkit.Assert;
import com.sun.usercenter.mapper.UserMapper;
import com.sun.usercenter.model.User;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import javax.annotation.Resource;
import java.util.List;
/**
* @author 孙显圣
* @version 1.0
*/
@SpringBootTest
// 如果使用的是import org.junit.Test; 这个测试类则需要加上这个注解,否则依赖不会自动注入
//@RunWith(SpringRunner.class)
public class SampleTest {
// 依赖注入Mapper接口的代理对象,使用代理对象直接调用接口方法,框架会自动找到方法的实现
@Resource
private UserMapper userMapper;
@Test
public void testSelect() {
System.out.println(("----- selectAll method test ------"));
List<User> userList = userMapper.selectList(null);
Assert.isTrue(5 == userList.size(), "");
userList.forEach(System.out::println);
}
}