转自:https://www.cnblogs.com/cat-/p/8529191.html

简介


 

  最近看SpringBoot框架非常火,所以尝试的参照资料学习了一下SpringBoot框架,

  起初是搭建的maven项目,可是个人觉得maven项目搭建起来不太方面(还有网络

  原因),所以我这性格比较受不了,就在网上手动把SpringBoot简单程序需要的包

  都下载到了本地。如果你跟我一样也是刚开始使用SpringBoot并加载本地jar包,

  那你真是来对了~~

 

springboot介绍


 

通过网上的资料,我简单地了解一下SpringBoot 

 1.敏捷开发(整合框架)
 2.无需Tomcat (java应用程序运行,实际jar包),内置Tomcat
 3.减少xml配置(没有xml),配置文件properties。
 4.微服务框架主流 SpringCloud+SpringBoot
 5.注解:提供了很多注解

 SpringBoot--和微服务有什么关联?
 目前来说SpringCloud(http接口+test),基于SpringBootweb组件封装SpringMVC
 

 原理:
 微服务架构的SpringCloud做的RPC远程调用,用到的接口协议是这个PRC协议,
 通过json传参数,
 SpringCloud核心依赖是springboot,springboot核心是依赖的springmvc

 

 简单的搭建需要什么包


 

我在这搭建的时候下载到本地,用到了31个jar包,通过网上查找有用30个包搭建的,

可是后来运行我这里出现了问题,所以添加了一个包解决掉了这个问题

需要的包如下:

 

classmate-1.2.0.jar
hibernate-validator-5.2.1.Final.jar
jackson-annotations-2.6.0.jar
jackson-core-2.6.0.jar
jackson-databind-2.6.0.jar
jboss-logging-3.3.0.Final.jar
jcl-over-slf4j-1.7.12.jar
jul-to-slf4j-1.7.12.jar
log4j-over-slf4j-1.7.12.jar
logback-classic-1.1.3.jar
logback-core-1.1.3.jar
slf4j-api-1.7.12.jar
snakeyaml-1.15.jar
spring-aop-4.2.0.RELEASE.jar
spring-beans-4.2.0.RELEASE.jar
spring-boot-1.2.5.RELEASE.jar
spring-boot-autoconfigure-1.2.5.RELEASE.jar
spring-boot-starter-1.2.5.RELEASE.jar
spring-boot-starter-logging-1.2.5.RELEASE.jar
spring-boot-starter-tomcat-1.2.5.RELEASE.jar
spring-boot-starter-web-1.2.5.RELEASE.jar
spring-context-4.2.0.RELEASE.jar
spring-core-4.2.0.RELEASE.jar
spring-expression-4.2.0.RELEASE.jar
spring-web-4.2.0.RELEASE.jar
spring-webmvc-4.2.0.RELEASE.jar
tomcat-embed-core-8.0.24.jar
tomcat-embed-el-8.0.24.jar
tomcat-embed-logging-juli-8.0.24.jar
tomcat-embed-websocket-8.0.24.jar
validation-api-1.1.0.Final.jar

 

如果需要jar包的小伙伴可以联系我或者在留下联系方式~~

 

  配置简单的SpringBoot


 

 首先,添加本地jar包到我的web项目,如果您是老司机请直接看代码~

 

正常创建web项目

非maven配置SpringBoot框架

  我在这正常下一步,项目取名:MySpringBoot01,正常Finish(因为SpringBoot基本不用xml文件,所以直接下一步)

非maven配置SpringBoot框架

然后进入导包步骤

  非maven配置SpringBoot框架

 

因为SpringBoot内置Tomcat,我也添加了Tpmcat的核心包,所以在运行时会因为包类冲突出现错误,

所以我在这Remove掉Tomcat的包,解决掉冲突使程序正常运行

非maven配置SpringBoot框架

然后添加SpringBoot需要的本地jar包

非maven配置SpringBoot框架

最后应用(点击Apply),在点击OK 。完成基本的配置操作

非maven配置SpringBoot框架

 

 

 

  代码实现SpringBoot


首先创建一个HelloSpringBoot的类

非maven配置SpringBoot框架

 

