SpringBoot开篇
18年,一笔狗销;19年,猪事顺利
再次回到CSDN博客上和大家一起学习哈,加油 2019,加油程序猿。
新的开篇 SpringBoot
最近小编在读一本,中国工信出版集团 电子工业出版社 出版的一本《Spring Boot 2 精髓》书,从构建小系统到架构分布式大系统。由李家智 著。感觉还是很不错的,将学到的内容分享给大家。
什么是SpringBoot
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过我之前的学习,大致理解为这样的:
在我学习完 JavaWeb (html、css、JavaScript、servlet、jsp)的时,假如要写一个前后台兼顾的网站的话,每一个页面请求,都需要写一个对应的Servlet,这就相当于,每一个页面,实现的功能越多,执行的方法也就越多,发送给后台的请求也就越多,要写的Servlet也就越多,对应的包体系结构也就越大。
紧接着,我们对框架进行了学习,SSH(Spring+structs2+hibernate)以及SSM(Spring+SpringMVC+mybatis),两个强大的框架,虽然说现在大多数人都在使用的是SSM框架,SSH已经是很少使用的了,但是我仍去学习了,因为我更关注的是SSH为什么会趋于劣势,这里就不详细的说了。SSM框架最初的在创建的时候,我们在数据库表结构完整的情况下,需要编写逆向工程的配置文件和启动类,来完成逆向工程生成mapper和entity,也有许多人喜欢用 通用mapper,这不仅仅都是单表操作,而且最重要的是要编写配置文件。在完成上述操作之后,我们还要去编写 Spring 的配置文件,applicationContext.xml(最初学习的时候,我还要将一个Spring 的配置文件拆分为三部分:applicationContext-dao.xml、applicationContext-service.xml 以及applicationContext-tx.xml ,容易记住Spring 都进行了那些操作),这些完成后,还要编写 Mybatis的配置文件,虽然没有很多内容了,数据源也不需要配置了,但是 通用mapper 和分页助手毕竟是人家发布的,你要写在别处也不合适(我一直将通用mapper和分页助手写在这个位置,别处没有尝试,各位大佬又提议的,欢迎在评论区留言),终究是SSM框架,怎么能缺少 SpringMVC的配置文件呢。三年部分框架的配置文件配置完成,看着都是好麻烦的啊。这便开始有了SpringBoot。
SpringBoot 的好处,使用spring boot可以非常方便、通过maven架构项目快速搭建项目,使我们不用关心框架之间的兼容性,适用版本等各种问题,我们想使用任何东西,仅仅添加一个配置就可以。
- src/main/java 程序开发以及主程序入口
- src/main/resources 配置文件
- src/test/java 测试程序
项目包结构的建议:
1、Application.java 建议放到跟目录下面,主要用于做一些框架配置
2、domain目录主要用于实体(Entity)与数据访问层(Repository)
3、service 层主要是业务类代码
4、controller 负责页面访问控制
构建项目的使用
1、在项目的pom.xml 文件中引入需要的 maven 支持模块,可以通过maven仓库查找这些需要的内容。(maven仓库:https://mvnrepository.com/)
2、在标注有 @SpringBootApplication的注解类上启动。启动主程序,打开浏览器访问http://localhost:8080/项目名/Controller层的mapping设置,就可以看到效果了。
初步了解 SpringBoot
SpringBoot 简化了Spring 应用开发,不需要配置就能运行Spring 应用,SpringBoot管理Spring 容器、第三方插件,并提供很多默认系统级服务。大部分Spring应用,无论是简单的Web系统,还是构建复杂系统,都只需要少量的配置和代码就能完成。
SpringBoot 通过 Starter 来提供系统级服务,SpringBoot 已经提供了一系列Starter,你也可以开发自己的Starter 。Spring Boot 会自动为你配置好Spring 需要的各种配置文件、Redis 的jar包,依赖包,以及合适的版本。
SpringBoot 提供常用的starter
Spring Boot 应用启动器有如下的内容:
Hello,SpringBoot 创建第一个项目
- 创建的是 Maven 工程。
- 在 pom.xml 中增加 Web 支持,
- 搭建 Web 应用,必须添加 spring-boot-starter-web 依赖。
- spring-boot-dependencies 默认使用的是内置的tomcat,并支持SpringMVC、RESTful 服务。
- 使用热部署:spring-boot-devtools 依赖。
- 添加 REST 支持
- 对于多个系统互相访问,最好不要直接访问对方的数据库,而应该采用类似的RESTful架构,封装了逻辑的接口。这样,对方系统的数据库变更,业务逻辑变化或者版本升级,都不会影响其他系统,后边会细说。