## SpringBoot,创建,特点

### 1. 基本概念

使用传统的SSM框架开发项目时,需要添加诸多依赖,并且,还需要做大量的配置,但是,每个项目使用到的依赖大致相同,配置方式也大致不变。

SpringBoot默认集成了绝大部分常用的依赖,并内置完成了绝大部分的配置

### 2. 创建SpringBoot项目

首先,访问`https://start.spring.io/`网站,这是创建SpringBoot项目的网站,在页面中输入必要的选项,点击`Generate Project`按钮即可创建项目,并自动下载。

点击`Switch to the full version`链接可以展开详细设置,在下方还有诸多其它的依赖,如果需要,可以勾选,则在创建项目时就已经自动添加了这些依赖,如果创建项目时没有勾选,也可以后续在开发过程中自行添加。

下载创建的项目压缩包后,将其解压到Workspace中(推荐),通过Eclipse的`Import > Import > Existing Maven Projects`功能将项目导入,其间,应该保证当前电脑是可以连接到Maven服务器的,加载完成后,在Eclipse中就可以看到正常的项目了。

当生成完项目后,如果`pom.xml`报错,多是因为使用的Eclipse版本较旧(是Elicpse中配置的Maven版本较旧),通常,推荐使用`Oxygen`版本或以上版本,近期的Eclipse版本从新到旧是:

    Eclipse 2018-12 (4.10)
    Eclipse 2018-09 (4.9)
    Eclipse Photon (4.8)
    Eclipse Oxygen (4.7)
    Eclipse Neon (4.6)
    Eclipse Mars (4.5)
    Eclipse Luna (4.4)
    Eclipse Kepler (4.3)

### 3. SpringBoot项目的特点

#### 3.1. 启动类

在项目的根包(创建时指定的包名)下有`DemoApplication.java`文件(文件名中`Application`左侧的单词是创建项目时指定的名称),这个文件就是项目的启动文件,后续,启动该项目时,无需添加Tomcat运行环境,也无需将项目添加到Servers中的Tomcat中,只需要通过Java Application的方式运行该文件即可!

SpringBoot项目内置Tomcat,所以,当启动了项目且没有停止时,不可以再次启动,导致会因为端口冲突导致后续启动失败!

#### 3.2. 根包

SpringBoot项目会根据创建项目时填写的`Group`和`Artifact`形成当前项目的根包,例如`cn.tedu.demo`,在开发过程中,所有的组件类都必须在根包或其子孙包中因为SpringBoot项目已经指定了组件扫描的范围就是根包,类似于:

#### 3.3. 静态页面

在SpringBoot项目中,推荐将静态资源(包含html、css、js、图片等)存入到项目的`resources`下的`static`文件夹中

可以在`static`下创建`index.html`(注意:创建html文件时,Eclipse会默认选中`webapp`文件夹,需要手动选中`resources > static`文件夹)。

创建完成后,即可通过`http://localhost:8080`来访问这个页面

所有的SpringBoot项目默认内置Tomcat,且部署项目时,会将项目部署为服务器的根路径项目:`o.a.c.c.C.[Tomcat].[localhost].[/]`,所以,在访问项目时,不必像传统项目一样添加项目名称!

并且,SpringBoot项目将`index.html`视为默认访问页面,所以,当访问该页面,无需显式的指定名称!

#### 3.4. 控制器

控制器类必须在根包或其子孙包中,例如创建`cn.tedu.demo.controller.UserController`类,并添加`@RestController`和`@RequestMapping("/user")`注解。

> `@RestController`相当于`@Controller`和每个方法之前都添加`@ResponseBody`,所以,当类之前添加了`@RestController`,等同于每个方法之前都已经添加`@ResponseBody`!当然,如果某个方法不想响应正文,还是希望转发或重定向,则类之前不能使用`@RestController`。

在SpringBoot项目中,配置资源的路径时,不要求必须是`*.do`,因为SpringBoot配置`DispatcherServlet`的路径时,配置值是`/*`,即由`DispatcherServlet`接收任何请求。

#### 3.5. 数据库编程

使用MySQL数据库,并使用MyBatis框架,需要添加依赖:

<dependency>
		<groupId>org.mybatis.spring.boot</groupId>
		<artifactId>mybatis-spring-boot-starter</artifactId>
		<version>2.0.0</version>
	</dependency>

	<dependency>
		<groupId>mysql</groupId>
		<artifactId>mysql-connector-java</artifactId>
		<scope>runtime</scope>
	</dependency>

添加以上依赖后,SpringBoot将视为当前项目需要连接数据库,如果在`application.properties`中没有添加连接数据库的相关配置,则运行项目时就会提示错误!则需要在`application.properties`中配置:

# datasource
	spring.datasource.url=jdbc:mysql://localhost:3306/tedu_ums?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
	spring.datasource.username=root
	spring.datasource.password=root

可以编写单元测试:

