【Spring Boot教程:从入门到精通】掌握Spring Boot开发技巧与窍门(三)-配置git环境和项目创建

主要介绍了如何创建一个Springboot项目以及运行Springboot项目访问内部的html页面!!!

文章目录

前言

配置git环境

创建项目

​编辑

在SpringBoot中解决跨域问题

配置Vue

安装Nodejs

 安装@vue/cli

启动vue自带的图形化项目管理界面

总结


前言

主要介绍了如何创建一个Springboot项目以及运行Springboot项目访问内部的html页面!!!


提示:以下是本篇文章正文内容,下面案例可供参考

配置git环境

1.安装Git Bash

git安装教程

2.进入家目录生成秘钥:执行命令ssh-keygen

3.将.ssh/中的id_rsa.pub的内容复制到gitee上

一些基本命令,在gitee上创建项目后出现!!!

创建项目

创建项目后端
https://start.spring.io/加载慢的话,可以换成:https://start.aliyun.com

(注:最新版的idea抛弃了jdk8,URL换成上面的阿里云的idea的java选项就有jdk8)

 此时项目就创建完毕了。

项目的启动类

当我们访问初始页面只需要在浏览器中输入

http://localhost:8080/

我们可以采取一下方法来访问一个html页面。

 我们在controller包下面创建一个控制器类。

package org.example.backend.controller.pk;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;@Controller
@RequestMapping("/pk")
public class IndexController {@RequestMapping(value = "/index")public String index(){return "pk/index";}
}

@Controller

  • 用于标识控制器类,负责处理用户请求并返回视图。
  • 方法通常使用 @GetMapping@PostMapping 等注解来映射HTTP请求到具体的处理方法。
  • 方法返回一个字符串,代表视图名,Spring Boot会自动查找匹配的模板文件并渲染。

注:注解一定要用@Controller,如果用@RestController那么方法返回的是json字符串,不会解析视图!!页面报404说明路径错误!!

application.properties文件中一定要配置这两个值,自动给函数的返回值加上项目的上下文路径,一个是对所有的页面加上后缀名.html。
spring.thymeleaf.prefix=classpath:/templates/spring.thymeleaf.suffix=.html

 当我们要在项目中添加图片,往往是在图片放在static文件夹下面

<html>
<body>
<div style="text-align: center"><img src="/images/img.png">
</div>
</body>
</html>

 

当我们想直接返回页面信息的时候我们需要采用@RestController注解 

  • 用于标识控制器类,负责处理用户请求并直接返回数据对象。
  • 方法通常使用 @GetMapping@PostMapping 等注解来映射HTTP请求到具体的处理方法。
  • 方法返回一个数据对象,Spring Boot会将该对象序列化为JSON或XML并返回给客户端。
package org.example.backend.controller.pk;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@RequestMapping("/pk")
public class BotInfoController {@RequestMapping("/getbotinfo")public String getBotInfo(){return "hahahahah";}
}

 

方法也可以返回列表。

    @RequestMapping("/getbotinfo")public List<String> getBotInfo(){ArrayList<String> list = new ArrayList<>();list.add("Bot");list.add("tiger");list.add("cat");return list;}

 

当然也可以返回map集合、对象等等!!!

如何想修改项目的端口号,可以在application.properties中修改server.port

server.port=3000

 此时项目的端口号就修改为了3000

在SpringBoot中解决跨域问题

添加配置类:CorsConfig

package com.kob.backend.config;import org.springframework.context.annotation.Configuration;import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;@Configuration
public class CorsConfig implements Filter {@Overridepublic void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {HttpServletResponse response = (HttpServletResponse) res;HttpServletRequest request = (HttpServletRequest) req;String origin = request.getHeader("Origin");if(origin!=null) {response.setHeader("Access-Control-Allow-Origin", origin);}String headers = request.getHeader("Access-Control-Request-Headers");if(headers!=null) {response.setHeader("Access-Control-Allow-Headers", headers);response.setHeader("Access-Control-Expose-Headers", headers);}response.setHeader("Access-Control-Allow-Methods", "*");response.setHeader("Access-Control-Max-Age", "3600");response.setHeader("Access-Control-Allow-Credentials", "true");chain.doFilter(request, response);}@Overridepublic void init(FilterConfig filterConfig) {}@Overridepublic void destroy() {}
}

配置Vue

