【Spring】Spring Boot 纯注解开发指南
2023-11-15 06:14:02
前言
Spring 3.0 引入了纯注解开发模式,框架的诞生是为了简化开发,而注解开发就是简化再简化。Spring 的特性在整合 MyBatis 方面有着得天独厚的优势,只需要引入 Spring-jdbc 即可。
Spring Boot 纯注解开发步骤
-
创建 Spring Boot 项目
可以使用 Spring Initializr 创建一个新的 Spring Boot 项目。在 Spring Initializr 网站上,选择 Spring Boot 版本、项目语言、项目类型(Web 项目或非 Web 项目)和依赖项。
-
配置 Spring Boot 项目
在 Spring Boot 项目的
application.properties
文件中,可以配置各种属性,例如服务器端口、数据库连接信息、日志级别等。 -
使用 Spring MVC 构建 REST API
Spring MVC 是一个用于构建 REST API 的框架。在 Spring Boot 项目中,可以使用
@RestController
注解标记控制器类,并使用@RequestMapping
注解标记控制器方法。 -
使用 Spring Data JPA 访问数据库
Spring Data JPA 是一个用于访问数据库的框架。在 Spring Boot 项目中,可以使用
@Entity
注解标记实体类,并使用@Repository
注解标记数据访问接口。 -
使用 Spring Security 保护应用程序
Spring Security 是一个用于保护应用程序的框架。在 Spring Boot 项目中,可以使用
@EnableWebSecurity
注解启用 Spring Security,并使用@Autowired
注解注入AuthenticationManager
对象。
示例
以下是一个 Spring Boot 纯注解开发的示例项目:
// 这是一个 Spring Boot 项目的主类
@SpringBootApplication
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}
// 这是一个 Spring MVC 控制器类
@RestController
@RequestMapping("/api")
public class ApiController {
@Autowired
private UserService userService;
@GetMapping("/users")
public List<User> getAllUsers() {
return userService.getAllUsers();
}
@PostMapping("/users")
public User createUser(@RequestBody User user) {
return userService.createUser(user);
}
}
// 这是一个 Spring Data JPA 实体类
@Entity
public class User {
@Id
@GeneratedValue
private Long id;
private String name;
private String email;
// 省略 getter 和 setter 方法
}
// 这是一个 Spring Data JPA 数据访问接口
@Repository
public interface UserRepository extends JpaRepository<User, Long> {
}
// 这是一个 Spring Security 配置类
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
private UserDetailsService userDetailsService;
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.userDetailsService(userDetailsService);
}
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.antMatchers("/api/**").authenticated()
.anyRequest().permitAll()
.and()
.formLogin();
}
}
结语
Spring Boot 纯注解开发是一种非常简单、方便的开发方式。通过使用 Spring Boot,我们可以快速地创建一个功能齐全的 Web 应用程序。