疑问的点有两个:1、Student这个类的构造器参数居然有四个,这个不符合我平时的习惯,参数都不是类中声明的属性 2、不理解这个构造器是干啥的,一直以为是要让别人new呢。
@Component public class Student { private int name; public Student(@Value("${ibmmq.server.channelname}") String channelNam,@Value("${ibmmq.server.ip}") String ip, @Value("${ibmmq.server.port}") int port, @Value("${ibmmq.server.queue.mgr}") String queueMgrName, @Value("${ibmmq.server.conn.num}") int connNum) { System.out.println("======="); System.out.println("======="); } // public Student() { // } public int getName() { return name; } public void setName(int name) { this.name = name; } }
首先明确Student是要放到ioc容器里面的,不是让别人来new的。这就理解了构造器的作用:用来把Student实例化到ioc 容器里面的,默认是用无参的构造器,没有无参的就用有参的
原文:https://www.cnblogs.com/gaohq/p/15017810.html