[英]passing param to class with getter and setter
我创建了一个带有 getter 和 setter 方法的类,并且将值传递给该类的对象而不调用 setter 方法。
但是没有构造函数我不能传递任何参数。
当我使用构造函数时它正在工作。
//
@Entity
public class player {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "Player_Id")
private String id;
@Column(name = "PlayerName")
private String PlayerName;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getPlayerName() {
return PlayerName;
}
public void setPlayerName(String PlayerName) {
this.PlayerName = PlayerName;
}
}
@Service
public class playerservice {
@Autowired
List<player> list ;
public playerservice(){
list.add(new player("1","vijay"));//not able to pass parameters
}
}
我无法通过传递值来创建对象
为什么你对这个构造函数不满意?
public player(String player_id, String player_name){
this.player_id = player_id;
this.name = player_name
}
构造是通知您的类如何实例化对象的方式。 该类需要明确知道您使用这些构造函数传递的数据类型。 您可以根据自己的方便创建多个构造函数。 但是,如果您没有编写任何构造函数,则每个类都有一个默认构造函数,但没有为您传递任何值。
您似乎正在尝试以一种不适合使用的方式使用 Spring 依赖注入(即接线)。 Spring 不会也不能使用new
将参数注入在您的代码中构造的对象中。
如果你想动态地使用 Spring 接线,你需要按照这个博客的思路做一些事情:
如您所见,有几行代码设置了所有内容。 一旦你设置了上下文,你就对 Spring 说“让我成为一个 bean”,它会做一大堆反射魔法来构造 bean,并向它传递将连接到它的参数。 它可能比使用new
和传递参数的简单 Java 解决方案慢 2 到 3 个数量级。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.