JAVA中service实现类中的@Service(demoService)是什么意思? 求哪位大神指点
因为这是要实现的类的一个对象名而已,比如在一个Student实现类上加@Service(“student”),括号里面就是给实例化后的Student对象取个名字。这是在一个接口有多个实现类的情况下区分实现类的方式。
比如Student实现了Person接口,在controller里面@Autowired Person时,假如这时Person还有另一个实现类User,为了确定实例化Student还是User, @Service括号里面的东西就有用了,
@Autowired
@Qualifier(“student”)
private Person person;
这样就确定实例化了一个Person指向一个Student对象。
扩展资料:
类与对象的关系:
类是创建对象的模板,确定对象将会拥有的属性和方法。
类是对象的抽象化;对象是类的具体化。
类是一种数据类型,是对象的数据类型(不同于int等基本类型:类具有方法)
方法用于定义类的某种行为(或功能),其语法结构如下:
访问控制符 [修饰符] 返回值类型 方法名( [参数] )
方法中的访问控制符用于限制方法在其他类中的使用范围。
访问控制符分为四种:public、protected、友好的和private。
static修饰符用于限制方法的调用方式:
static修饰的方法可以直接使用类名调用也可以使用类创建的对象调用;
非static修饰的方法只能使用类创建的对象调用。
其它常用方法修饰符有final和synchronized
方法返回引用数据类型的数据,则返回值类型必须是返回数据所属的数据类型或者其父类。
方法返回引用数据类型的数据,则返回值类型必须是返回数据所属的数据类型或者其父类。
方法如果有返回值,则必须借助return关键字将数据返回;
首字母必须小写,如果由多个单词组成,从第二个单词开始首字母必须大写;方法名一般由一个动词或者动名词构成。
就是不用再spring里配置bean,就是因为这个@Service、、、
希望可以帮助你,谢谢采纳。。。
括号里的参数是随便设置的吗 ?
嗯,理论上可以随便设置,因为这是你要实现的类的一个对象名而已,比如在一个Student实现类上加上@Service("student"),括号里面就是给实例化后的Student对象取个名字。。。
这是在你一个接口有多个实现类的情况下区分实现类的方式。。。。
比如Student实现了Person接口,在你的controller里面@Autowired Person时,假如这时Person还有另一个实现类User,为了确定实例化Student还是User, @Service括号里面的东西就有用了,
@Autowired
@Qualifier("student")
private Person person;
这样就确定实例化了一个Person指向一个Student对象。。。
不知道你理解了没有?。。。不懂请继续追问。。。
纯手打。。。望采纳。。。
@Service("demoService")表示这个bean的名字是“demoService”
括号里是该class在context中的名字。
相当于:
<bean id="demoService">