当前位置: 首页 > wzjs >正文

什么建站公司好站长之家网站模板

什么建站公司好,站长之家网站模板,网页打不开被拦截了怎么办,数据表和网站建设的关系1. 组件注册注解 Bean 作用:用于方法上,表示该方法返回的对象由Spring容器管理。通常用于配置类(Configuration)中,注册第三方库或自定义的Bean。 使用场合: 当你需要将非Spring管理的类(如第…

1. 组件注册注解

@Bean
  • 作用:用于方法上,表示该方法返回的对象由Spring容器管理。通常用于配置类(@Configuration)中,注册第三方库或自定义的Bean。

  • 使用场合

    • 当你需要将非Spring管理的类(如第三方库的类)纳入Spring容器时。

    • 需要自定义Bean的初始化逻辑(如数据库连接池、RestTemplate等)。

  • 示例

    java

    复制

    @Configuration
    public class AppConfig {@Beanpublic RestTemplate restTemplate() {return new RestTemplate();}
    }
@Service
  • 作用:用于上,标记该类为**业务逻辑层(Service层)**的组件,由Spring自动扫描并注册为Bean。

  • 使用场合

    • 业务逻辑层的实现类。

  • 示例

    java

    复制

    @Service
    public class UserServiceImpl implements UserService {// 业务逻辑代码
    }
@Controller
  • 作用:用于上,标记该类为Web控制器(MVC层),处理HTTP请求并返回响应。通常与@RequestMapping结合使用。

  • 使用场合

    • 定义Spring MVC的控制器。

  • 示例

    java

    复制

    @Controller
    public class UserController {@GetMapping("/users")public String listUsers() {return "users";}
    }

@Component@Service@Controller@Repository都是@Component的特殊化形式,功能类似,但语义更明确。


2. 依赖注入注解

@Autowired
  • 作用:由Spring提供,按**类型(byType)**自动装配依赖。如果存在多个同类型的Bean,需要结合@Qualifier指定名称。

  • 使用场合

    • 适用于Spring生态,推荐在纯Spring项目中使用。

  • 示例

    java

    复制

    @Service
    public class UserService {@Autowiredprivate UserRepository userRepository;
    }
@Resource
  • 作用:由JSR-250规范提供,默认按**名称(byName)**自动装配,其次按类型(byType)。可以显式指定name属性。

  • 使用场合

    • 需要按名称注入时(如多个同类型Bean)。

    • 适用于需要与JavaEE兼容的场景。

  • 示例

    java

    复制

    @Service
    public class UserService {@Resource(name = "userRepositoryImpl")private UserRepository userRepository;
    }
@Qualifier
  • 作用:与@Autowired配合使用,指定具体的Bean名称(解决多个同类型Bean的冲突)。

  • 使用场合

    • 当存在多个相同类型的Bean时,明确指定注入哪一个。

  • 示例

    java

    复制

    @Service
    public class UserService {@Autowired@Qualifier("userRepositoryJpa")private UserRepository userRepository;
    }

关键区别总结

注解来源作用范围主要用途解决冲突方式
@BeanSpring方法注册第三方或自定义Bean通过方法名或@Qualifier
@ServiceSpring标记业务逻辑层组件-
@ControllerSpring标记Web控制器-
@AutowiredSpring字段/方法/构造器按类型自动装配结合@Qualifier
@ResourceJSR-250 (JavaEE)字段/方法按名称(优先)或类型自动装配通过name属性
@QualifierSpring字段/参数指定Bean名称(配合@Autowired-

使用场景建议

  1. 注册Bean

    • 如果是自定义类,优先用@Service@Controller等组件注解。

    • 如果是第三方类,用@Bean在配置类中显式定义。

  2. 依赖注入

    • 纯Spring项目:@Autowired + @Qualifier(按类型+名称)。

    • 需要兼容JavaEE或按名称注入:@Resource

  3. 解决冲突

    • 多个同类型Bean时,优先用@Qualifier@Resource(name="...")


示例代码

java

复制

@Configuration
public class AppConfig {@Beanpublic DataSource dataSource() {return new HikariDataSource();}
}@Service
public class OrderService {@Autowired@Qualifier("dataSource")private DataSource dataSource;
}@Controller
public class OrderController {@Resourceprivate OrderService orderService;
}

理解这些注解的区别和适用场景,能帮助你更优雅地设计Spring应用架构。

http://www.dtcms.com/wzjs/397636.html

相关文章:

  • 北京网站制作的公司哪家好google应用商店
  • 搭建网站怎么赚钱网站营销策略有哪些
  • 王也天个人资料优化教程网下载
  • 网站建设相关关键词搜狐酒业峰会
  • 电商网站新闻怎么做的谷歌排名网站优化
  • 东莞软件网站推广淘宝排名查询
  • 高性能网站建设进阶...超级优化空间
  • 有人和兽做的网站seo优化主要工作内容
  • 微科技h5制作网站模板台州关键词优化服务
  • 高端品牌网站设计企业网站建设培训方案怎么做
  • 企业网站的常见服务是什么广告策划案优秀案例
  • 做网站需要多少钱 做百度权重4网站值多少钱
  • 石家庄网站建设找哪家互联网全媒体广告代理
  • 人家做网站是什么成都网站快速开发
  • 较便宜的网站建设昆明长尾词seo怎么优化
  • 网站如何做传输网盘网络营销计划书怎么写
  • 济南智能网站建设哪家好长沙有实力seo优化
  • 长春哪家做网站做的好免费的seo优化
  • 新手学做网站12天婴优化设计六年级下册语文答案
  • 广东网站建设发信息网站出售
  • 专业手机网站开发有广告位怎么找广告商
  • 教做面食的网站企业网址怎么注册
  • 做网站公司官网广告营销留电话网站
  • 龙华建设网站全网营销推广是什么
  • oppo官方网站人工智能培训心得体会
  • 多语言网站建设公司seo网页的基础知识
  • wordpress图片广告代码郑州百度快照优化
  • css定位seo sem什么意思
  • 黄山网站建设策划他达拉非片的作用及功效副作用
  • 妇联网网站建设工作丹东网站seo