安装Nodejs

安装地址

(注:下载LTS版本,长期支持版) 

 安装@vue/cli

打开Git Bash,执行:

npm i -g @vue/cli

如果执行后面的操作有bug,可能是最新版有问题,可以尝试安装早期版本,比如:npm i -g @vue/cli@4

启动vue自带的图形化项目管理界面

vue ui

常见问题1:Windows上运行vue,提示无法加载文件,表示用户权限不足。
解决方案:用管理员身份打开终端,输入set-ExecutionPolicy RemoteSigned,然后输入y

 之后就可以在图形化工具里面创建vue项目。


总结

主要介绍了如何创建一个Springboot项目以及运行Springboot项目访问内部的html页面!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3266289.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

k8s核心知识总结

写在前面 时间一下子到了7月份尾&#xff1b;整个7月份都乱糟糟的&#xff0c;不管怎么样&#xff0c;日子还是得过啊&#xff0c; 1、7月份核心了解个关于k8s&#xff0c;iceberg等相关技术&#xff0c;了解了相关的基础逻辑&#xff0c;虽然和数开主线有点偏&#xff0c;但是…

【b站-湖科大教书匠】5 运输层 - 计算机网络微课堂

课程地址&#xff1a;【计算机网络微课堂&#xff08;有字幕无背景音乐版&#xff09;】 https://www.bilibili.com/video/BV1c4411d7jb/?share_sourcecopy_web&vd_sourceb1cb921b73fe3808550eaf2224d1c155 目录 5 运输层 5.1 运输层概述 5.2 运输层端口号、复用与分用…

三维重建 概论

三维重建的方式 通俗来讲,三维重建就是将2D的数据生成3D的模型。 首先将2D的物体,通过各种方法,算法形成几何网格对象,同时用深度信息,处理远近,遮罩等关系,形成最终的3D模型。 在计算机视觉中,三维重建是指根据单视图或者多视图图像重建原始三维信息的过程。 单视图缺…

简单使用nginx

