SpringBoot项目创建步骤

1. 创建SpringBoot工程

(1) File → New → Project → Spring Initilizr

(2) Name:MySpringBoot

(3) Group: com.baidu

(4) java: 8

(5) Next

(6) Finish

(7) This Window

(8) 配置maven环境:

① File → Settings → Build,Execution,Deployment → Build Tools → Maven

② Maven Home Path:Maven文件路径

③ User setting files:  Maven文件路径 → conf → logging → setting文件

④ Local repository:自建路径(D:\Java\repository)

⑤ OK

2. 创建Maven工程

(1) MySpringBoot下右键 → New → moudle → Maven

(2) Next

(3) Name:springboot_demo4

(4) Groupid :com.baidu

(5) Finish

3. 编辑Spring MVC

目录结构如下:

操作步骤:

(1) 编辑pom.xml文件


 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0"
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5 <modelVersion>4.0.0</modelVersion>
6
7 <groupId>com.jt</groupId>
8 <artifactId>springboot_demo3</artifactId>
9 <version>1.0-SNAPSHOT</version>
10
11 <!--1.parent标签-->
12 <!--集中定义版本号-->
13 <parent>
14 <groupId>org.springframework.boot</groupId>
15 <artifactId>spring-boot-starter-parent</artifactId>
16 <version>2.5.1</version>
17 <relativePath/> <!-- lookup parent from repository -->
18 </parent>
19
20
21 <!--2.添加依赖项-->
22 <!--依赖: 项目中需要添加什么功能,则依赖什么jar包.-->
23 <dependencies>
24 <!--引入SpringMVC功能-->
25 <dependency>
26 <groupId>org.springframework.boot</groupId>
27 <artifactId>spring-boot-starter-web</artifactId>
28 </dependency>
29 <!--SpringBoot的测试功能-->
30 <dependency>
31 <groupId>org.springframework.boot</groupId>
32 <artifactId>spring-boot-starter-test</artifactId>
33 <scope>test</scope>
34 </dependency>
35
36 <!--SpringBoot核心机制: "开箱即用"
37 只需导入特定的jar包文件 则可以直接使用其中的功能
38 根本原因: SpringBoot是对框架的简化,内部进行了扩展,无需程序员操作.
39 -->
40 <!--支持热部署 -->
41 <dependency>
42 <groupId>org.springframework.boot</groupId>
43 <artifactId>spring-boot-devtools</artifactId>
44 </dependency>
45
46 <!--引入插件lombok 自动的set/get/构造方法插件 -->
47 <dependency>
48 <groupId>org.projectlombok</groupId>
49 <artifactId>lombok</artifactId>
50 </dependency>
51
52 <!--引入数据库驱动 -->
53 <dependency>
54 <groupId>mysql</groupId>
55 <artifactId>mysql-connector-java</artifactId>
56 <scope>runtime</scope>
57 </dependency>
58
59 <!--springBoot数据库连接 -->
60 <dependency>
61 <groupId>org.springframework.boot</groupId>
62 <artifactId>spring-boot-starter-jdbc</artifactId>
63 </dependency>
64
65 <!--spring整合mybatis-plus MP中包含了mybatis的包所以将原来的包删除 -->
66 <dependency>
67 <groupId>com.baomidou</groupId>
68 <artifactId>mybatis-plus-boot-starter</artifactId>
69 <version>3.4.3</version>
70 </dependency>
71
72 </dependencies>
73
74
75 <!--3.添加build标签-->
76 <!--该插件是SpringBoot项目打包时必须添加的.
77 如果没有该插件 则导致jar包不能运行
78 -->
79 <build>
80 <plugins>
81 <plugin>
82 <groupId>org.springframework.boot</groupId>
83 <artifactId>spring-boot-maven-plugin</artifactId>
84 <version>2.5.1</version>
85 </plugin>
86 </plugins>
87 </build>
88 </project>

 

(2) 编辑主启动类

  ① @SpringBootApplication

  ② @MapperScan(“com.jt.mapper”)  --> 包扫描

 1 package com.jt;
2
3 import org.mybatis.spring.annotation.MapperScan;
4 import org.springframework.boot.SpringApplication;
5 import org.springframework.boot.autoconfigure.SpringBootApplication;
6
7 @SpringBootApplication
8 @MapperScan("com.jt.mapper")
9 public class RunApp {
10 public static void main(String[] args) {
11 SpringApplication.run(RunApp.class, args);
12 }
13 }

