# baseSpringboot
**Repository Path**: basi-cframework/base-springboot
## Basic Information
- **Project Name**: baseSpringboot
- **Description**: 搭建的2.3.7版本的springboot框架,使用的java版本为16.0.1。其中配置好了Junit5、fastjson、mysql、mybatis、jdbc和swagger2 3.0。
- **Primary Language**: Unknown
- **License**: MulanPSL-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2021-06-27
- **Last Updated**: 2021-08-29
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 工程简介
springboot基础框架
# 使用方法
## 版本要求:
springboot:2.3.7.RELEASE java:16 其他版本未必能直接用
## 修改项目名称
下载后要修改成自己使用的项目框架,需要修改项目名字,在idea下:
1. 打开项目后选中项目右键:refactor-rename(shift+F6),换成自己的项目名
2. 打开pom.xml文件,在上面有一些关于项目的描述,将其修改成自己的项目信息
```
4.0.0
com.example
demo
0.0.1-SNAPSHOT
demo
Demo project for Spring Boot
```
3. 关掉项目,将项目最外层的目录名称也改成自己的名称。
4. 如果是git clone下来的项目,则需要清掉项目的git信息,右键项目选择“git bash here”,然后输入命令:
```
find . -name ".git" | xargs rm -Rf
```
至此就是一个全新的项目了
5. 此时就需要重新把项目push到代码仓,以码云为例:
1. 先在码云新建一个代码仓,名字必须和项目名称一致,不需要生成readme等文件,仅仅是一个空仓
2. 然后在本地git clone 下来(如果放在一个目录下,则会与刚才的项目冲突,所以可以先把刚才的项目名字稍微修改一下)
3. 将之前准备好的项目里的文件全部拷贝到这个空仓里面。
4. 然后便是启动项目验证一下,找到main.java.DemoApplication,首先先“shift+F6”修改其为自己项目的名称,如“LoginApplication”。
5. 此时便run起来看看,如果成功跑起来,则基本没问题
6. 打开网址:http://localhost:8080/swagger-ui/index.html ,如果正常进入,那说明没问题了,稳妥点可以试试里面的测试接口。

7. 最后便push到代码仓就行了。
# 安装配置
## 创建springboot项目
1. 使用idea,settings-plugins里搜索“Spring Assistant”。安装好后即可。
2. new project-根据下图操作,其中阿里云地址为:https://start.aliyun.com/

3.下一步中按需修改好名字,java版本选择最接近的,没有也没事,不影响,后面在pom文件中改就行了

4.然后下一步,web中选中spring web,关系型数据库中选中JDBC API、mybatis framework和mysql Driver,测试里面选中Junit,杂项里面选中fastjson。当然这里面的选项都是按需选择的。

5.下一步就继续完成就行了。
6.配置swagger2 3.0,这个版本比之前配置简单了,只需在pom文件中加入依赖:
```
io.springfox
springfox-boot-starter
3.0.0
```
然后在启动程序xxxApplication的类上方添加注解`@EnableOpenApi`,如下图:

到此配置就全部完成了
7.在pom文件中,找到`java.version`将版本修改为自己的版本,就可以将程序跑起来看看,如果没有报错,那么就在浏览器访问地址:http://localhost:8080/swagger-ui/index.html ,如果能成功进去看到swagger的界面,那就成功了。
8.配置数据库,在src.main.resources.application.properties(也有可能叫xxx.yml)文件中修改数据库的用户名和密码就行了,更详细的配置请自行查询。
## 目录结构
- config:存放配置类
- constant:常量类
- controller:前端控制器接口层
- dto:数据传输对象Data Transfer Object用于封装多个实体类domain之间的关系,不破坏原有的实体类结构
- entity:数据库实体类,数据库对象的映射
- service:数据服务接口层
- service.impl:数据服务实现层
- mapper:数据库接口访问层
- utils:工具库类
- vo:视图包装对象View Object用于封装客户端请求的数据,防止部分数据泄露如:管理员ID,保证数据安全,不破坏 原有的实体类结构