Spring注解开发实例
假设我们的项目有一个简单的三层架构:控制器(Controller)、服务(Service)和数据访问对象(DAO)。我们将使用Spring注解来配置这些组件。
Maven依赖
首先,确保你的pom.xml
文件中包含Spring相关的依赖。这里是一个简化的Maven配置示例:
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.3.9</version> <!-- 请使用最新版本 -->
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.3.9</version> <!-- 请使用最新版本 -->
</dependency>
</dependencies>
配置类
创建一个配置类来启用组件扫描和配置Spring上下文。
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
@Configuration
@ComponentScan(basePackages = "com.example")
public class AppConfig {
}
DAO层
创建一个简单的DAO接口和它的实现类。
// 接口
public interface UserRepository {
String getUser();
}
// 实现
import org.springframework.stereotype.Repository;
@Repository
public class UserRepositoryImpl implements UserRepository {
@Override
public String getUser() {
return "User from Repository";
}
}
服务层
创建一个服务接口和服务实现类,其中使用@Autowired来注入DAO。
// 接口
public interface UserService {
String getUser();
}
// 实现
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class UserServiceImpl implements UserService {
private final UserRepository userRepository;
@Autowired
public UserServiceImpl(UserRepository userRepository) {
this.userRepository = userRepository;
}
@Override
public String getUser() {
return userRepository.getUser();
}
}
控制器层
创建一个简单的REST控制器,它会调用服务层的方法。
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class UserController {
private final UserService userService;
@Autowired
public UserController(UserService userService) {
this.userService = userService;
}
@GetMapping("/user")
public String getUser() {
return userService.getUser();
}
}
主程序
最后,需要一个主程序来启动Spring应用上下文,并运行一个简单的测试。
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
public class MainApp {
public static void main(String[] args) {
ApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);
UserController controller = context.getBean(UserController.class);
System.out.println(controller.getUser());
}
}
这个例子展示了如何使用Spring的注解来构建一个简单的应用程序。通过使用@Component
, @Service
, @Repository
, @RestController
等注解,我们可以快速地定义各种组件,并利用@Autowired
来进行依赖注入。这样的方式极大地简化了配置过程,能够更专注于业务逻辑的实现。
原文地址:https://blog.csdn.net/2401_85045690/article/details/143744354
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!