@component使用案例

@component使用案例

@component的作用是将一个java类加入到spring容器中管理,省去了<bean id=”” class=””>这句配置,取而代之的是<context component-scan base-package=”包名” />,负责扫描改包下的所有包名。

案例

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:util="http://www.springframework.org/schema/util" xmlns:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans   
  http://www.springframework.org/schema/beans/spring-beans.xsd  
  http://www.springframework.org/schema/aop   
  http://www.springframework.org/schema/aop/spring-aop-4.0.xsd
  http://www.springframework.org/schema/tx   
  http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
  http://www.springframework.org/schema/context   
  http://www.springframework.org/schema/context/spring-context-4.0.xsd
  http://www.springframework.org/schema/util   
  http://www.springframework.org/schema/util/spring-util-4.0.xsd
  ">
      	
     <context:component-scan base-package="com.aa"></context:component-scan>
      		
</beans>  

package com.aa;

import org.springframework.stereotype.Component;
import com.introduce.Model.User2;
@Component("impl")
public class UserDaoImpl {
	public User2 getUser2() {
		
		return null;
	}
	public User2 getUser2(String name) {
		User2 user2=new User2();
		user2.setAge(22);
		System.out.println(name+"s1");
		return  user2;
	}
	
	public void aa(){
		System.out.println("bbbbb");
	}
}

import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.aa.UserDaoImpl;

public class Test4 {
	@Autowired
	private UserDaoImpl userDaoImpl;
	@Test
	public void test() {
		//启动spring容器,因为是测试类,所以要使用applicationContext.如果是tomcat启动就不用。
		ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext5.xml");
		userDaoImpl=(UserDaoImpl) ac.getBean("impl");
		userDaoImpl.aa();
	}

}
文件布局:@component使用案例

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106264.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • sql server数据库置疑_数据库置疑什么原因

    sql server数据库置疑_数据库置疑什么原因一、数据库置疑产生的原因1、SQLServer所在分区空间是否足够,数据库文件大小是否达到最大文件限制,FAT32事务格式只支持4G以内的文件?2、数据库文件损坏或被非正常删除时会出现这种情况;3、病毒防火墙的扫面也可能会引起数据库置疑;4、当SQLServer启动时,将会尝试获得对数据库文件的排他访问权,如果此时该文件被其他程序占用,或者遗失,数据库将会被标记为置疑;5、电脑非法关机也可能会造…

    2022年8月20日
    2
  • Scala 中 fastjson Object转JsonObject

    Scala 中 fastjson Object转JsonObjectScala中,fastjson的Object转JsonObject相比于Java有些差别,不支持像Java一样强转。//java中Object转JsonObjectJSONObjectjsonObject=(JSONObject)JSON.toJSON(eventBean);导包<!–阿里巴巴开源json解析框架–><dep…

    2022年5月3日
    425
  • jetbrainspycharm改中文_pycharm无法debug

    jetbrainspycharm改中文_pycharm无法debug在IDE中写代码时,很多时候需要用到多行编辑模式。像我写java或者scala等jvm代码使用的是intellij,而写python代码一般使用的是pycharm,这两IDE都是JetBrains系列的IDE。JetBrains系列IDE里,多行编辑模式很简单,在文件中邮件,然后选择ColumnSelectMode,就可以进行多行编辑了。Intellij里面的多行编辑效果图pycha…

    2022年8月26日
    2
  • mysql 提示表不存在的解决方法error: 1146: Table doesn‘t exist

    mysql 提示表不存在的解决方法error: 1146: Table doesn‘t exist直接拷贝数据库导致提示表不存在的解决方法电脑重装系统后把原来的mysqldata复制进去后大部分表是可以访问的,但是有几个表提示表不存在:error:1146:Table’a_content’doesn’texist这种情况就是要把原来mysql安装目录data里的ibdata1也要拷贝过去INNODB是MYSQL数据库一种流行的数据库引擎,支持事务(行级),在企业级应…

    2022年6月14日
    38
  • 了解大数据

    了解大数据

    2022年3月6日
    40
  • fleck 客户端_用 Fleck 实现 websocket 通信[通俗易懂]

    fleck 客户端_用 Fleck 实现 websocket 通信[通俗易懂]usingDevExpress.XtraBars.Ribbon;usingFleck;usingIMS.DBHelper;usingSystem;usingSystem.Collections.Generic;usingSystem.Data;usingSystem.Linq;usingSystem.Windows.Forms;usingWHC.Framework.Commons;usingRfi…

    2022年10月26日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号