当前位置: 首页> 汽车> 新车 > 短网址生成网站源码_乐清新闻综合频道直播_线下推广方法有哪些_外贸网站推广服务

短网址生成网站源码_乐清新闻综合频道直播_线下推广方法有哪些_外贸网站推广服务

时间:2025/8/25 18:30:18来源:https://blog.csdn.net/weixin_51040479/article/details/146469468 浏览次数: 1次
短网址生成网站源码_乐清新闻综合频道直播_线下推广方法有哪些_外贸网站推广服务

1. Spring Boot简介

Spring Boot是Spring框架的扩展,它消除了设置Spring应用程序所需的大量样板配置,使得开发Spring应用变得更加快速和简单。

核心特性

  • 自动配置:Spring Boot能够自动配置Spring应用,根据类路径上的jar包、属性等自动配置Spring Bean
  • 起步依赖:简化Maven/Gradle配置,提供针对常见场景的依赖描述符
  • 嵌入式服务器:内置Tomcat、Jetty或Undertow,无需部署WAR文件
  • Actuator:提供生产级特性,帮助监控和管理应用
  • 无代码生成和XML配置:尽量避免使用XML配置,提倡使用Java配置和注解

优势

  • 简化配置,专注于业务逻辑
  • 提供可用于生产环境的非功能特性
  • 大量第三方集成,轻松整合各种框架
  • 内嵌服务器,简化部署
  • 丰富的CLI工具支持

2. Spring Boot实现Spring MVC

Spring Boot通过自动配置简化了Spring MVC的使用,无需大量XML配置。

基本使用步骤

  1. 添加依赖
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId>
</dependency>
  1. 创建控制器
@Controller
public class HomeController {@GetMapping("/")public String home(Model model) {model.addAttribute("message", "Hello, Spring Boot!");return "home";}
}
  1. 添加主应用类
@SpringBootApplication
public class Application {public static void main(String[] args) {SpringApplication.run(Application.class, args);}
}

自动配置内容

  • DispatcherServlet配置
  • MessageConverter配置
  • 静态资源映射
  • 视图解析器配置
  • Web相关组件配置

自定义MVC配置

@Configuration
public class WebConfig implements WebMvcConfigurer {@Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");}@Overridepublic void configureViewResolvers(ViewResolverRegistry registry) {registry.jsp("/WEB-INF/views/", ".jsp");}
}

3. 配置文件顺序及类型讲解

Spring Boot支持多种配置文件类型和位置,按优先级顺序进行加载。

配置文件类型

  • properties文件:键值对形式

    server.port=8080
    spring.datasource.url=jdbc:mysql://localhost:3306/test
    
  • YAML文件:层次化配置

    server:port: 8080
    spring:datasource:url: jdbc:mysql://localhost:3306/test
    

配置文件加载顺序(优先级由高到低)

  1. 命令行参数
  2. SPRING_APPLICATION_JSON环境变量
  3. java:comp/env的JNDI属性
  4. Java系统属性(System.getProperties())
  5. 操作系统环境变量
  6. RandomValuePropertySource
  7. jar包外profile-specific的application.yml或application.properties
  8. jar包内profile-specific的application.yml或application.properties
  9. jar包外的application.yml或application.properties
  10. jar包内的application.yml或application.properties
  11. @PropertySource注解
  12. 默认属性

Profile配置

  • application-{profile}.properties/yml:特定环境配置
  • 激活方式:
    spring.profiles.active=dev
    
    spring:  profiles:    active: dev
    

配置文件内引用属性

app.name=MyApp
app.description=${app.name} is a Spring Boot application
app:name: MyAppdescription: ${app.name} is a Spring Boot application

4. Spring Boot项目结构

Spring Boot推荐使用特定的项目结构,虽然不强制,但遵循这些约定可以获得最佳效果。

标准项目结构

src+- main|   +- java|   |   +- com.example.myapp|   |       +- Application.java        // 主应用类,包含main方法|   |       +- domain                  // 领域模型|   |       |   +- Customer.java|   |       |   +- CustomerRepository.java|   |       +- service                 // 业务逻辑层|   |       |   +- CustomerService.java|   |       +- controller              // Web控制器|   |           +- CustomerController.java|   +- resources|       +- static                      // 静态资源(CSS、JS、图片)|       +- templates                   // 模板文件(Thymeleaf、FreeMarker等)|       +- application.properties      // 应用配置文件+- test+- java+- com.example.myapp+- ApplicationTests.java   // 测试类

关键约定

  • 主应用类通常放在其他类的根包中
  • 配置类通常放在主应用类所在包或子包中
  • 静态资源放在resources/static目录
  • 模板文件放在resources/templates目录
  • 配置文件放在resources根目录

@SpringBootApplication注解

组合了以下三个注解:

  • @Configuration:标记类为配置类
  • @EnableAutoConfiguration:启用自动配置
  • @ComponentScan:开启组件扫描

5. Spring Boot整合MyBatis

Spring Boot与MyBatis整合非常简单,通过starter依赖可以快速配置。

添加依赖

<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.2.2</version>
</dependency>
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope>
</dependency>

配置数据源

spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/mydatabase?useSSL=falseusername: rootpassword: root

配置MyBatis

mybatis:mapper-locations: classpath:mapper/*.xmltype-aliases-package: com.example.domainconfiguration:map-underscore-to-camel-case: true

创建实体类

@Data
public class User {private Long id;private String username;private String password;private String email;
}

创建Mapper接口

@Mapper
public interface UserMapper {@Select("SELECT * FROM users WHERE id = #{id}")User findById(Long id);@Insert("INSERT INTO users(username, password, email) VALUES(#{username}, #{password}, #{email})")@Options(useGeneratedKeys = true, keyProperty = "id")int insert(User user);
}

XML方式配置Mapper

<!-- src/main/resources/mapper/UserMapper.xml -->
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.mapper.UserMapper"><select id="findById" resultType="User">SELECT * FROM users WHERE id = #{id}</select><insert id="insert" useGeneratedKeys="true" keyProperty="id">INSERT INTO users(username, password, email) VALUES(#{username}, #{password}, #{email})</insert>
</mapper>

使用MapperScan

@SpringBootApplication
@MapperScan("com.e
关键字:短网址生成网站源码_乐清新闻综合频道直播_线下推广方法有哪些_外贸网站推广服务

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: