百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT技术 > 正文

SpringBoot创建第一个项目IDEA版

wptr33 2025-08-02 22:17 19 浏览

1. 介绍

1.1 介绍

今天福哥将会带着大家使用IDEA开发工具建立一个SpringBoot框架的项目,项目包括一个RESTFul接口和一个首页。通过这个教程大家可以学会如何使用SpringBoot框架开发web程序。

2. 创建项目

2.1 启动IDEA

启动IDEA进入项目管理界面,点击“New Project”打开创建项目向导。

2.2 项目模板

选择项目模板,这里我们当然是选SpringBoot了,但是你会发现找不到Spring Boot模板,在IDEA里面Spring Boot叫Spring Initializr。

2.3 项目参数

福哥给出了几个关键的参数的说明。

Group

就是主项目的名称,通常情况下可以是项目的顶级域名倒着写

Artifact

子项目/模块的名称,也是域名的格式

Java version

记得选 满足自己项目的版本的Java环境

Name

项目的名称

2.4 依赖库

福哥这里只选择了一个Spring web基础库,其他的以后慢慢加吧!

2.5 项目路径

这里添加项目的名称和保存路径,这里的项目名称会在IDEA里面显示。

3. Maven

完成项目创建后,会自动IDEA的项目开发界面,这时候IDEA会开始下载基础库和依赖库。虽然IDEA也会去下载Manven需要的库,不过那样太慢了,而且也不一定是我们想要的版本。

3.1 下载

从官方下载一个吧,官方下载地址。

https://maven.apache.org/download.cgi

记得选择bin版本,可以直接使用的。

下载完解压缩,放到一个你你喜欢地地方。

3.2 阿里云

由于默认情况下maven是从官方下载依赖库的,而官方下载的速度实在是不敢恭维,这里换成阿里云镜像源可以大大提高下载依赖库的速度。

打开conf/settings.xml,在mirrors节点下面添加阿里云镜像源,并删除默认的maven-default-http-blocker源。

<mirror>
  <id>alimaven</id>
  <mirrorOf>central</mirrorOf>
  <name>aliyun maven</name>
  <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>

3.3 配置

点击IDEA的File > Settings,打开设置。

展开Build, Execution, Deployment > Build Tools > Maven设置界面,修改Maven home path为刚刚解压缩的maven文件夹的路径,修改User settings file指向刚刚设置阿里云镜像源的settings.xml文件的路径。

点击OK保存设置后需要重新启动项目才能生效~~

4. FreeMarker

增加freemarker依赖库,我们需要用它来做web首页。

4.1 pom.xml

打开pom.xml,在dependencies节点下面增加freemarker的依赖库。

<!-- freemarker -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>

4.2 maven

通过maven手动重新导入项目依赖库。

4.3 application.properties

freemarker库安装好了,现在我们需要配置一下freemarker,SpringBoot项目的配置文件在application.properties里面。

##############################################################################
# free marker
##############################################################################

spring.freemarker.template-loader-path=classpath:/templates/
spring.freemarker.cache=false
spring.freemarker.charset=UTF-8
spring.freemarker.content-type=text/html
spring.freemarker.check-template-location=true
spring.freemarker.expose-request-attributes=true
spring.freemarker.allow-session-override=true
spring.freemarker.request-context-attribute=request
spring.freemarker.suffix=.ftl

5. 开发

现在我们可以开始开发了!!

项目的代码根目录是src/main/java/net/tongfu/demo/,下面的程序文件都是以这个目录为基准讲解的哦~

项目的资源根目录是src/main/resources/,下面的资源文件都是以这个目录为基准讲解的哦~

5.1 web首页

5.1.1 DemoPageController.java

建立controller目录,里面建立DemoPageController.java程序文件,里面写上如下代码:

@Controller
public class DemoPageController {
    
    @RequestMapping("/")
    String responseIndex(){
        
        return "index";
    }
}

5.1.2 index.ftl

在templates目录下面建立index.ftl模板文件,里面写上如下代码:

<p>
    跟<a href="/fuge">福哥</a>学编程,真是太简单了~~
</p>
<a href="https://tongfu.net/">https://tongfu.net</a>

5.2 测试接口

5.2.1 DemoController.java

在controller目录下面建立DemoController.java程序文件,里面写上如下代码:

@RestController
public class DemoController {

    @RequestMapping("/fuge")
    Map<String, Object> responseFuge(){
        Map<String, Object> map = new LinkedHashMap<>();

        map.put("name", "同福");
        map.put("age", 35);

        return map;
    }
}

6. 测试

按下Shift + F10启动IDEA的编译执行任务。

成功了!下面我们打开浏览器,输入网址测试吧!

7. 总结

今天福哥带着童鞋们把使用IDEA创建SpringBoot项目的方法学习了一遍,这里面包括了如何创建SpringBoot项目,如果配置Maven工具包,如何开发页面程序,如果开发接口程序。

大家可以在下面自己多多练习,后面福哥会逐步教给大家Java工程师的技术的~~


https://tongfu.net/home/35/blog/513601.html

相关推荐

oracle数据导入导出_oracle数据导入导出工具

关于oracle的数据导入导出,这个功能的使用场景,一般是换服务环境,把原先的oracle数据导入到另外一台oracle数据库,或者导出备份使用。只不过oracle的导入导出命令不好记忆,稍稍有点复杂...

继续学习Python中的while true/break语句

上次讲到if语句的用法,大家在微信公众号问了小编很多问题,那么小编在这几种解决一下,1.else和elif是子模块,不能单独使用2.一个if语句中可以包括很多个elif语句,但结尾只能有一个...

python continue和break的区别_python中break语句和continue语句的区别

python中循环语句经常会使用continue和break,那么这2者的区别是?continue是跳出本次循环,进行下一次循环;break是跳出整个循环;例如:...

简单学Python——关键字6——break和continue

Python退出循环,有break语句和continue语句两种实现方式。break语句和continue语句的区别:break语句作用是终止循环。continue语句作用是跳出本轮循环,继续下一次循...

2-1,0基础学Python之 break退出循环、 continue继续循环 多重循

用for循环或者while循环时,如果要在循环体内直接退出循环,可以使用break语句。比如计算1至100的整数和,我们用while来实现:sum=0x=1whileTrue...

Python 中 break 和 continue 傻傻分不清

大家好啊,我是大田。...

python中的流程控制语句:continue、break 和 return使用方法

Python中,continue、break和return是控制流程的关键语句,用于在循环或函数中提前退出或跳过某些操作。它们的用途和区别如下:1.continue(跳过当前循环的剩余部分,进...

L017:continue和break - 教程文案

continue和break在Python中,continue和break是用于控制循环(如for和while)执行流程的关键字,它们的作用如下:1.continue:跳过当前迭代,...

作为前端开发者,你都经历过怎样的面试?

已经裸辞1个月了,最近开始投简历找工作,遇到各种各样的面试,今天分享一下。其实在职的时候也做过面试官,面试官时,感觉自己问的问题很难区分候选人的能力,最好的办法就是看看候选人的github上的代码仓库...

面试被问 const 是否不可变?这样回答才显功底

作为前端开发者,我在学习ES6特性时,总被const的"善变"搞得一头雾水——为什么用const声明的数组还能push元素?为什么基本类型赋值就会报错?直到翻遍MDN文档、对着内存图反...

2023金九银十必看前端面试题!2w字精品!

导文2023金九银十必看前端面试题!金九银十黄金期来了想要跳槽的小伙伴快来看啊CSS1.请解释CSS的盒模型是什么,并描述其组成部分。...

前端面试总结_前端面试题整理

记得当时大二的时候,看到实验室的学长学姐忙于各种春招,有些收获了大厂offer,有些还在苦苦面试,其实那时候的心里还蛮忐忑的,不知道自己大三的时候会是什么样的一个水平,所以从19年的寒假放完,大二下学...

由浅入深,66条JavaScript面试知识点(七)

作者:JakeZhang转发链接:https://juejin.im/post/5ef8377f6fb9a07e693a6061目录...

2024前端面试真题之—VUE篇_前端面试题vue2020及答案

添加图片注释,不超过140字(可选)...

今年最常见的前端面试题,你会做几道?

在面试或招聘前端开发人员时,期望、现实和需求之间总是存在着巨大差距。面试其实是一个交流想法的地方,挑战人们的思考方式,并客观地分析给定的问题。可以通过面试了解人们如何做出决策,了解一个人对技术和解决问...