(3) 编辑pojo包下的User类

  ① @Data  --> 自动生成setter/getter/to string/构造方法等

  ② @Accessors(chain = true)   --> 启动链式加载(重写set方法)

  ③ @TableName(“demo_user”)  --> 使用MP, 类名与表名映射

 1 package com.jt.pojo;
2
3 import com.baomidou.mybatisplus.annotation.TableName;
4 import lombok.Data;
5 import lombok.experimental.Accessors;
6
7 import java.io.Serializable;
8
9 @Data
10 @Accessors(chain = true)
11 @TableName("demo_user")
12 //规定:POJO实体一般都需要实现序列号接口
13 public class User implements Serializable {
14 private Integer id;
15 private String name;
16 private Integer age;
17 private String sex;
18 }

(4) 编辑mapper层下的UserMapper接口

 1 package com.jt.mapper;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.jt.pojo.User;
5 import org.apache.ibatis.annotations.Mapper;
6
7 //@Mapper 每个接口都要加一次,麻烦,所以提取到主启动类RunApp上加@MapperScan("com.jt.Mapper")注解
8 public interface UserMapper extends BaseMapper<User> {
9
10 }

(5) 编辑resources--mappers包下的UserMapper.xml映射文件

 1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!DOCTYPE mapper
3 PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
4 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
5 <!--语法:namespace="接口的路径" -->
6 <mapper namespace="com.jt.mapper.UserMapper">
7
8 <!-- <select id="findAll" resultType="User">
9 select * from demo_user
10 </select>
11 -->
12 </mapper>

(6) 编辑resources包下的application.yml核心配置文件

