美文网首页RxJavaJava编程语言爱好者
SpringBoot核心设计理念和核心组件

SpringBoot核心设计理念和核心组件

作者: 迦叶_金色的人生_荣耀而又辉煌 | 来源:发表于2021-02-27 19:53 被阅读0次

    上一篇 <<<SpringMVC适配器类型汇总
    下一篇 >>>SpringBoot中有哪些starter


    核心设计理念

    a、能够实现帮助开发者快速的整合第三方框架(Spring、Mybatis、hibernate)
    原理:Maven依赖封装整合和自定义starter
    b、完全去除XML配置,采用注解形式
    原理:SpringBoot其实根据Spring体系原生的注解实现包装
    c、不需要外部容器 ,内嵌入服务器(Tomcat和Jetty)
    原理:Java语言创建tomcat服务器,然后将本地class文件交给tomcat加载。

    <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>javax.servlet-api</artifactId>
                <version>3.1.0</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>org.apache.tomcat.embed</groupId>
                <artifactId>tomcat-embed-core</artifactId>
                <version>8.5.28</version>
            </dependency>
            <!-- Tomcat对jsp支持 -->
            <dependency>
                <groupId>org.apache.tomcat</groupId>
                <artifactId>tomcat-jasper</artifactId>
                <version>8.5.16</version>
            </dependency>
    
    public static void main(String[] args) throws LifecycleException, ServletException {
            //创建Tomcat服务器
            Tomcat tomcatServer = new Tomcat();
            //指定端口号
            tomcatServer.setPort(8180);
            //读取项目路径
            StandardContext ctx = (StandardContext) tomcatServer.addWebapp("/", new File("src/main").getAbsolutePath());
            //禁止重新载入
            ctx.setReloadable(false);
            //class文件读取地址
            File additionWebInfClasses = new File("target/classes");
            //创建webroot
            WebResourceRoot resources = new StandardRoot(ctx);
            //tomcat内部读取class执行
            resources.addPreResources(new DirResourceSet(resources, "/target/classes", additionWebInfClasses.getAbsolutePath(), "/"));
            tomcatServer.start();
            //异步等待请求执行
            tomcatServer.getServer().await();
        }
    

    核心组件

    Starter、auto-configuration、actuator、cli


    推荐阅读:
    <<<SpringBoot中有哪些starter
    <<<如何自定义SpringBoot starter
    <<<SpringBoot启动流程说明
    <<<SpringBoot常用注解及外部jar包注入方式
    <<<SpringBoot之web开发
    <<<SpringBoot全局异常捕获
    <<<SpringBoot整合各种持久层技术
    <<<SpringBoot整合Mybatis分页插件
    <<<SpringBoot使用Atomikos技术整合多数据源
    <<<SpringBoot实现热部署
    <<<SpringBoot性能调优
    <<<SpringBoot的Actuator监控和Admin-UI可视化
    <<<SpringBoot常见面试问题

    相关文章

      网友评论

        本文标题:SpringBoot核心设计理念和核心组件

        本文链接:https://www.haomeiwen.com/subject/efuuxltx.html