SpringBoot(第一篇)

一、什么是SpringBoot

1、什么是Spring(简化开发)

Spring是为了解决企业级应用开发的复杂性而创建的。(理念目的)

2、Spring是如何简化JAVA开发的

1、基于POJP的轻量级和最小入侵性编程;
2、通过IOC,依赖注入DI和面向接口实现松耦合;
3、基于切面AOP和惯例进行声明式编程;
4、通过切面和模板减少样式代码;

3、SpringBoot的主要优点

1、方便Spring开发者更快的入门
2、开箱即用—提供各种默认配置来简化项目配置
3、内嵌式容器简化Web项目
4、没有冗余代码生成和XML配置的要求

4、单体应用架构(all in one)

1、单体应用架构(all in one),我们将一个应用中的所有服务都封装在一个应用中。
2、ERP、CRM或者其他系统,数据库的访问、web的访问,等等功能存放到一个war包中。
3、优点:1、易于开发和测试、方便部署;如果需要扩展的时候,将war复制多分,然后放到多个服务器上,做个负载均衡就可以了。
4、缺点:1、不方便修改,如果修改,需要停止整个服务,重新打包、部署这个应用war包,不利于维护、和多地操作。

5、什么是微服务?高内聚、低耦合(理解:雕刻板印刷到活字印刷)

1、微服务是一种架构风格:我们再开发一个应用的时候,这个应用必须构建成一系列小服务的组合;可以通过http的方式进行互通。
2、打破之前的单体应用架构方式, 把每个功能元素独立出来,把独立出来的功能元素的动态组合,需要的功能元素才去拿来组合,需要多一些时可以整合多个功能元素。(总结:微服务架构是对功能元素进行复制,而不是对整个应用进行复制)
3、优点:节省调用资、每个功能元素的服务都是一个可替换的、可独立升级的软件代码。
来自Martin Flower 《Micro services》
有兴趣的可以看一下这篇论文:《Micoservice》

用idea创建一个Springboot项目

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里来介绍以下pom.xml中的标签

<!-- 父依赖 -->
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.2.5.RELEASE</version>
    <relativePath/>
</parent>

<dependencies>
    <!-- web场景启动器 -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <!-- springboot单元测试 -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
        <!-- 剔除依赖 -->
        <exclusions>
            <exclusion>
                <groupId>org.junit.vintage</groupId>
                <artifactId>junit-vintage-engine</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
</dependencies>

<build>
    <plugins>
        <!-- 打包插件 -->
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

请添加这个:这是调用接口,来接受前端的参数
在这里插入图片描述
在这里插入图片描述
404是找不到的意思
成功的界面
在这里插入图片描述

消息通知是现代应用中必不可少的一部分。在Spring Boot中,我们可以使用不同的技术来实现消息通知功能,如邮件通知,短信通知和推送通知等。 下面给出一些实现消息通知的技术和示例: 1. 邮件通知 Spring Boot提供了集成JavaMailSender的功能来发送邮件。您只需要在Spring Boot项目中添加相关依赖和配置即可。以下是一个简单的示例: ``` // 引入相关依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> // 邮件发送相关配置 spring.mail.host=smtp.gmail.com spring.mail.port=587 spring.mail.username=username@gmail.com spring.mail.password=password spring.mail.properties.mail.smtp.auth=true spring.mail.properties.mail.smtp.starttls.enable=true // 发送邮件代码 @Autowired private JavaMailSender mailSender; public void sendMail(String to, String subject, String text) { SimpleMailMessage message = new SimpleMailMessage(); message.setTo(to); message.setSubject(subject); message.setText(text); mailSender.send(message); } ``` 2. 短信通知 您可以使用第三方短信服务提供商来发送短信通知。以下是一个简单的示例: ``` // 引入相关依赖 <dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-core</artifactId> <version>4.0.3</version> </dependency> // 短信发送相关配置 spring.aliyun.sms.access-key-id=accessKeyId spring.aliyun.sms.access-key-secret=accessKeySecret spring.aliyun.sms.template-code=SMS_XXXXXXXXX spring.aliyun.sms.sign-name=XXX有限公司 // 发送短信代码 @Autowired private IAcsClient acsClient; public void sendSms(String phoneNumbers, String templateParam) { CommonRequest request = new CommonRequest(); request.setMethod(MethodType.POST); request.setDomain("dysmsapi.aliyuncs.com"); request.setVersion("2017-05-25"); request.setAction("SendSms"); request.putQueryParameter("PhoneNumbers", phoneNumbers); request.putQueryParameter("SignName", env.getProperty("spring.aliyun.sms.sign-name")); request.putQueryParameter("TemplateCode", env.getProperty("spring.aliyun.sms.template-code")); request.putQueryParameter("TemplateParam", templateParam); try { CommonResponse response = acsClient.getCommonResponse(request); System.out.println(response.getData()); } catch (ServerException e) { e.printStackTrace(); } catch (ClientException e) { e.printStackTrace(); } } ``` 3. 推送通知 推送通知可用于向应用程序的用户发送即时通知。您可以使用第三方推送服务提供商来发送推送通知,如Firebase Cloud Messaging(FCM)和苹果推送通知服务(APNS)等。以下是一个简单的示例: ``` // 引入相关依赖 <dependency> <groupId>com.google.firebase</groupId> <artifactId>firebase-admin</artifactId> <version>7.1.0</version> </dependency> // 推送通知相关配置 spring.firebase.service-account-file=serviceAccountKey.json // 发送推送通知代码 @Autowired private FirebaseMessaging firebaseMessaging; public void sendPushNotification(String token, String title, String body) throws FirebaseMessagingException { Message message = Message.builder() .setToken(token) .setNotification(Notification.builder() .setTitle(title) .setBody(body) .build()) .build(); String response = firebaseMessaging.send(message); System.out.println("Successfully sent message: " + response); } ``` 这些示例应该让您明白如何在Spring Boot中实现消息通知功能。请注意,这些示例仅仅是小型的演示示例,您需要根据您的需求进行修改和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值