由于之前从来没有使用Java开发过服务,所以这次也算是试水尝鲜。咨询了几个后端大佬,对于创建基于Spring Boot框架的J2EE项目有了一定的了解。从项目结构到插件用法,通过一个简单的J2EE项目都过了一遍。千里之行始于足下,希望本文能够对想要学习Spring Boot框架和Java编程的朋友有一定帮助。
开发环境和工具
使用Spring Boot框架开发J2EE代码的核心,就是使用各种插件。这是我对于本次实践的一个感悟(如有异议可以留言讨论)。如果对于Spring Boot框架不了解,对于Spring Boot框架中涉及到的插件不了解,那么对于初学者来说,真的是很难开始的。所以,本文准备一上来就先把开发基于Spring Boot的J2EE项目需要用到的工具和插件都介绍一下。
- Java SE。Java开发和运行环境,当前Java对于个人用户和开发免费,另外可以考虑开源项目OpenJDK
- IntelliJ IDEA开发工具,IDEA Community版本为开源免费版本。很早以前更多使用Eclipse
- Maven,帮助构建项目的工具,简单可以理解为是包管理器。
- Spring Tools。一个能够帮助构建基于Spring Boot项目的官方工具。也可以使用Spring Initializr在线工具创建Java项目配置文件。
以上就是开发J2EE项目需要准备的环境和工具。在创建项目时,我们要选择创建maven项目。以下是一个简单的在IDEA开发工具中创建Maven项目的流程截图。
完成以后,会创建一个src文件夹和pom.xml的文件。接下来,我们将介绍一个基于Spring Boot的Java项目需要的基本插件。
Java项目基础依赖库
Java项目的依赖信息都在pom.xml文件中管理。样例可以参考在《使用MyBatis自动生成和更新Mapper》一文中涉及的Java项目代码。通常pom文件不需要我们手动编辑,可以使用工具自动创建,例如上节中提到的Spring Initializr在线工具。使用这类工具,可以很方便的在项目创建阶段就把需要的基础依赖配置好。以下是使用Spring Boot框架搭建Java项目时常用的一些依赖库。
- Spring Boot Starter Web:使用Spring Boot创建基出Web服务,RESTFUL接口服务;
- Spring Boot Starter Test:测试依赖库,即使不写测试用例也建议添加这个依赖;
- MyBatis Spring Boot Starter:MyBatis依赖库,详情见《使用MyBatis自动生成和更新Mapper》;
- MyBatis Dynamic SQL:MyBatis动态SQL查询支持,MyBatis 3.0以后需要,详情见《使用MyBatis自动生成和更新Mapper》;
- MySQL Connector/J:MySQL连接库;
- Fastjson:比较好用的JSON库;
- Apache Commons Lang:常用的工具类,包括数组操作,字符串操作,对象操作等等;
- Druid:alibaba提供的数据库连接池依赖库(应该就不需要上面的MySQL Connector/J了;
- Lombok:帮助类,可以减少编码量;
- Logback:开源日志组件。已经默认包含在Spring Boot框架中,不用手动添加;
Java项目结构
一般一个简单的基于Spring Boot的RESTFUL API项目(常用于微服务)通常有Controller,Service,Dao组成。其中Controller文件夹中定义所有Restful API的controller类。Service则定力对应的业务接口,以及实现这些接口的服务类。Dao中的内容主要是MyBatis自动创建的Model和Mapper,以及给予Mapper的自定义派生接口。
映射Web请求的2种方法
RequestMapping和GetMapping
映射Web请求参数的4种方法
在URL结构中
使用RequestParam
使用RequestBody自动绑定Map对象
使用RequestBody自动绑定自定义对象
扫码联系船长