最初学习strurs2时,虽然觉得也挺好用的,但也有一些不便的地方:1. 模型绑定必须要在Action中声明对应模型的成员变量;2. Action中对外提供调用的接口必须明确注明;3. 要声明一大堆的视图;4.使用ajax时还要在action中声明对应数据的get方法,如上要在代码中添加很多东西才能使用struts2框架,这样通常都会导致action中代码很多或者要添加很多action类,不是那么的简洁。而使用Spring MVC后,不仅可以大大减少配置,而且非侵入式的提供了各项功能的使用,不如使用ajax只需在对应方法上用@ResponseBody注解标明即可;模型自动绑定到参数,甚至请求URL中的片段也可以通过@PathVariable来绑定到入参上;提供了直接入住session、request等的特性,使用起来就一个字——爽。而学习了springboot后发现居然可以这样开发程序,springboot提倡“约定优先”,这样只要遵守springboot的规则,就可以大大减少配置,而且利用springmvc的各种便利性可以大大地加快开发的进度。本系列博文就是使用springboot来搭建一个个人博客网站,记录开发过程中面对的各种问题,希望对阅读的人能够有所帮助。首先是搭建项目骨架,如下:
1. 创建Maven项目,并选择maven-archetype-quickstart作为项目模板,截图如下:

2. 因为maven创建的项目的jdk默认是1.5的,所以要在Build Path中将jdk修改为对应的版本:

3. 添加springboot依赖, pom.xml文件如下:

 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <groupId>com.lvniao</groupId>
<artifactId>blog</artifactId>
<version>1.0</version>
<packaging>jar</packaging> <name>blog</name>
<url>http://maven.apache.org</url> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.3.RELEASE</version>
<relativePath />
</parent> <dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies> <build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>

pom.xml

4. 修改App类,加入spirngboot项目启动代码:

 package com.lvniao.blog;

 import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; @RestController
@SpringBootApplication
public class App
{
@RequestMapping("/")
public String index() {
return "App.index";
} public static void main( String[] args )
{
SpringApplication.run(App.class, args);
}
}

App.java

上述代码中通过@RestController声明控制器中的方法返回值不会经过视图解析处理,而是直接返回给用户;而@SpringBootApplication声明该类是springboot的启动类;在main方法中通过SpringApplication.run(App.class, args);来启动springboot框架;通过@RequestMapping("/")来注解调用index接口方法的url的地址;因为使用@RestController注解类,所以index返回的字符串被直接返回给客户;
5. 配置Run Configuration中的启动类:

6. 以Java Application类型运行项目:

项目启动后在浏览器中使用:localhost:8080地址,即可看到index方法的输出:

如此,边完成了第一个任务。

1. 开篇-springboot环境搭建的更多相关文章

  1. spring-boot 环境搭建(一)

    环境 jdk 8 tomcat 8.5 sts 4.4.2 maven 3.6.1 新建 maven 项目 首先创建一个普通的 maven 项目. pom.xml <project xmlns= ...

  2. Springboot环境搭建_第一个例子

    首先创建一个maven项目 maven项目创建完成之后,找到pom.xml配置节点.需要springboot-starter-web ,springboot-starter-test,springbo ...

  3. 简单的SpringBoot环境搭建

    开始搭建前请确认您的计算机中的Maven已正确配置 一:使用IDEA创建一个Maven项目,图中第一个指针请选择自己正在使用的JDK版本,指针二请打勾,选中指针三所指向的类型并点击Next 二:填写G ...

  4. Spring cloud微服务安全实战-7-11PinPoint+SpringBoot环境搭建

    微服务的最后一个组件, 调用链监控,一个请求进来以后,经过N多个微服务,例如a调用了b.b又调用了c,那么在这个过程中看到,整个的调用的链路,然后每一段调用所耗费的时间,帮你去分析你的系统如果出现瓶颈 ...

  5. Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建

    采集不可聚合的离散的.日志信息的e ELK是三个系统的简称 LogStash:用来做日志的收集.过滤.格式转换 Kibana:和普罗米修斯的grafana一个意思.主要用来展示数据. 用docker来 ...

  6. springboot~环境搭建与Helloworld

    转了,非转了 只是项目需要,从.net到java,以后可以学习java的思想把它应用到.net上来,让咱们的.net越来越强大,springbool是一个强大的框架,几乎有了你想要的所有功能模块,大叔 ...

  7. SpringBoot环境搭建

    创建 maven 项目 , 选择的打包类型为 jar 类型 自己构建 SpringBoot 项目时 , 要继承 SpringBoot 的父项目 , 这里用的版本是 2.1.4 点击 Finish , ...

  8. SpringBoot环境搭建及第一个程序运行(详细!)

    spring boot简介 spring boot框架抛弃了繁琐的xml配置过程,采用大量的默认配置简化我们的开发过程. 所以采用Spring boot可以非常容易和快速地创建基于Spring 框架的 ...

  9. 一、springBoot简介与环境搭建

    前言:学习计划 1.springBoot环境搭建 2.springBoot入门 3.srpingBoot整合Mybatis 4.springBoot整合Redis,Redis集群 5.springBo ...

随机推荐

  1. 嵌入式C实战项目开发技巧:如果对一个有规律的数组表进行位移操作

    在嵌入式项目开发中,LED灯的操作是一定要会的,也是基础中的基础,比如用51单片机写个跑马灯,这不简单嘛,定义一个数组把那8个跑马灯存起来,然后搞个for循环不就可以了嘛,但是,实际工作开发中写一个跑 ...

  2. 解决os x下gdb不能调试的问题

    在较新的os x中使用gdb调试程序会发生 Unable to find Mach task port 之类的错误,这是由于新的os x内核禁止未授权的程序随意控制其他进程,如果不用root权限的话, ...

  3. LeetCode(50)-Word Pattern

    题目: Given a pattern and a string str, find if str follows the same pattern. Here follow means a full ...

  4. shc/unshc加/解密shell脚本

    一.加密软件shcshc是linux的一款加密脚本的插件东西比较安全我们可以利用wget将文件放在root目录下也可以通过sftp放在root目录也可以直接利用cd命令选择目录一切随意shc官网:ht ...

  5. AI 学习之路

    前言:本文章纯属自己学习路线纪录,不喜勿喷. 最近AI很火,几乎是个程序员 都要去学习AI,作为一个菜鸡小前端,我也踏上了学习AI的方向. 在学习之中,最开始遇到了很多的困难,比如你不知道如何切入进来 ...

  6. Android开发之adb无法连接

    2017/11/14 21:20 Unable to run 'adb': null 21:20 'E:\AndroidSDK\platform-tools\adb.exe start-server' ...

  7. ws-trust、域、webservice接口的总结

    最近燃料公司门户做了一个待办的汇总,从三个数据源拿数据汇总到首页,这三个数据源分别是域认证的接口,域认证的webservices,证书加密的接口,下面就这些接口,做一下简单总结 1 pfx证书的探索过 ...

  8. add two nums

    问题描述: 给定两个链表,计算出链表对应位置相加的和,如果和大于10要往后进位.用链表返回结果.其实上是一种大数加法.可以把一个大数倒着写存入链表,然后两个链表相加就是所需要的大数相加的和 输入 2 ...

  9. IE条件注释,为IE单独写js

    <!--[if IE ]> <body class="ie"> <![endif]--> <!--[if !IE]>--> & ...

  10. springboot~为Money类型添加最大值和最小值的注解校验

    在spring框架里,为我们集成了很多校验注解,直接在字段上添加对应的注解即可,这些注解基本都是简单保留类型的,即int,long,float,double,String等,而如果你自己封装了新的类, ...