@RunWith(SpringRunner.class)
	@SpringBootTest
	public class DemoApplicationTests {
	
		@Test
		public void contextLoads() {
		}
		
		@Autowired
		DataSource dataSource;
		
		@Test
		public void testConnection() 
				throws SQLException {
			Connection conn
				= dataSource.getConnection();
			System.out.println(conn);
		}
	
	}

为了保证SpringBoot能扫描得到MyBatis的接口文件所在的包,需要在启动类`DemoApplication`之前添加`@MapperScan("cn.tedu.demo.mapper")`注解:

@SpringBootApplication
	@MapperScan("cn.tedu.demo.mapper")
	public class DemoApplication {
	
		public static void main(String[] args) {
			SpringApplication.run(DemoApplication.class, args);
		}
	
	}

然后,需要在`application.properties`中指定XML映射文件的位置:

​
# datasource
	spring.datasource.url=jdbc:mysql://localhost:3306/tedu_ums?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
	spring.datasource.username=root
	spring.datasource.password=root

​mybatis.mapper-locations=classpath:mappers/*.xml

关于MyBatis的开发与传统SSM项目一样,先创建接口并定义抽象方法,然后使用XML配置映射,完成后,可以编写并执行单元测试:

@Autowired
	UserMapper userMapper;
	
	@Test
	public void findByUsername() {
		String username = "admin888";
		User user = userMapper.findByUsername(username);
		System.err.println(user);
	}

MVC = Model,View,Controller
    
    View:视图

    Controller:控制器,接收请求,给予响应

    Model:数据模型 = 业务逻辑(Service) + 数据操作(Dao)

    请求 ---> Controller ---> Service ---> Mapper

基于可靠性评估序贯蒙特卡洛模拟法的配电网可靠性评估研究(Matlab代码实现)内容概要:本文围绕“基于可靠性评估序贯蒙特卡洛模拟法的配电网可靠性评估研究”,介绍了利用Matlab代码实现配电网可靠性的仿真分析方法。重点采用序贯蒙特卡洛模拟法对配电网进行长时间段的状态抽样与统计,通过模拟系统元件的故障与修复过程,评估配电网的关键可靠性指标,如系统停电频率、停电持续时间、负荷点可靠性等。该方法能够有效处理复杂网络结构与设备时序特性,提升评估精度,适用于含分布式电源、电动汽车等新型负荷接入的现代配电网。文中提供了完整的Matlab实现代码与案例分析,便于复现和扩展应用。; 适合人群:具备电力系统基础知识和Matlab编程能力的高校研究生、科研人员及电力行业技术人员,尤其适合从事配电网规划、运行与可靠性分析相关工作的人员; 使用场景及目标:①掌握序贯蒙特卡洛模拟法在电力系统可靠性评估中的基本原理与实现流程;②学习如何通过Matlab构建配电网仿真模型并进行状态转移模拟;③应用于含新能源接入的复杂配电网可靠性定量评估与优化设计; 阅读建议:建议结合文中提供的Matlab代码逐段调试运行,理解状态抽样、故障判断、修复逻辑及指标统计的具体实现方式,同时可扩展至不同网络结构或加入更多不确定性因素进行深化研究。
### 创建Spring Boot项目的具体方法 创建一个Spring Boot项目可以通过多种方式进行,以下是详细的说明: #### Maven构建工具的方式 可以利用Maven来搭建Spring Boot项目。首先需要确保本地环境已经安装并配置好Maven和JDK[^1]。接着,在`pom.xml`文件中引入Spring Boot的核心依赖项。例如,典型的POM文件可能如下所示: ```xml <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.0.0</version> </parent> <dependencies> <!-- 引入Web模块 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> ``` #### 使用IDE集成开发环境 大多数现代Java IDE(如IntelliJ IDEA或Eclipse)都支持通过插件直接创建Spring Boot项目。这些工具通常会提供图形化界面引导用户完成整个过程,包括选择所需的依赖项以及自动生成必要的目录结构[^3]。 #### 启动类定义 无论采用哪种方式创建项目,都需要编写一个带有`@SpringBootApplication`注解的启动类作为程序入口点。这个注解实际上是一个组合型注解,包含了其他几个重要的功能组件,比如自动扫描包路径下的Bean对象等特性。下面展示了一个标准的启动类代码片段: ```java @SpringBootApplication public class SpringBootDemoApplication { public static void main(String[] args) { SpringApplication.run(SpringBootDemoApplication.class, args); } } ``` 上述代码中的`SpringApplication.run()`方法负责初始化应用程序上下文,并加载所有的Spring Bean实例到内存当中去执行业务逻辑操作。 #### Spring Boot的特点概述 值得一提的是,Spring Boot的设计理念是以减少繁琐的手工配置为目标,使得开发者能够更加专注于实际应用的功能实现而不是花时间调整框架本身的参数设定。它遵循“约定大于配置”的原则,默认提供了很多合理的初始设置选项给使用者选用而无需额外声明复杂的XML或其他形式的外部描述文档就可以让系统正常运转起来[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值