server:
port: 8090
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/jt?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&autoReconnect=true&allowMultiQueries=true
username: root
#如果密码以数字0开头,则使用""号包裹 "0123456"
password: root #SpringBoot整合MybatisPlus
mybatis-plus:
#设置别名包
type-aliases-package: com.jt.pojo
#加载映射文件
mapper-locations: classpath:/mappers/*.xml
#开启驼峰映射
configuration:
map-underscore-to-camel-case: true
#打印Sql语句
logging:
level:
#指定包路径,日志输出
com.jt.mapper: debug

(7) 编辑service层下的UserService接口

1 package com.jt.service;
2
3 import com.jt.pojo.User;
4
5 import java.util.List;
6
7 public interface UserService {
8 List<User> findAll();
9 }

(8) 编辑Service层下的UserServiceImpl实现类

  ① @Service

  ② @AutoWired  --> 依赖注入

  ③ @Override  --> 重写接口方法

 1 package com.jt.service;
2
3 import com.jt.mapper.UserMapper;
4 import com.jt.pojo.User;
5 import org.springframework.beans.factory.annotation.Autowired;
6 import org.springframework.stereotype.Service;
7
8 import java.util.List;
9
10 @Service
11 public class UserServiceImpl implements UserService {
12 @Autowired
13 public UserMapper userMapper;
14
15 @Override
16 public List<User> findAll() {
17 return userMapper.selectList(null);
18 }
19 }

(9) 编辑controller层下的UserController类

  ① @RestController

  ② @CrossOrigin  --> 解决跨域问题

  ③ AutoWired  --> 依赖注入

  ④ @RequestMapping(“findAll”)

 1 package com.jt.controller;
2
3 import com.jt.pojo.User;
4 import com.jt.service.UserService;
5 import org.springframework.beans.factory.annotation.Autowired;
6 import org.springframework.web.bind.annotation.CrossOrigin;
7 import org.springframework.web.bind.annotation.RequestMapping;
8 import org.springframework.web.bind.annotation.RestController;
9
10 import java.util.List;
11
12 @CrossOrigin
13 @RestController
14 public class UserController {
15 @Autowired
16 private UserService userService;
17
18 @RequestMapping("findAll")
19 public List<User> find() {
20 return userService.findAll();
21 }
22 }

SpringBoot项目创建流程--SpringMVC的更多相关文章

  1. SpringBoot项目创建与第一个SSM项目示例

    本节介绍SpringBoot创建第一个示例SSM项目的完整过程,使用工具STS,与IDEA操作基本类似. 示例代码在:https://github.com/laolunsi/spring-boot-e ...

  2. ADF 项目创建流程

    ADF 项目创建流程: 1.首先建好应用 2.创建model,UI 3.创建EO,VO,AO, VL 4.设置EO的属性 5.新建lov 6.设置VO的View Accessors,并设置Attrib ...

  3. Springboot项目创建文件中相对路径问题

    Springboot项目创建文件中相对路径问题 原代码: String location = "./src/main/resources/UsersFiles/" + userId ...

  4. springboot项目创建

    1.在eclipse中创建springboot项目,右键找到New,然后找到Spring Starter Project, 如果menu中找不到Spring Starter Project就选择oth ...

  5. SpringBoot项目创建及入门基础

    一:快速构建springboot项目 进入https://start.spring.io/,选择相应的springboot版本,包名,项目名,依赖 图中选择web,利用tomcat服务器进行开发 sp ...

  6. (三)创建基于maven的javaFX+springboot项目创建

    创建基于maven的javaFx+springboot项目有两种方式,第一种为通过非编码的方式来设计UI集成springboot:第二种为分离用户界面(UI)和后端逻辑集成springboot,其中用 ...

  7. 解决SpringBoot项目创建缓慢问题

    SpringBoot项目构建缓慢 快速创建springboot项目 在创建一个springboot项目的时候,往往速度会很慢,原因是下载springboot文件的默认地址是springboot官网(国 ...

  8. SpringBoot项目创建与单元测试

    前言   Spring Boot 设计之初就是为了用最少的配置,以最快的速度来启动和运行 Spring 项目.Spring Boot使用特定的配置来构建生产就绪型的项目. Hello World 可以 ...

  9. cocos2dx3.0项目创建流程

    cocos2dx3.0不是beta,新增了wp项目创建的支持 但不知道为啥非beta版本号的tools文件夹中取消了project-creator,可能有更改吧 没有这个工具还挺麻烦.就自己手动创建c ...

随机推荐

  1. C++ primer plus读书笔记——第9章 内存模型和名称空间

    第9章 内存模型和名称空间 1. 头文件常包含的内容: 函数原型. 使用#define或const定义的符号常量. 结构声明. 类声明. 模板声明. 内联函数. 2. 如果文件名被包含在尖括号中,则C ...

  2. 问渠那得清如许?为有源头活水来——对【近取Key】产品进行的深度测评与解析

    在 Build To Show 的场景中,大家各显身手,用各种办法展现技术,的确很难在单一的维度上确定谁赢谁输.但是,在 Build To Win 的场景中,往往市场就是那么一块, 竞争对手占了 70 ...

  3. chardet模块

    import chardet chardet.detect(f.read())检测哪种编码

  4. [DB] Kafka

    介绍 一种高吞吐量的分布式发布订阅消息系统 消息类型:主体Topic(广播).队列Queue(一对一) 消息系统类型:同步消息系统.异步消息系统 常见消息产品:Redis.Kafka.JMS 术语 P ...

  5. Linux_软件包管理基本概述

    一.回去软件包的途径 1.系统发行版的光盘或官方的服务器镜像站 http://mirrors.aliyun.com        //阿里云镜像站 http://mirrors.sohu.com    ...

  6. 008.kubernets的调度系统之标签选择器

    一 Kubernetes 调度简介 除了让 kubernetes 集群调度器自动为 pod 资源选择某个节点(默认调度考虑的是资源足够,并且 load 尽量平均),有些情况我们希望能更多地控制 pod ...

  7. strcasecmp函数和strncasecmp函数原型

    函数说明 strcasecmp()用来比较参数s1和s2字符串,比较时会自动忽略大小写的差异. 返回值    若参数s1和s2字符串相同则返回0.s1长度大于s2长度则返回大于0 的值,s1 长度若小 ...

  8. hive的排序 order by和sort by

    在算法中,各个排序算法的复杂度都比较高,正常情况下为O (nlogn) ,所以当数据量特别大的时候,对数组进行排序消耗都很大. 因为hive的计算引擎MapReduce是分布式系统, 利用分布式的特点 ...

  9. SystemVerilog MCDF检测器

    Monitor:检测DUT的边界信号或者内部信号,并且经过打包整理传送给其他的验证平台的组件(例如checker). 一:大的monitor方案 二:分布式的 两个monitor的比较: 比较下来,选 ...

  10. Python+Selenium自动化-安装模块和浏览器驱动操作方法

    Python+Selenium自动化-安装模块和浏览器驱动操作方法 1.安装模块文件 pip install selenium 2.安装浏览器驱动 我们主要用的浏览器驱动有chrome浏览器.fire ...