SpringBoot项目创建流程--SpringMVC
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的更多相关文章
- SpringBoot项目创建与第一个SSM项目示例
本节介绍SpringBoot创建第一个示例SSM项目的完整过程,使用工具STS,与IDEA操作基本类似. 示例代码在:https://github.com/laolunsi/spring-boot-e ...
- ADF 项目创建流程
ADF 项目创建流程: 1.首先建好应用 2.创建model,UI 3.创建EO,VO,AO, VL 4.设置EO的属性 5.新建lov 6.设置VO的View Accessors,并设置Attrib ...
- Springboot项目创建文件中相对路径问题
Springboot项目创建文件中相对路径问题 原代码: String location = "./src/main/resources/UsersFiles/" + userId ...
- springboot项目创建
1.在eclipse中创建springboot项目,右键找到New,然后找到Spring Starter Project, 如果menu中找不到Spring Starter Project就选择oth ...
- SpringBoot项目创建及入门基础
一:快速构建springboot项目 进入https://start.spring.io/,选择相应的springboot版本,包名,项目名,依赖 图中选择web,利用tomcat服务器进行开发 sp ...
- (三)创建基于maven的javaFX+springboot项目创建
创建基于maven的javaFx+springboot项目有两种方式,第一种为通过非编码的方式来设计UI集成springboot:第二种为分离用户界面(UI)和后端逻辑集成springboot,其中用 ...
- 解决SpringBoot项目创建缓慢问题
SpringBoot项目构建缓慢 快速创建springboot项目 在创建一个springboot项目的时候,往往速度会很慢,原因是下载springboot文件的默认地址是springboot官网(国 ...
- SpringBoot项目创建与单元测试
前言 Spring Boot 设计之初就是为了用最少的配置,以最快的速度来启动和运行 Spring 项目.Spring Boot使用特定的配置来构建生产就绪型的项目. Hello World 可以 ...
- cocos2dx3.0项目创建流程
cocos2dx3.0不是beta,新增了wp项目创建的支持 但不知道为啥非beta版本号的tools文件夹中取消了project-creator,可能有更改吧 没有这个工具还挺麻烦.就自己手动创建c ...
随机推荐
- JPEG头部解析
6.3 JPEG格式 6.3.1简介 微处理机中的存放顺序有正序(big endian)和逆序(little endian)之分.正序存放就是高字节存放在前低字节在后,而逆序存放就是低字 ...
- CSS中margin负值巧布局
margin负值实现细边框 我们先准备五个div盒子,并设置好浮动和2px的实线黑色边框,看看效果 中间的边框线挨在了一起致使边框变粗成了4px,这时使用margin负值就可以解决这个问题 <s ...
- SpringBoot中获取上下文
在实际开发中,有时候会根据某个bean的名称或class到Spring容器中获取对应的Bean.这里只做个简单的记录,方便后续自查. @Component public class SpringCon ...
- 匿名函数lambda / map()方法
lambda一般配合其他方法使用,一般使用在只用过一次就不用的函数,那就没必要特意去定义 lambda能支持的最复杂的语句就是三元运算 例如: lambda x,y: x*y if x < y ...
- 自动做bond的脚本
#!/bin/bash # 先备份原来的网卡配置文件 find /etc/sysconfig/network-scripts/ -type f -name "ifcfg*"|xar ...
- 图解CSS布局(一)- Grid布局
图解CSS布局(一)- Grid布局 先上图 简介 Grid 布局是将容器划分成"行"和"列",产生单元格,然后指定"项目所在"的单元格,可 ...
- 用华为MindSpore框架训练数据库类型的数据集
技术背景 在前面一篇博客我们讲到三种用python去读取一个文件的指定行的操作,最终给出的一个结论大概是,对于大型的数据而言,最快的找到指定行的方法是Linux系统自带的sed指令,那么是否只有这一种 ...
- DM8_Linux详细安装步骤
(从虚拟机配置讲起,有基础的可以直接看二,谢谢) 一.虚拟机的安装和配置 软件:virtualbox 系统:centos7 工具:Xshell 官网下载centos7,使用virtualbox安装ce ...
- Python+Selenium学习笔记6 - 定位
1.8种针对单个元素的定位方法 find_element_by_id() find_element_by_name() find_element_by_class_name() find_elemen ...
- 编译ONNX模型Compile ONNX Models
编译ONNX模型Compile ONNX Models 本文是一篇介绍如何使用Relay部署ONNX模型的说明. 首先,必须安装ONNX包. 一个快速的解决方案是安装protobuf编译器,然后 pi ...