简短入门,入门类别1

By admin in 4858.com on 2019年5月19日

眼下早已享受过四篇小说:

新近收看微服务很红,也是以往的可行性,

近年在斟酌spring
boot,学习了1段时间决定把经验放上来.笔者自身项目是用到了以下一些事物:


  1. spring boot 体系之1:spring boot
    入门
  2. spring boot 系列之二:spring boot
    如何修改暗许端口号和contextpath
  3. spring boot 类别之叁:spring boot
    整合JdbcTemplate
  4. spring boot 种类之四:spring boot
    整合JPA

为此就去学习下,在dubbo和spring cloud之间笔者选取了从spring
cloud,首要有如下两种原因:

  • spring boot
  • mybatis
  • activiti
  • oracle
  • thymeleaf
  • druid
  • schedule
  • logback
  • maven
  • git
  • 大很多据源
  • 多环境
  • war部署到tomcat
  • 热部署devtools

 

在上述代码操作的经过中一定也意识了贰个难题:哪怕是三个个细微修改,都无法不要双重起动服务技巧使修改生效。

  1. dubbo首要专注于微服务中的三个环节–服务治理,像服务注册和意识这种还索要zookeeper第二方的中间;然而spring
    cloud提供了微服务的一站式消除方案,该有的功力都有了。
  2. spring cloud 社区犹如尤为活跃,今后也许成为这么些行业的正式。
  3. 协和所在企业的云部门就是用的spring boot/cloud,有先入为主的赶脚吧。

SpringBoot-Learning

目录:【持续更新。。。。。】

那能还是不可能透过布置已毕spring boot的热铺排呢?答案是迟早的。

 

Spring Boot Reference Guide

  spring 部分常用注解
  spring boot 学习之路1(简单入门)
  spring boot 学习之路2(注解介绍)
  spring boot 学习之路3( 集成mybatis )
  spring boot 学习之路4(日志输出)
  spring boot 学习之路5(打成war包部署tomcat)
  spring boot 学习之路6(定时任务)
  spring boot 学习之路6(集成durid连接池)
  spring boot 学习之路7(静态页面自动生效问题)
  spring boot 学习之路8 (整合websocket(1))
  spring boot 学习之路9 (项目启动后就执行特定方法)

接下去大家来一起看下怎么通过devtools达成spring
boot的热布署。很简短,只须求简单几步:

好,接下去咱们来认知下spring cloud.
一、什么是spring cloud?
它的华语官方网址这样说:

  • 一.spring boot war包安排到汤姆cat和devtools热安排
  • 2.spring boot yml 多环境
  • 三.spring boot mybatis druid超越50%据源
  • 简短入门,入门类别1。4.spring boot activiti 整合
  • 五.spring boot schedule定期义务
  • 6.spring boot logback 多境遇打字与印刷日志
  • 7.spring boot activiti 审查批准留言乱码难点
  • 八.spring boot 事务配置
  • 玖.spring boot 自定义错误页面
  • 10.Spring Boot 自定义Banner
  • 11.spring boot aop 日志
  • 12.spring boot 拦截器 日志 权限
  • 13.spring boot 过滤器

  1. 引进重视

    <!-- 引入devtools 依赖 -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-devtools</artifactId>
                <!-- optional=true,依赖不会传递-->
                <optional>true</optional>
            </dependency>
    
  2. 对于eclipse,还亟需增多maven-plugin插件

    <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                    <configuration>
                        <fork>true</fork>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    
  3. Project –> Build Automatically 要勾上

微服务架构集大成者,云计算最佳业务实践。

 

    4858.com 1

百度完善那样说的:

在spring boot 自学进度中相遇的标题,学习的弯路都会记录下来,仅供大家仿效

 

Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,
如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。
Spring Cloud并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,
通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。

  spring Boot(笔者知道就是springMVC的三个代替品,封装的更狠的贰个框架)是Spring社区较新的叁个项目。该品种的指标是赞助开拓者更便于的创办基于Spring的应用程序和服务,让越来越多个人的人更加快的对Spring进行入门体验,让Java支付也能够达成Ruby
on
Rails那样的生产功用。为Spring生态系统提供了1种固定的、约定优于配备风格的框架。

二、基础知识

  那么spring boot 的天性有何样呢  

