Spring Boot学习总结(1)——Spring Boot入门
摘要:Spring Boots是为了帮助开发人员很容易的创建出独立运行和产品级别的基于 Spring 框架的应用。

从 Spring Boot 项目名称中的 Boot 可以看出来,Spring Boot 的作用在于创建和启动新的基于 Spring 框架的项目。它的目的是帮助开发人员很容易的创建出独立运行和产品级别的基于
Spring 框架的应用。Spring Boot 会选择最适合的 Spring 子项目和第三方开源库进行整合。大部分 Spring Boot 应用只需要非常少的配置就可以快速运行起来。
Spring Boot 包含的特性如下:
- 创建可以独立运行的 Spring 应用。
- 直接嵌入 Tomcat 或 Jetty 服务器,不需要部署 WAR 文件。
- 提供推荐的基础 POM 文件来简化 Apache Maven 配置。
- 尽可能的根据项目依赖来自动配置 Spring 框架。
- 提供可以直接在生产环境中使用的功能,如性能指标、应用信息和应用健康检查。
- 没有代码生成,也没有 XML 配置文件。
springboot在使用约定大于配置的规则之后,配置便少了太多太多,如果还是如spring一样在xml文件里面进行相关的配置,那么还是同
以前一样,spring令人头疼的配置问题一样难解。springboot在更多的时候只需要进行相应的注解标注之后,就可以使用相应的bean,用法简单。
就如同下图使用Mybatis的方法,简单方便。
在注解中指定mapper的位置,在程序中直接写定mybatis的xml文件相关位置,简单明了,仅仅在如此配置之后就可以正常使用mybatis了。
在个人使用jsp上有另外一点需要说明的,在spring在github中的描述中在application.properties中的配置为以下:
- spring.mvc.view.prefix=/templates/
- spring.mvc.view.suffix=.jsp
我当时使用的springboot的版本为1.2.5,所以当时在运行过程中是找不到相应jsp页面的,上述配置是针对springboot 1.3.0以上使用的,而在
springboot 1.2.5或者及以下需要使用的配置是如下的:
- spring.view.prefix=/WEB-INF/jsp/
- spring.view.suffix=.jsp
在先前的一篇博文中,我曾说过这个问题,在后来使用springboot 1.3.5后才意识到怎么一回事。
在使用nosql上,例如mongodb,springboot是有比较充分的支持的,springboot有一个相关的maven依赖可以使用,如下:
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-data-mongodb</artifactId>
- </dependency>
在加入以上依赖之后,再进行配置mongodb就比较简单,在此不再赘述,但是需要说明另外一点,这里配置之后在相应程序中使用的是
MongoTemplate类,这是spring-data中的相关类,spring在这里操作mongodb给人一种很不好用的感觉,使用体验上,远远不如先前一直使用的
morphia,morphia的API在使用上极其方便,许多操作是可以通过查看morphia中相应的方法上来实现,不需要看额外的使用example,在此
建议在开发中还是使用morphia,morphia的配置方法也比较简单,在上一篇博文中就介绍了这个。
springboot在内嵌相应服务器之后,直接启动应用程序就能运行起整个项目,这个做的非常漂亮,无需再将项目打包,部署到相应tomcat后
运行,在此运行容器还能选择tomcat或者jetty,不得不说做的很不错。
Spring Boot学习总结(1)——Spring Boot入门的更多相关文章
- Spring Boot 学习1-创建Spring Boot应用
如果使用Maven, 确保先安装好Maven再继续. 创建POM文件 在这里有两种方式: 继承Spring Boot parent的pom. 不继承. 继承Spring Boot pom 1 2 3 ...
- Spring Boot 学习方法论-如何正确的入门 Spring Boot
想要入门 Spring Boot,那么什么样的教程是符合初学者学习的(没有太多的Java基础但有一些程序基础或者软件编程知识). 这恰好能够勾出很多问题,比如是文章图文教程适合还是视频教程适合零基础初 ...
- 【转载】Spring boot学习记录(一)-入门篇
前言:本系列文章非本人原创,转自:http://tengj.top/2017/04/24/springboot0/ 正文 首先声明,Spring Boot不是一门新技术.从本质上来说,Spring B ...
- 【Spring Boot学习之一】Spring Boot简介
环境 Java1.8 Spring Boot 1.3.2 一.Spring Boot特点1.使用java运行项目,内置tomcat,无需外部容器:2.减少XML配置,使用properties文件和注解 ...
- 【Spring Boot学习之六】Spring Boot整合定时任务&异步调用
环境 eclipse 4.7 jdk 1.8 Spring Boot 1.5.2一.定时任务1.启动类添加注解@EnableScheduling 用于开启定时任务 package com.wjy; i ...
- 【Spring Boot学习之四】Spring Boot事务管理
环境 eclipse 4.7 jdk 1.8 Spring Boot 1.5.2 一.springboot整合事务事务分类:编程事务.声明事务(XML.注解),推荐使用注解方式,springboot默 ...
- 【Spring Boot学习之三】Spring Boot整合数据源
环境 eclipse 4.7 jdk 1.8 Spring Boot 1.5.2 一.Spring Boot整合Spring JDBC 1.pom.xml <project xmlns=&quo ...
- Spring Cloud 学习笔记(一)——入门、特征、配置
[TOC] 0 放在前面 0.1 参考文档 http://cloud.spring.io/spring-cloud-static/Brixton.SR7/ https://springcloud.cc ...
- spring揭密学习笔记(1) --spring的由来
1.spring起源于在EJB暴露出各种严重问题的情况应运而生. Spring是于2003年兴起的一个轻量级的Java开发框架, Spring倡导一切从实际出发,以实用的态度来选择适合当前开发场景的解 ...
- Spring Boot学习(一):入门篇
目录 Spring Boot简介 Spring Boot快速搭建 1 新建项目 2 运行项目 3 设置spring boot可以热部署(修改后端代码后,自动部署,不用手动部署) 3.1:配置pom.x ...
随机推荐
- SpringCloud学习笔记(5)----Spring Cloud Netflix之Eureka的服务认证和集群
1. Eureka服务认证 1. 引入依赖 <dependency> <groupId>org.springframework.boot</groupId> < ...
- dedecms如何把时间戳转换成正常时间格式
如果在datalist 可以用{dede:field.shijian function=strftime('%Y-%m-%d',@me)/} 如果不在datalist中调用的话,单独调用用<?p ...
- DIV+CSS布局中自适应高度的解决方法
div乱跑问题 (文件<DIV+CSS布局中自适应高度的解决方法.rar>) float 是个很危险的东西 得小心使用 本来有一很好的关于CSS+DIV的论坛 不过现在关门了 甚是可 ...
- Python爬虫简单入门及小技巧
刚刚申请博客,内心激动万分.于是为了扩充一下分类,随便一个随笔,也为了怕忘记新学的东西由于博主十分怠惰,所以本文并不包含安装python(以及各种模块)和python语法. 目标 前几天上B站时看到一 ...
- fastJson 解析
String object = JSON.toJSONString(obj); ------------------obj必须序列化 JSONObject jso=JSON ...
- java流与文件的操作 文件加密
课后作业 1,源代码 import java.io.*; import java.nio.file.*; import java.nio.file.attribute.BasicFileAttribu ...
- 紫书 例题8-8 UVa 1471 (用set实现动态二分)
设切割的区间为(j, i), 注意两边都是开区间. 然后可以预处理出以i为起点的最长连续递增的长度和以j为终点的最长连续递增的长度. 大致思路就是枚举i,右边这一侧的最优值就知道了, 然后这道题的关键 ...
- VS2015--win32project配置的一些想法之cmake
近期两天都在配置一个win32项目.为了实现跨平台,写底层代码的人仅仅build了安卓和ios的工程,没有build win32项目. 因为对一些库不是非常了解.配置起来非常困难,心力交瘁. 为了实现 ...
- 一个leetcode解题报告类目,代码很简洁
http://bookshadow.com/leetcode/ 里面的代码很简洁.可以看.
- max带来的冲突
题目要求: /* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名:sum123.cpp * 作 者:林海云 * 完毕日期:20 ...
