最近公司要上个新系统,指定由我来带两个人进行开发,既然是新项目,那么项目搭建的事就落到我的头上了。现在都是使用springboot进行开发,为此我搭环境使用的是springboot,具体java环境如下,
【资料图】
使用springboot的版本是2.3.3.RELEASE。使用maven进行项目管理,
总结下,我使用到的环境,
JDK:JDK1.8
springboot:2.3.3.RELEASE
maven:3.8.1
好了,使用的环境就是上面这些。搭建项目框架的第一步就要确认好使用的环境,而且要和团队成员沟通好项目环境,大家的环境一致,避免开发过程中因为环境产生问题。确认环境另一个好处是在部署的时候,减少开发和部署环境不一致。这个一定要注意生产环境,务必开发和生产使用同一套环境。
二、确定项目结构现在后端开发都是基于springboot的web项目,web项目一般都是使用MVC的模式,所以这里也采用类似的模式。在项目maven结构组成上,采用父子项目,也就是一个主项目下有多个子module,分为下面几个,
p-admin
p-web --》负责项目启动
p-facade --》控制层,写controller
p-service --》服务层,具体的业务处理
p-dao --》持久化层,负责和数据库打交道
p-common --》公共层,util类\入参、出参等
p-api --》提供给第三方的接口
大体的项目结构给出来了,下面看子项目间的依赖关系哈,
p-web依赖于p-service、p-common
p-service依赖于p-dao、p-common
p-api依赖于p-common
其他的依赖第三方的库暂时不看,下面再说。接下来就可以进行实际操作创建项目了。
三、创建项目3.1、创建父项目(p-admin)这里使用maven的父子项目结构,父项目是这样创建的,
在idea中file-->new-->project出现下面的界面,直接next就好,
到下面的界面,填写上项目名称p-admin,
最好点finish即可,这样项目便创建完成,创建完成后,项目文件夹下会有一些多余的删除即可,只保留pom.xml。可删除的有src文件夹等。
紧接着创建子项目。
3.2、创建子项目在父项目p-admin文件夹下右键,new-->Module
显示的创建界面和父项目是一样的,
写上相应的子项目名称p-web、p-facade等即可。
这样父子项目结构就创建完成了,如下图
四、配置pom文件4.1、父pom文件创建完项目后,有个很重要的事情,那就是配置pom文件,关注pom文件总的打包方式、依赖关系两个方面。先看父项目的pom.xml
每创建一个子项目在父pom中就会多一个配置,
在父pom中有多个子module。
由于使用的springboot的环境,这里我引入一个父引用,
org.springframework.boot spring-boot-starter-parent 2.3.3.RELEASE
引入这个的好处是可以使用其内的依赖,看下spring-boot-starter-parent中的内容,可以看到其中还有一个父引用,
从该引用名称中知道其中定义了spring-boot的依赖,可以看到定义了很多依赖,
所以,使用了spring-boot-starter-parent的项目中,可以直接使用相关依赖,不用关心版本号。
在p-admin的pom文件中还要定义其子模块的依赖,以及p-admin使用的但不在spring-boot-starter-parent中定义的依赖,这样子模块要使用的时候也不用关心版本号。
4.2、子pom文件看下p-facade子项目中的pom文件。
五、启动项目前面说到p-web项目用来启动项目的,看下启动类,
package com.wcj.my;import org.mybatis.spring.annotation.MapperScan;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;/** * 启动类 * @date 2023/6/03 17:04 */@MapperScan(basePackages = "com.wcj.my.mapper")@SpringBootApplication()public class StartSpringbootApplication { public static void main(String[] args) { SpringApplication.run(StartSpringbootApplication.class,args); }}
这样就可以了,另外spring-boot有配置文件,application.yml或application.properties文件,这里使用application.yml文件,
server: port: 8085
现在启动看下,
可以看到启动的线程ID是26352,在8005端口提供web服务,并且还有一个内部的线程池:applicationTaskExecutor。
这样一个项目就搭起来了。
总结下,搭建一个项目的一些必备步骤,
1、确定项目环境;
2、确定项目结构
3、项目搭建及测试;
在搭项目的过程中,每个人都会或多或少遇到一些坑,欢迎关注下方公众号交流。另源码也可以通过公众号获取。
标签:
- 世界球精选!南海普陀山在哪个省哪个市_南海普陀山 2023-06-03 16:12:29
- 天天动态:历城区疾病预防控制中心开展世界无烟... 2023-06-03 14:58:42
- 在产险业占比仅1.1%的家财险,如何重现“辉煌”? 2023-06-03 14:12:18
- 德宏二级工伤怎么算|全球独家 2023-06-03 12:53:47
- 搭建一个属于自己的springboot项目 2023-06-03 16:34:04
- 中国星辰|这是一封中国航天员从“天宫”发来... 2023-06-03 16:20:55
- 世界聚焦:湖北枣阳:桃产业链式发展成就富民产业 2023-06-03 16:18:40
- 每日短讯:2023款凯迪拉克CT6曝光,贯穿式曲面... 2023-06-03 16:19:11
- 世界球精选!南海普陀山在哪个省哪个市_南海普陀山 2023-06-03 16:12:29
- 广州高新技术企业博创智能装备股份有限公司招... 2023-06-03 16:08:34
- 天天热头条丨聊一聊:为何坚持使用高压油箱?... 2023-06-03 15:25:42
- 股东表决权怎么确定 全球视点 2023-06-03 15:10:55
- 武穴“双低菜籽”:“十全大美”的大田作物 ... 2023-06-03 15:08:02
- 网传上海一新盘只需一成首付?记者去现场看了看 2023-06-03 15:09:27
- 当前视讯!【原】新房坐南朝北,但房门坐西朝... 2023-06-03 14:54:40
- 注意了!高考前滥用补品、过度进补、改变饮食... 2023-06-03 15:11:57
- 天天动态:历城区疾病预防控制中心开展世界无烟... 2023-06-03 14:58:42
- 焦点滚动:95118是京东金融客服电话吗(怎么联... 2023-06-03 14:45:45
- 戒酒最好的办法(最管用的戒酒方法) 2023-06-03 14:22:53
- 险资又动手了,举牌这家A股公司!什么信号? 2023-06-03 14:30:47
- 全球速看:特写:三个小小的心愿,40个藏族孩... 2023-06-03 14:21:35
- 在产险业占比仅1.1%的家财险,如何重现“辉煌”? 2023-06-03 14:12:18
- RCEP全面生效为区域经济一体化注入强劲动力-全... 2023-06-03 14:11:43
- 当前速讯:形容书厚的夸张句(厚的夸张句) 2023-06-03 13:35:04
- 腾圣TITAN系列:单瓦成本下降35%,让安全不再... 2023-06-03 13:40:30
- 逆水寒手游熙春楼美食录怎么做[多图] 2023-06-03 13:16:45
- 世界讯息:RCEP全面生效 首票货物从深圳通关 2023-06-03 12:55:38
- 德宏二级工伤怎么算|全球独家 2023-06-03 12:53:47
- 横扫欧美的“减肥神药”国内申报!“躺着减肥... 2023-06-03 12:17:39
- 今日热文:厉旭女朋友_厉旭 2023-06-03 12:18:25
- 抱着上厕所,吃饭要人喂,小S和具俊晔是在合力... 2023-06-03 12:32:35
- 全球快资讯丨太宠啦!湖北一高校美食节1吨小龙... 2023-06-03 12:15:19
- 业界首个服务器碳排放评测标准发布 2023-06-03 12:22:59
- 前沿资讯!广州新李汽车零部件有限公司招聘PE工... 2023-06-03 12:06:30