从spring cloud的释义里面能看出,它必要用到spring boot,因而学习spring
cloud须求spring
boot的基础,自己厚着脸皮给大家推荐下本身的博客小说,嘿嘿~~

  • 为依据Spring的开销提供越来越快的入门体验
  • 开箱即用,没有代码生成,也无需XML配置。同时也得以修改私下认可值来满意特定的要求。
  • 提供了部分大型项目中常见的非功能性性情,如嵌入式服务器、安全、目的,健康检验、外部配置等。
  • Spring
    Boot并不是不对Spring成效上的提升,而是提供了1种高效利用Spring的不二等秘书籍。
  1. spring boot 类别之1:spring boot
    入门
  2. spring boot 类别之二:spring boot
    怎样修改默许端口号和contextpath
  3. spring boot 体系之3:spring boot
    整合JdbcTemplate
  4. spring boot 连串之4:spring boot
    整合JPA
  5. spring boot 连串之伍:spring boot
    通过devtools举行热布署
  6. spring boot 体系之六:深刻通晓spring
    boot的机动配置

 

不移至理,这么些还远远不够,别的的内容用到的时候还索要去百度或透过别的路径学习。
本人也会在持续的求学中拉长内容。

上边大家来学学spring boot 情况的布署,顺便来开拓第二个spring boot
的hello world

三、学习能源推荐介绍
Spring Cloud中文网
Spring Cloud中华人民共和国社区

  笔者是通过maven来创设的(Gradle也得以,可是作者不会)

不欺暗室的微笑

    首先成立贰个貌似的Maven项目,小编是透过idea的开采工具来开荒的,工具随便。

程序员DD
百度

    

<?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.example</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>demo</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.4.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <!--spring-boot-starter:核心模块,包括自动配置支持、日志和YAML
            spring-boot-starter-test:测试模块,包括JUnit、Hamcrest、Mockito
        -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <!--引入Web模块,需添加spring-boot-starter-web模块:-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!-- 添加热启动配置(方便在开发调试时修改代码后自动重新启动) -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <!-- 添加热启动配置(方便在开发调试时修改代码后自动重新启动) -->
                <configuration>
                    <fork>true</fork>
                </configuration>
            </plugin>
        </plugins>
    </build>


</project>

 

 

第2是充实了<parent>

扩充父pom相比轻易,而且spring-boot-starter-parent含蓄了大气布局好的信赖管理,在融洽项目拉长这么些正视的时候没有供给写<version>版本号。

采纳父pom尽管轻巧,可是有个别意况我们已经有父pom,无法平素扩张<parent>时,能够由此如下方式:

 1 <dependencyManagement>
 2      <dependencies>
 3         <dependency>
 4             <!-- Import dependency management from Spring Boot -->
 5             <groupId>org.springframework.boot</groupId>
 6             <artifactId>spring-boot-dependencies</artifactId>
 7             <version>1.2.3.RELEASE</version>
 8             <type>pom</type>
 9             <scope>import</scope>
10         </dependency>
11     </dependencies>
12 </dependencyManagement>

   
 在pom.xml中自己早就把热安顿插件也增加上了,这么些就不详细介绍了。不清楚能够百度时而,

  加多今后,通过mvn spring-boot:run开行就援助热安插了。

配备到那就布置的几近了上边正是看看程序怎么运维,先创立一个开行类,投身根目录下(不然会报错的)

 

自笔者创设的启航类是:

  

 1 package com;
 2 
 3 import org.mybatis.spring.annotation.MapperScan;
 4 import org.springframework.boot.SpringApplication;
 5 import org.springframework.boot.autoconfigure.SpringBootApplication;
 6 
 7 @SpringBootApplication
 8 @MapperScan("com.huhy.web.mapper")
 9 public class DemoApplication {
10 
11     public static void main(String[] args) {
12         SpringApplication.run(DemoApplication.class,args);
13     }
14 }

controller  随便写诶,注意那么些评释就行

    

 1 package com.huhy.web.controller;
 2 
 3 import com.huhy.web.entity.User;
 4 import org.springframework.ui.ModelMap;
 5 import org.springframework.web.bind.annotation.RequestMapping;
 6 import org.springframework.web.bind.annotation.RestController;
 7 
 8 /**
 9  * Created by hhy_0 on 2017/7/7.
10  */
11 @RestController
12 public class HelloController
13 {
14     @RequestMapping("/hello")
15     public String index(){
16 
17         return "Hello World";
18     }
19 
20     @RequestMapping("/")
21     public String index(ModelMap map) {
22         // 加入一个属性,用来在模板中读取
23         map.addAttribute("host", "http://blog.didispace.com");
24 
25         // return模板文件的名称,对应src/main/resources/templates/index.html
26         return "index";
27     }
28     @RequestMapping("/getUser")
29     public User getUser() {
30         User user = new User();
31         user.setId("12");
32         user.setName("hhy");
33         user.setAge(21);
34         return user;
35     }
36 
37 }

 

运行运维类就能够看出运转新闻

自己的是那般的

4858.com 2

 

 

 最后几行有端口号,然后打浏览器访问就行了

4858.com 3

到那,轻巧的spring boot 已经能够跑起来了。

4858.com, spring boot
学习之路二(注明介绍)

快快生成demo

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 美高梅手机版4858 版权所有