Spring Boot项目结构
1. Java代码目录:Java代码写在src/main/java/com.xxx.www目录下; 2. Spring Boot启动类:XXXProjectApplication.java文件包含主类,并用@SpringBootApplication注解标注,这是运行Spring Boot应用程序的入口; 3. HTML代码目录:HTML文件位于resources/templates目录下; 4. 静态资源目录:静态资源如图片、CSS和JavaScript文件存放在resources/static目录下; 5. 配置文件目录:应用程序的配置文件(application.properties)位于resources目录下; 6. test目录:仅做测试用,不写代码; 7. target目录:运行后产生,用于存放编译后的代码。
第一个程序HelloController
1. 于src/main/java/com.xxx.www目录下新建一个软件包名为controller,再在其中新建一个class文件名为HelloController; 2. @Controller注解:用于标注控制层类,将控制层代码加载到Spring IOC容器中,以响应前端的请求。通常标注在控制层类上(如HelloController); 3. @RequestMapping注解:用于映射浏览器的访问URL到指定的处理方法上。例如,@RequestMapping(“/hello”) 映射到localhost:8080/hello,访问该URL会调用对应的处理方法; 4. @ResponseBody 注解:将后端返回的数据直接以JSON格式发送给前端。标注在方法上,将方法的返回值转换为 JSON 格式并输出到前端。如果没有该注解,浏览器访问对应URL时会显示“无法连接”; 5. 端口号的修改:通过resources目录下的application.properties文件中的server.port属性修改应用的访问端口号。
package com.xxx.www.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
/*
@Controller: 这个注解表示一个控制层注解,用来回应前端请求的
@Controller标注在控制层,将控制层代码(controller包里的代码)加载到Spring IOC容器中
*/
@Controller
public class HelloController {
@RequestMapping("/hello") //是浏览器访问的URL地址,输入地址:localhost:8080/hello 即可访问,网页显示为:Hello World
@ResponseBody // 将后端数据以json数据格式发送给前端(手机界面(app))(如果没有这个注解,则访问localhost:8080/hello会显示无法连接)
// 如果要修改访问端口号,则要在 resources包中的application.properties中使用server.port语句更换端口
public String hello() {
return "Hello World";
}
/*
void 的声明方法,不需要返回值
数据类型基本分为两大类:
1.基本数据类型(8个基本数据类型)
2.引用数据类型(除8个基本数据类型外,其他的都是引用数据类型)
*/
public void helloworld()
{
System.out.println("Hello World");
}
}
pom.xml文件
pom.xml文件是整个Spring Boot项目的核心,相当于电脑的CPU,注释如下:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!--parent: 整个Spring Boot的父级依赖,必须要有-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.3.3</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<!--项目的Maven配置和描述-->
<groupId>com.xxx.www</groupId> <!--包名-->
<artifactId>xxx_project</artifactId> <!--项目名-->
<version>0.0.1-SNAPSHOT</version> <!--项目版本号-->
<name>xxx_project</name>
<description>xxx_project</description>
<url/>
<licenses>
<license/>
</licenses>
<developers>
<developer/>
</developers>
<scm>
<connection/>
<developerConnection/>
<tag/>
<url/>
</scm>
<!--java版本号-->
<properties>
<java.version>17</java.version>
</properties>
<dependencies>
<!--想要做Web开发,就要导入这个包-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--Spring Boot测试包-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
Banner打印
程序运行时出现的图标,在网站上找到Banner图标下载后放入src→main→resources目录后运行即可,
如果运行后没有显示Banner图标,可以用手写实现Banner打印
SpringApplication application = new SpringApplication(XXXProjectApplication.class);
application.setBannerMode(Banner.Mode.LOG);
application.run(args);