想要接单子技术可以进群,一定要靠谱!一定要靠谱!一定要靠谱!重要的事情说三遍!
群里有java、php、c#、c++、vue、layui、uniapp、bootstrap、mysql、linux等单子

一、组件声明注解
-
@Component
通用组件标记,表示该类将被Spring容器管理为Bean。@Component public class MyComponent {} -
@Service
标记业务逻辑层组件,是@Component的特化形式。@Service public class UserService {} -
@Repository
标记数据访问层组件(DAO),具有异常转译功能(将数据库异常转为Spring统一异常)。@Repository public class UserRepository {} -
@Controller
标记Web控制器组件,用于处理HTTP请求(常与@RequestMapping配合使用)。@Controller public class UserController {} -
@RestController
@Controller+@ResponseBody的组合,用于构建RESTful API(直接返回JSON数据)。@RestController public class ApiController {}
二、依赖注入注解
-
@Autowired
自动装配依赖(按类型注入),可用于字段、构造方法或Setter方法。@Autowired private UserService userService; -
@Qualifier
配合@Autowired使用,按Bean名称解决类型冲突。@Autowired @Qualifier("mysqlDataSource") private DataSource dataSource; -
@Resource
JSR-250标准注解,按名称注入依赖(等同于@Autowired+@Qualifier)。@Resource(name = "oracleDataSource") private DataSource dataSource; -
@Value
注入外部配置值(如application.properties中的属性)。@Value("${server.port}") private int port;
三、配置相关注解
-
@Configuration
声明配置类(替代XML配置),内部包含@Bean方法。@Configuration public class AppConfig {} -
@Bean
在配置类中声明方法返回对象为Spring Bean。@Bean public DataSource dataSource() { return new HikariDataSource(); } -
@ComponentScan
指定Spring扫描组件的包路径。@ComponentScan("com.example") public class AppConfig {} -
@PropertySource
加载外部属性文件。@PropertySource("classpath:config.properties")
四、Web请求处理注解
-
@RequestMapping
映射HTTP请求到控制器方法(支持指定路径、HTTP方法)。@RequestMapping(value="/users", method=RequestMethod.GET) -
@GetMapping/@PostMapping
@RequestMapping的简写形式(分别对应GET/POST请求)。@GetMapping("/users") public List<User> getUsers() {...} -
@PathVariable
从URL路径中获取参数。@GetMapping("/users/{id}") public User getUser(@PathVariable Long id) {...} -
@RequestParam
从URL查询参数中获取值。@GetMapping("/search") public List<User> search(@RequestParam String keyword) {...} -
@RequestBody
将HTTP请求体映射为Java对象(常用于接收JSON数据)。@PostMapping("/users") public void createUser(@RequestBody User user) {...} -
@ResponseBody
将方法返回值直接写入HTTP响应体(不经过视图解析器)。
五、事务管理
@Transactional
声明方法需要事务管理(支持传播行为、隔离级别等配置)。@Transactional(rollbackFor = Exception.class) public void updateUser(User user) {...}
六、AOP相关
-
@Aspect
声明切面类(包含通知和切点)。@Aspect @Component public class LoggingAspect {...} -
@Before/@After
定义前置通知/后置通知。@Before("execution(* com.example.service.*.*(..))") public void logBefore() {...}
七、测试相关
-
@SpringBootTest
标记Spring Boot集成测试类(加载完整应用上下文)。@SpringBootTest class UserServiceTest {...} -
@MockBean
在测试中注入Mock对象。@MockBean private UserRepository userRepository;
注:Spring Boot还提供
@SpringBootApplication(包含@Configuration+@ComponentScan+@EnableAutoConfiguration)作为主启动类注解。实际开发中应根据具体模块(Core、MVC、Data、Boot等)选择合适的注解。
739

被折叠的 条评论
为什么被折叠?