终于到最后的代码操作了。废话不多说 我直接上代码

 

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
@EnableAutoConfiguration
public class HelloSpringBoot {
    
    @RequestMapping("/index")
    @ResponseBody
    public String index(){
        return "Hello Word!";
    }
    
    //入口程序
    public static void main(String[] args) {
        //主函数运行springboot项目
        SpringApplication.run(HelloSpringBoot.class, args);
    }
}

 

 

 

如果你之前用过SSM框架,相信你大致可以看明白了

我既然没有Tomcat服务器,我肯定需要个入口来运行我的SpringBoot程序,

所以用到了SpringApplication.run()这个方法启动内置的Tomcat服务器。

 

注解

@Controller:

用于定义控制器类,在spring 项目中由控制器负责将用户发来的URL请求转发

到对应的服务接口(service层),一般这个注解在类中,通常方法需要配合注

解@RequestMapping使用。像上述代码通过RUL的index请求,来响应我的方法。

@EnableAutoConfiguration:

Spring Boot自动配置(auto-configuration):尝试根据你添加的jar依赖自动配置

你的Spring应用。例如,如果你的classpath下存在HSQLDB,并且你没有手动配置

任何数据库连接beans,那么我们将自动配置一个内存型(in-memory)数据库”。

 

@ResponseBody:

表示该方法的返回结果直接写入http response body中,一般在异步获取数据时使用,

用于构建RESTful的api。在使用@RequestMapping后,返回值通常解析为跳转路径,

加上@ResponseBody后返回结果不会被解析为跳转路径,直接写入http response body

中。比如异步获取json数据,加上@ResponseBody后,会直接返回json数据。

 

在SpringBoot中添加了一些新的注解,像@RestController

用法:

 

 

 1 import java.util.HashMap;
 2 import java.util.Map;
 3 
 4 import org.springframework.boot.SpringApplication;
 5 import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
 6 import org.springframework.web.bind.annotation.RequestMapping;
 7 import org.springframework.web.bind.annotation.ResponseBody;
 8 import org.springframework.web.bind.annotation.RestController;
 9 
10 
11 //@Controller
12 @RestController //相当于ResponseBody + Controller 任何一个方法都以json格式返回 
13 
14 @EnableAutoConfiguration
15 public class HelloSpringBoot {
16     @RequestMapping("/index")
17     @ResponseBody
18     public String index(){
19         return "Hello Word!";
20     }
21     @RequestMapping("/getMap")
22     @ResponseBody
23     public Map<Object,Object> getMap(){
24         Map<Object,Object> m = new HashMap<>();
25         m.put(1, "a");
26         m.put(2, "b");
27         m.put(3, "c");
28         return m;
29     }
30     //入口程序
31     public static void main(String[] args) {
32         //主函数运行springboot项目
33         SpringApplication.run(HelloSpringBoot.class, args);
34     }
35 }

 

 

注解

@RestController:

用于标注控制层组件(如struts中的action),@ResponseBody和@Controller的合集。

 

运行项目


 

 

正常运行项目

非maven配置SpringBoot框架

 

配置成功显示:

非maven配置SpringBoot框架

你还可以看到基本的一些信息

非maven配置SpringBoot框架

我用的是谷歌浏览器

在网址写入  http://localhost:8080/index     --------> index 就是我 @RequestMapping映射的方法名,映射的url

非maven配置SpringBoot框架

启动完成!!简单的SpringBoot项目搭建成功了~~

 

当然你也可以访问getMap,返回的是json格式

非maven配置SpringBoot框架

   基本就是这样,怎么样 和SpringMVC繁琐的xml对比 相对简单把~~

 

 

   

    感谢大家观看此篇文章,如果有什么见解可以留言给我~~

 

相关文章:

  • 2021-10-26
  • 2022-02-07
  • 2021-09-12
  • 2022-12-23
  • 2022-12-23
  • 2021-08-20
  • 2022-12-23
  • 2021-09-27
猜你喜欢
  • 2021-07-23
  • 2021-08-28
  • 2022-02-07
  • 2022-02-09
  • 2022-12-23
  • 2021-04-01
  • 2021-07-01
相关资源
相似解决方案