1.目标提纲
完成一个类似elastic的社区:https://elasticsearch.cn/ 通过社区项目驱动学习:更好的方式是通过一个真实项目去上手,遇上问题再去看书,把书当作工具书,这样才能知道实际开发过程中遇到的真实问题,才能更快速理解先看书不好理解的基础知识。 - Spring Boot - Spring MVC - MyBatis - MySQL H2 - Flyway - Heroku - Git/Github (公司一般会选择用GitLab自己搭建服务器) - Maven - Restful (编程的一种风格,比如前后端分离,页面渲染) |
2.初始化项目
IDEA - Creat New Project
Spring boot 版本在pom.xml改成2.1.4并maven刷新了
3.目录分析
- pom.xml (Maven用来管理所有的包,和所有包的依赖,这样比较便捷) 里面是所有项目用到的包,Spring的一些定义 - gitignore版本控制需要忽略的冲突(因为每个人路径不同,以防同事拉项目下来出问题) - src (main + test) Spring Boot 直接右键运行项目,不用再自己去部署到Tomcat,只关心代码和业务逻辑即可 |
4.开始前小tips
1.Spring想要集成一些功能时:https://spring.io/guides (本次使用Serving Web Content with Spring MVC代替jsp这些,搜索点击进入。所有新依赖的模块都需要去配置一个maven的dependency,找到腹肌粘贴到pom,pom每次变化都会更新依赖) 附:pom里spring-boot-maven-plugin报错解决 https://www.bilibili.com/video/BV1r4411r7au?p=3 请求协议 域名 路径 |
5.开始代码,启动项目
参考链接:https://spring.io/guides/gs/serving-web-content/
参考视频链接:https://www.bilibili.com/video/BV1r4411r7au?p=3
(1)目录结构(要修改的文件)
、
(2)pom.xml(添加进去)
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
(3)添加HelloController(目录见上上图)
package com.example.demo.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
/**
* @author yangqee
* @date 2021/5/16 4:17
*/
@Controller
public class HelloController {
@GetMapping("/hello")
public String hello(@RequestParam(name = "name") String name, Model model) {
model.addAttribute("name", name);
return "hello";
}
}
(4)添加html(目录见上上图)
<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Getting Started: Serving Web Content</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<p th:text="'Hello, ' + ${name} + '!'" />
</body>
</html>
(5)打开网页并传参
至此,恭喜你已经顺利启动第一个简单的小项目,接下来我们一起完成论坛吧!