新建一个Spring Boot项目
这里使用的idea编辑器。快速生成java 项目。
生成项目目录
java
代码解读
复制代码
java-app: 项目的根目录。 .idea: IntelliJ IDEA 的项目配置文件夹。 .mvn: Maven 的相关配置。 src: 源代码目录。 main: 主代码部分。 java: Java 源代码文件夹。 com: 包名的顶层目录。 example: 示例包。 javaapp: 项目特定的包。 JavaAppApplication.java: 主应用程序类。 resources: 资源文件夹。 static: 静态资源(如 CSS、JS 文件)。 templates: 模板文件。 application.properties: 配置文件。 test: 测试代码部分。 java: 测试 Java 源代码文件夹。 com: 包名的顶层目录。 example: 示例包。 javaapp: 项目特定的包。 JavaAppApplicationTests.java: 测试类。 .gitignore: Git 忽略文件。 HELP.md: 项目帮助文档。 mvnw: Maven Wrapper 脚本。 mvnw.cmd: Windows 下的 Maven Wrapper 脚本。 pom.xml: Maven 项目的配置文件。
主程序代码
java
代码解读
复制代码
package com.example.javaapp; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; //启动类 @SpringBootApplication public class JavaAppApplication { public static void main(String[] args) { SpringApplication.run(JavaAppApplication.class, args); } }
- 包声明:
java
代码解读
复制代码
package com.example.javaapp;
这行代码定义了类所在的包,通常用于组织类和避免命名冲突。
2. 导入语句:
java
代码解读
复制代码
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
这些导入语句引入了 Spring Boot 的核心类。SpringApplication 用于启动应用程序,@SpringBootApplication 是一个组合注解,包含了多个功能(如自动配置、组件扫描等)。
主类:
这是应用程序的主类,使用 @SpringBootApplication 注解标记,表示这是一个 Spring Boot 应用。
主方法:
java
代码解读
复制代码
public static void main(String[] args) { SpringApplication.run(JavaAppApplication.class, args); }
main 方法是 Java 应用程序的入口点。SpringApplication.run 方法启动 Spring 应用程序,传入当前类和命令行参数。
整体上,这段代码定义了一个简单的 Spring Boot 应用程序的启动结构。
添加mySql数据库信息
java
代码解读
复制代码
server.port=8080 spring.datasource.url=jdbc:mysql://localhost:3306/springboot spring.datasource.username=springboot spring.datasource.password=springboot
启动第一个程序
报错了
解决报错,缺少了MySql依赖项
pom.xml添加mysql依赖配置
xml
代码解读
复制代码
<dependency> <groupId>com.mysql</groupId> <artifactId>mysql-connector-j</artifactId> <version>8.0.31</version> <scope>runtime</scope> </dependency>
报错信息消失
开始启动
重新启动项目
编写第一个接口
在同级目录下面建立一个controller文件夹。然后建立一个 JavaAppController.java 文件的控制器。
定义RESTful API控制器
引入
java
代码解读
复制代码
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.GetMapping
;:导入GetMapping注解,这个注解用于处理HTTP GET请求。它可以将一个方法映射到特定的URL路径。import org.springframework.web.bind.annotation.RestController
;:导入RestController注解,这个注解用于标识一个类为RESTful控制器。它的作用是将控制器中的每个方法的返回值直接作为HTTP响应体返回,而不是返回一个视图。
结合起来,这段代码通常出现在一个Spring Boot应用中,用于定义一个处理GET请求的RESTful API控制器。
java
代码解读
复制代码
package com.example.javaapp.controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class JavaAppController { @GetMapping("/test") public String test() { return "hello java"; } }
启用Spring MVC的Web功能
这里的含义是使用mvc模板绑定html模板,绑定数据层。如果是这种方式,则需要开启mvc的web功能
java
代码解读
复制代码
package com.example.javaapp; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.web.servlet.config.annotation.EnableWebMvc; @SpringBootApplication @EnableWebMvc public class JavaAppApplication { public static void main(String[] args) { SpringApplication.run(JavaAppApplication.class, args); } }
MVC模式示例
java
代码解读
复制代码
import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; @Controller public class EmployeeController { @GetMapping("/employees") public String getEmployees(Model model) { // 假设我们有一个员工列表 List<Employee> employees = fetchEmployees(); // 将员工列表添加到模型中 model.addAttribute("employees", employees); // 返回视图名称 return "employeeList"; // 视图名称 } }
我这里没有使用这样方式
定义实体类
定义一个实体类,用于表示任务表的字段
java
代码解读
复制代码
package com.example.javaapp.entity; import lombok.Data; // 导入Lombok:import lombok.Data; 导入Lombok库中的@Data注解。Lombok是一个Java库,用于减少样板代码 // @Data注解:这个注解自动生成以下内容: // 所有字段的getter和setter方法。 // toString()方法,方便打印对象信息。 // equals()和hashCode()方法,便于比较对象。 @Data public class JavaApp { private String name; private String code; }
添加lombok依赖项
xml
代码解读
复制代码
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.24</version> <!-- 使用最新版本 --> <scope>provided</scope> </dependency>
报错,原因是我还没建表
建数据表
继续报错
该模式需要建立 list.html绑定数据
也就是刚才说的那种模式,则需要这种方式。
修改模式为RestController注解模式
java
代码解读
复制代码
package com.example.javaapp.controller; // import org.springframework.stereotype.Controller; // import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.GetMapping; import com.example.javaapp.entity.Employee; import com.example.javaapp.repository.JavaAppDAO; import org.springframework.web.bind.annotation.RestController; import java.util.List; @RestController @RequestMapping("/web") public class JavaAppController { private final JavaAppDAO javaAppDAO; public JavaAppController(JavaAppDAO javaAppDAO) { this.javaAppDAO = javaAppDAO; } @GetMapping("/list") public List<Employee> listEmployees() { return javaAppDAO.getAllEmployees(); } }
重启应用,查询接口
编写新增接口
java
代码解读
复制代码
@PostMapping("/add") public String addEmployee(@RequestBody Employee employee) { javaAppDAO.createEmployee(employee.getName(), employee.getCode()); // 调用服务层方法添加员工 return "员工添加成功"; // 返回成功消息 }
处理报错
数据表有多余的字段,删除即可
新增接口编写完成
编写修改接口
java
代码解读
复制代码
@PutMapping("/update/{id}") public String updateEmployeed(@PathVariable String id, @RequestBody Employee employee) { javaAppDAO.updateEmployee(id, employee.getName(), employee.getCode()); // 调用服务层方法更新员工 return "员工更新成功"; // 返回成功消息 }
测试接口
java
代码解读
复制代码
//删除接口 @DeleteMapping("/delete/{id}") public String deleteEmployeed(@PathVariable String id) { javaAppDAO.deleteEmployee(id); return "员工删除成功"; }
报错 java: 错误: 不支持发行版本 5
版本不一致导致修改版本一致即可
1. 查看 -文件-项目结构-项目设置-项目
查看settings里面的java Compiler
文件-设置
去File里找Settings打开,在打开的页面中找到Build开头的那一串,接着找它下面Compiler下的java compiler,
修改到对应的版本,然后应用保存就可以关闭了。
重新运行代码.
程序包org.springframework.stereotype 不存在——解决办法
1.File—>Settings----->Build,Execution,Deployment——>Maven——>Runner——>选择Delegate IDE,选择自己安装的JRE的路径
springboot打包jar
先设置:点击 File ==> Project Structure ==> Artifacts ==> 点击加号 ==> 选择JAR ==> 选择From modules with dependencies
开始打包
打包完成
打完了以后,就会出现jar的包
宝塔部署jar包
宝塔配置java jdk的环境
上传jar包到服务器目录
生成端口信息,配置端口放行
配置端口代理的域名
浏览器打开:v3.kestrel-task.cn/employee/li… 即可看到界面
标签:java,Spring,代码,CRUD,springframework,org,import,错误处理,public From: https://blog.csdn.net/weixin_47588164/article/details/142516138原文链接:https://juejin.cn/post/7418063388093284364