springboot实用篇
时间: 2023-11-07 17:04:24 浏览: 90
Spring Boot 是一个开源的Java开发框架,用于简化基于Spring的应用程序的开发和部署。Spring Boot提供了自动化配置和约定优于配置的原则,使得开发者可以更加专注于业务逻辑而不需要关注繁琐的配置工作。
在使用Spring Boot时,有一些实用的篇章值得注意。首先,事务管理是一个重要的方面。为了实现事务管理,我们需要导入spring-boot-starter-jdbc包。然而,如果我们已经导入了mybatis-spring-boot-starter包,它已经包含了spring-boot-starter-jdbc,所以无需重复导入。
其次,当我们需要配置消息传递时,可以设置点对点消息。这是Spring Boot的默认配置。如果我们将该配置设置为false,那么它将成为发布-订阅模式。这样做可以解决一些问题。
此外,如果需要自定义版本号,可以在pom.xml文件的<properties>标签中修改版本信息。例如,可以设置Java版本为1.8。
最后,对于某些场景,我们可能需要使用Spring Boot的场景启动器。一个常见的例子是使用web模块,我们可以通过导入spring-boot-starter-web依赖来实现。
相关问题
springboot实用开发篇消息
消息通知是现代应用中必不可少的一部分。在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中实现消息通知功能。请注意,这些示例仅仅是小型的演示示例,您需要根据您的需求进行修改和扩展。
springboot运维
Spring Boot 是一个用于简化 Spring 应用程序开发的框架。它内置了许多常用的配置和功能,使得开发者能够更加快速地构建和运维应用程序。
在 Spring Boot 的运维中,可以使用 JarLauncher 来启动 Spring Boot 应用程序。需要注意的是,JarLauncher 已经被打包在 Spring Boot 库中,并作为 Spring Boot 应用程序的默认启动器,所以不需要单独引入。
在运行 Spring Boot 程序时,可以选择使用命令行属性为程序传递启动属性,可以通过命令行参数或者配置文件的方式进行配置。配置文件可以分为不同的分类,通过指定不同的配置文件路径来加载不同的配置。例如,可以使用 --spring.config.location 选项指定配置文件的路径,如 --spring.config.location=D:\springboot\springboot_09_config\src\main\resources。
总之,Spring Boot 提供了许多便捷的工具和功能来简化应用程序的运维工作,使开发者能够更加轻松地管理和维护应用程序。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [36.SpringBoot实用篇—运维](https://blog.csdn.net/khmff/article/details/131115157)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* [SpringBoot --- 运维篇](https://blog.csdn.net/shuai_h/article/details/129920983)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文