Java Spring引导-是否可以将控制器中定义的变量传递到模型类中?

Java Spring引导-是否可以将控制器中定义的变量传递到模型类中?,java,spring,spring-boot,spring-mvc,Java,Spring,Spring Boot,Spring Mvc,举个简单的例子,有一个叫做“Car”的类。其中有一个方法,它接受一个名为“result”的字符串变量: public class Car { public void move(String result) { System.out.println(result); } } 然后是使用car类的控制器: @Controller public class carController { private Car myCar; myCar.mov

举个简单的例子,有一个叫做“Car”的类。其中有一个方法,它接受一个名为“result”的字符串变量:

public class Car {

    public void move(String result) {
        System.out.println(result);
    }

}
然后是使用car类的控制器:

@Controller
public class carController {

    private Car myCar;

    myCar.move("Vroom vroom");
}
但是,当它试图通过“Vroom Vroom”时,它崩溃并给出以下信息:

原因:java.lang.NullPointerException:null

我调试了它,发现它在执行使用需要传入的值调用该方法的行时崩溃

似乎无法将变量从Spring引导控制器传递到模型类

以下是来自我的项目的实际错误消息:

    Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2020-04-15 16:54:46.331 ERROR 7388 --- [  restartedMain] o.s.boot.SpringApplication               : Application run failed

java.lang.IllegalStateException: Failed to execute CommandLineRunner
    at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:787) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
    at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:768) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:322) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
    at com.demo.coronavirus.CovidUkApplication.main(CovidUkApplication.java:13) [classes/:na]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_241]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_241]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_241]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[na:1.8.0_241]
    at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) [spring-boot-devtools-2.2.6.RELEASE.jar:2.2.6.RELEASE]
Caused by: java.lang.NullPointerException: null
    at com.demo.coronavirus.controller.DisplayCasesController.lambda$0(DisplayCasesController.java:35) ~[classes/:na]
    at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:784) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
    ... 10 common frames omitted

首先,您的
Car
类尚未实例化。您需要实例化一个
Car
对象来执行任务

Car myCar=new Car();
其次,您的
Car
类没有任何
vroom
方法,而是
move(String str)
方法。 因此,尝试以下方法来实现您的目标:

Car myCar=new Car();
myCar.move("Your String here");

哎呀,我把名字改了一部分,我的意思是“移动”,那么,你用上面提到的方法得到了什么?实例化类似乎就是这样。新手犯了错误,我太生疏了。谢谢