四、建立工程
IDEA的第一次打开应该是此界面,假设你现在没有工程,那你肯定是点击“新建工程” - New Project了
1. Spring initializr方式建立
再出现的选项中,选择Spring initializr,这个是IDEA为了帮我们快速创建Spring项目而加入的。其实选择上面的Maven也是一样的,最后都能建立起一个maven项目;
填上项目的名称和一些项目属性,然后 SDK 和 java 都选择java8版本,打包方式为Jar,点击Next
这里的SpringBoot版本只会显示当前官方仍在支持的版本,我们尽量这里选的要低一点,高的话,可能不再支持JDK8了。此处使用了2.7.12。然后搜索并勾选 spring-web 和 mybatis ,还有mysql驱动 这三个组件,点击Finish
经过一段时间的读条后,我们就能看到项目了,注意,此处,如果你在Idea里没有完成maven的配置,在红框处可能会有错误,此时无妨,按照上面 三、3。开发软件配置 配置后,再重启Idea即可
点开后可能还需要稍微修改下POM文件,主要是关注下mysql驱动的版本和类型,直至标红消失为止
2. 简易的Demo
薛微的花了几分钟,简易构建了下框架,确切的说是往里面填了三部分的内容,最后如下图
我们将在下面详细的探讨这些部分的作用
3. Demo的代码层级解析
Demo的代码部分其实就是在工程包下,项目创建时,其自带了个SeeUApplication ,这个类就是整个springboot的启动器,十分重要。我们写的则是业务代码,同样也在工程包com.example.seeu下,别写到其他地方去了。
一般代码层级就三层
1.Controller 控制器层:来自外界的请求,会进入其中,并且根据请求的url来找到哪个类的哪个方法来处理该请求,把请求的意图拆分成各个功能,再调用各自功能模块
2.Service 服务层:业务逻辑的核心,也即上面所谓的功能模块,承上启下
3.Mapper 映射层: 最底层,针对需要用到数据库的地方,负责数据库的增删改查
解释:
@Controller注解来自Spring框架本身 ,作用是将这个类放入容器中。需要注意的是,一般情况下,该类及该类的方法上都有@RequestMapping 注解,该注解里面的值就是用来和url匹配的。
@Service注解来自Spring框架本身,作用和@Controller是一样的将这个类放入容器中(注意不是接口,即@service不应该标注在ProductService上,而是标注在ProductServiceImpl上),之所以分成两个注解,主要还是逻辑上让开发者能清晰分层。
@Mapper注解是由myBatis提供的,其作用也是与spring框架结合,将该接口(的代理类)放入容器中
4. Mapper资源解释
除了代码,我们还在resource目录下放置了个mapper目录,resource指的就是项目资源,是能够被默认加载的,里面放置的主要是工程的配置,一般就是以xml、properties、yml等结尾的文件。如果你想加载其他位置的配置,需要额外导入。
这里的mapper放置的就是对应的sql,和我们在代码位置里mapper写的文件是一一对应的。需要特别注意的是,这里的sql文件里有个命名空间,要写上代码里mapper文件的全路径,不然spring无法把代码和sql文件关联起来。
5. 项目配置
上面的都是代码和资源,真正的配置我们现在来看,我们在IDEA创建工程时,其实它自动给我们建了个配置文件,名为application.properties,里面是空的。但我个人更喜欢yml的形式,所以加了个application.yml文件作为配置文件,内容如下:
我们需要知道,不管是yml,还是properties用处都是一样的,两种文件格式spring也都能识别并解析。只是文件里面的写法不一样,所以根据个人习惯选用
五、安装数据库及数据库工具
其实到现在为止,项目已经可以启动了,但是你真的用起来,走到数据库那一步,是会报错的,因为现在配置数据库,但却没有安装数据库,所以现在需要安装一个Mysql数据库
数据库我也给你准备好了 一个mysql8.0的库,这是windows在线安装的,可以一直点下一步 Windows版mysql8.0
安装设置时 一定要注意记住root用户的密码,后面需要以此连接
默认安装完会自动启动的,你也可以通过上图的管理,来设置mysql8.0的自动或手动启动。也可以通过安装服务器的目录手动启动
安装好数据库,我们还需要去数据库创建库,创建表,还需要用到数据库管理软件,此处推荐navicat,包我也给了 navicat window 安装版 内附安装使用说明,安装成功后如下:
六、建库建表
打开刚安装并注册好的navicat ,新建连接,因为mysql服务器也在本地,所以可以直接使用127.0.0.1
新建数据库,数据库名称是最关键的,因为上面我们的工程用的名字就叫springtest,此处自然也要对应
建完库后继续建表
此处可以直接通过界面按钮,完成表的创建,就不赘述写建表语句了
当然此过程中,你可以直接在数据库预填一些数据,如
七、工程配置检查及启动
将此处的数据库连接配置检查一下,包括数据库ip,端口,数据库名,用户名及密码 和我们设置的是否一样,检查无误后启动项目。
IDEA提供了软件内启动spring工程的能力,只需要在启动类 SeeUApplication 上点一下即可
稍等一会后,就能看到控制台的输出了,因为我们这是极简的工程,所以启动较快,很多复杂项目启动一次就需要数分钟
在url里输入路径后,回车,就可以直接看到指定方法返回预埋的数据了