`

使用SpringBoot横扫Spring的麻烦事

阅读更多

【楔子】 在学习Spring之前,大概大家对于Spring的历史很感兴趣,不过网上的JavaEE,JavaSE,JavaME

把你晃得眼花缭乱,还有J2EE J2SE J2ME,不过这些已经过时,这三个是JavaEE,JavaSE,JavaME的前身。这JavaEE,JavaSE,JavaME三个对应的是web开发,pc应用开发和手机移动开发。Spring的出现时为了替代EJB在JAVA  EE里面的应用,EJB包括会话Bean(Session Bean),实体Bean(Entity Bean)和消息驱动Bean(MessageDriven Bean),我之前使用过EJB简直累死人,所以弃疗选择Spring,Spring是一个伟大的框架,简化开发流程,核心功能ioc和aop感兴趣的查下,通过重要的容器代理和依赖注入简化流程。不过所有的依赖都是建立在pom.xml里面,需要自己手敲十分麻烦,依赖的包一个个添加。在刚开始Spring被广大程序员爱好的同时,也因为复杂的配置文件被人所诟病,因此SpringBoot就横生而出。

【准备】Eclipse是传统开发IDE,为了使用新潮更方便的开发工具,推荐IDEA,社区版本是免费的,旗舰版需要付费,不过我天朝人民没有什么不能破解的,自己网上搜吧,安装JDK,就万事具备。

================================

【demo】想要显示一个论坛欢迎页,不想配置tomcat等web应用参数,SpringBoot管家来袭

【创建】创建一个Maven,建立一个java文件。

如图示:


 
【配置pom.xml】:

<?xml version="1.0" encoding="UTF-8"?>
<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.smart</groupId>
    <artifactId>chapter2</artifactId>
    <version>1.0</version>


<!--添加一个Boot Web 启动器-->
<dependencies>
        <!--添加一个Boot Web 启动器-->
<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <version>1.3.3.RELEASE</version>
        </dependency>




    </dependencies>
</project>

可以看到添加的Springboot代码只有短短的几行,但是你们知道它包含了多少个依赖包么,在pom代码页

右键Diagram->show Dependencies



 
这就是加载进来的所有依赖包了,其中比较重要的依赖包就是:spring-web,spring-webmvc,jackson-databind

【编写javaBbsdemo】:我数了下就4行代码就能不手动配置任何环境运行我们的论坛

package com.smart;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@EnableAutoConfiguration
public class BbsDemo {
    @RequestMapping("/")
    public  String index(){
        return "欢迎光临ee论坛";
    }
    public static void main(String[] args) throws Exception{
        SpringApplication.run(BbsDemo.class,args);
    }

}

关键代码:

@EnableAutoConfiguration

对Spring框架进行自动配置,由Boot提供,减少开发人员工作量,不加的话不可以哦

 

@RestController
@EnableAutoConfiguration

这两个注解是由SpringMVC提供的,用于创建Rest服务

【实现效果】

运行BbsDemo会启动运行于8080端口内嵌Tomcat服务

在浏览器访问“http://localhost:8080”

显示效果如下

 
 



 【回顾】到这里论坛欢迎页建设完成,代码非常简单,不过其中需要思考的很多,知道如果不采用SpringBoot,Pom里面配置会是如何复杂么?
类似如此:

会让人崩溃,所以代码写完了,多想想前人的智慧

<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.yiibai</groupId>
  <artifactId>webproject</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <failOnMissingWebXml>false</failOnMissingWebXml>
  </properties>

    <dependencies>
    <!-- Servlet API -->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version>
      <scope>provided</scope>
    </dependency>
  </dependencies>

  <build>
    <sourceDirectory>src/main/java</sourceDirectory>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.5.1</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>

      <!-- Embedded Apache Tomcat required for testing war -->

      <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.2</version>
        <configuration>
          <path>/</path>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

 

 

tips:注意重新运行先关掉前一个运行的BbsDemo,要不会出现端口占用的报错哦。

如下图示:点红色框框关掉此程序再重新运行。



 

 

  • 大小: 34.7 KB
  • 大小: 75.9 KB
  • 大小: 60.5 KB
  • 大小: 14.6 KB
0
0
分享到:
评论

相关推荐

    最新尚硅谷全套视频打包地址 包含spring boot cloud 全套 安卓 前端

    17. **最新尚硅谷SpringBoot视频**:Spring Boot框架的入门和进阶教程。 ### Android开发教程 虽然文件中没有提供具体的Android教程链接,但可以推测尚硅谷同样提供了丰富的Android开发资源,可能包括: - Android...

    横扫千星新手教程,从萌新到大佬

    右上角的星球界面提供了星球的基本信息,包括资源和歼星武器的使用。 **经济建设**: 在《横扫千星》中,强大的经济是获胜的关键。游戏中的资源分为金属和电力,金属用于生产单位,电力则维持生产和单位运行。资源...

    全套Java视频

    SSSP(Spring + SpringMVC + Spring + SpringBoot)整合,加强了Spring全家桶的应用;Redis作为内存数据存储,常用于缓存;Maven是项目管理工具,统一构建流程;Shiro是安全框架,负责身份验证、授权、会话管理和...

    植物横扫僵尸

    《植物横扫僵尸》可能是用C++、Java或者Unity引擎(使用C#)等常见的游戏开发语言编写的。这些语言提供了丰富的功能和高效性能,能够实现复杂的逻辑控制和实时交互,是游戏开发的基石。 其次,游戏的核心是其逻辑...

    U3D横扫僵尸

    自己做的U3D的游戏,跟横扫僵尸几乎一样,有源代码,有U3D整个完整的工程包,可以供初学者学习,或者中高级开发者改造,提供了2D插件。

    全套Java、Android、HTML5前端视频教程

    - **20天横扫Java基础(课堂实录)** - Java语言基础:变量、数据类型、运算符、流程控制语句。 - 面向对象编程基础:类与对象、封装、继承、多态。 - 异常处理、包管理、集合框架简介。 - **Java基础实战——...

    全套视频打包20191111.zip

    包括springcloud和linux,SSM,springboot等 一、 20天横扫Java基础(课堂实录) 二、 Java基础实战——Bank项目 三、 _ORACLE、SQL、PLSQL 视频教程

    Linux将横扫嵌入式市场.pdf

    Linux将横扫嵌入式市场.pdf

    通达信指标公式源码 相当精准的横扫天下 副图.doc

    通达信指标公式源码 相当精准的横扫天下 副图.doc

    JAVA整套自学视频超详细涵盖java9新特性,50G

    SSM(Spring+SpringMVC+MyBatis)高级视频和SpringBoot视频则带你探索最新的开发趋势和技术。 通过以上各个阶段的学习,你可以系统地掌握Java从基础到进阶的全貌,包括Java9的新特性,并具备开发企业级Web应用的...

Global site tag (gtag.js) - Google Analytics