打开下载的nginx文件夹下的。。具体地址 打开并编辑nginx.conf文件 server {listen 8089;//访问端口号server_name localhost;//访问地址#charset koi8-r;#access_log logs/host.access.log main;location / {root D:/development/dist/;//dist包地址index index.h…

论文阅读:面向自动驾驶场景的多目标点云检测算法

论文地址:面向自动驾驶场景的多目标点云检测算法 概要 点云在自动驾驶系统中的三维目标检测是关键技术之一。目前主流的基于体素的无锚框检测算法通常采用复杂的二阶段修正模块,虽然在算法性能上有所提升,但往往伴随着较大的延迟。单阶段无锚框点云检测算法简化了检测流程,…

littlefs文件系统的移植和测试

简介 LittleFS 由ARM官方发布&#xff0c;ARM mbedOS的官方推荐文件系统&#xff0c;具有轻量级&#xff0c;掉电安全的特性。主要用在微控制器和flash上 掉电恢复&#xff0c;在写入时即使复位或者掉电也可以恢复到上一个正确的状态。 擦写均衡&#xff0c;有效延长flash的使…

基于JSP、java、Tomcat三者的项目实战--校园交易网(1)-项目搭建(前期准备工作)

这是项目的初始页面 接下来我先写下我的初始项目搭建 技术支持&#xff1a;JAVA、JSP 服务器&#xff1a;TOMCAT 7.0.86 编程软件&#xff1a;IntelliJ IDEA 2021.1.3 x64 首先我们打开页面&#xff0c;准备搭建项目的初始准备 1.New Project 2.随后点击Next&#xff0c;勾…

C++ | Leetcode C++题解之第287题寻找重复数

题目&#xff1a; 题解&#xff1a; class Solution { public:int findDuplicate(vector<int>& nums) {int slow 0, fast 0;do {slow nums[slow];fast nums[nums[fast]];} while (slow ! fast);slow 0;while (slow ! fast) {slow nums[slow];fast nums[fast]…

栈与递归

1.递归定义的数学函数 2.具有递归特性的数据结构 3.

vue3前端开发-小兔鲜项目-登录功能的业务接口调用

vue3前端开发-小兔鲜项目-登录功能的业务接口调用!这次&#xff0c;正式调用远程服务器的登录接口了。大家要必须使用测试账号密码&#xff0c;才能验证我们的代码。 测试账号密码是&#xff1a;账号&#xff08;xiaotuxian001&#xff09;&#xff1b;密码是&#xff08;1234…

Pytorch使用教学7-张量的广播

PyTorch中的张量具有和NumPy相同的广播特性&#xff0c;允许不同形状的张量之间进行计算。 广播的实质特性&#xff0c;其实是低维向量映射到高维之后&#xff0c;相同位置再进行相加。我们重点要学会的就是低维向量如何向高维向量进行映射。 相同形状的张量计算 虽然我们觉…

FreeRTOS操作系统(详细速通篇)——— 第六章

本专栏将对FreeRTOS进行快速讲解&#xff0c;带你了解并使用FreeRTOS的各部分内容。适用于快速了解FreeRTOS并进行开发、突击面试、对新手小白非常友好。期待您的后续关注和订阅&#xff01; 目录 系统中断管理 1 什么是中断&#xff1f; 1.1中断定义 1.2 中断执行机制 ​…

Chiplet SPI User Guide 详细解读

目录 一. 基本介绍 1.1.整体结构 1.2. 结构细节与功能描述 二. 输入输出接口 2.1. IO Ports for SPI Leader 2.2. IO Ports for SPI Follower 2.3. SPI Mode Configuration 2.4. Leader IP和Follower IP功能图 三. SPI Programming 3.1. Leader Register Descripti…

算法:数值算法

矩阵乘法 定义与性质 矩阵乘法是线性代数中的一个基本运算&#xff0c;它涉及到两个矩阵的点积运算。给定两个矩阵 A&#xff08;mn&#xff09;和 B&#xff08;np&#xff09;&#xff0c;它们的乘积 C&#xff08;mp&#xff09;定义为&#xff1a; 其中&#xff0c; Cij …

大连智点文化传媒有限公司介绍

在辽宁省大连市的文化传媒领域,大连智点文化传媒有限公司(以下简称“智点文化”)以其独特的魅力和专业的服务,逐渐崭露头角。作为一家集广告、文化、营销策划等多功能于一体的综合性文化传媒公司,智点文化不仅拥有深厚的行业底蕴,还不断探索与创新,以适应快速变化的市场需求。 …

在英特尔 Gaudi 2 上加速蛋白质语言模型 ProtST

引言 蛋白质语言模型 (Protein Language Models, PLM) 已成为蛋白质结构与功能预测及设计的有力工具。在 2023 年国际机器学习会议 (ICML) 上&#xff0c;MILA 和英特尔实验室联合发布了ProtST模型&#xff0c;该模型是个可基于文本提示设计蛋白质的多模态模型。此后&#xff0…

AI发展下的伦理挑战:构建未来科技的道德框架

一、引言 随着人工智能&#xff08;AI&#xff09;技术的飞速发展&#xff0c;我们正处在一个前所未有的科技变革时代。AI不仅在医疗、教育、金融、交通等领域展现出巨大的应用潜力&#xff0c;也在日常生活中扮演着越来越重要的角色。然而&#xff0c;这一技术的迅猛进步也带来…

面试前端实习常问的关于【ES6新特性】的问题

ES6新特性 日常前端代码开发中&#xff0c;有哪些值得用 ES6 去改进的编程优化或者规范? 常用箭头函数来取代有this指向的函数常用 let 取代 var 命令常用数组/对象的结构赋值来命名变量&#xff08;结构更清晰&#xff0c;语义更明确&#xff0c;可读性更好&#xff09;在长字…

《Java初阶数据结构》----6.<优先级队列之PriorityQueue底层:堆>

前言 大家好&#xff0c;我目前在学习java。之前也学了一段时间&#xff0c;但是没有发布博客。时间过的真的很快。我会利用好这个暑假&#xff0c;来复习之前学过的内容&#xff0c;并整理好之前写过的博客进行发布。如果博客中有错误或者没有读懂的地方。热烈欢迎大家在评论区…

ElasticSearch学习篇15_《检索技术核心20讲》进阶篇之TopK检索

背景 学习极客实践课程《检索技术核心20讲》https://time.geekbang.org/column/article/215243&#xff0c;文档形式记录笔记。 相关问题&#xff1a; ES全文检索是如何进行相关性打分的&#xff1f;ES中计算相关性得分的时机?如何加速TopK检索&#xff1f;三种思路 精准To…