Java Spring应用程序无法启动

Java Spring应用程序无法启动,java,mysql,spring,repository,Java,Mysql,Spring,Repository,我是spring的初学者,想做一个示例项目。。我有一个数据库,我想连接到它。。我使用了诸如AutoWired&service之类的注释。。但有一个问题我解决不了 控制器包中的RegisterationController包含我要调用的服务: @RestController 公共类RigestationController{ @自动连线 私有数据管理dm=新数据管理(); @交叉原点(原点=”http://localhost:8060") @GetMapping(“/SignUp/{email}

我是spring的初学者,想做一个示例项目。。我有一个数据库,我想连接到它。。我使用了诸如AutoWired&service之类的注释。。但有一个问题我解决不了

控制器包中的RegisterationController包含我要调用的服务:

@RestController
公共类RigestationController{
@自动连线
私有数据管理dm=新数据管理();
@交叉原点(原点=”http://localhost:8060")
@GetMapping(“/SignUp/{email}/{UName}/{Pass}/{gender}/{UserType}”)
@应答器
公共无效注册(@PathVariable String电子邮件,@PathVariable String UName,
@PathVariable字符串传递、@PathVariable字符性别、@PathVariable字符串用户类型)
{		
布尔值valid=dm.Validate(电子邮件,通过);//验证电子邮件和通过
如果(有效)
{
if(UserType.equals(“s”))
{
StudentAccount StudentAccount=新的StudentAccount(电子邮件、通行证、取消注册、性别);
dm.add(学生账户);
System.out.println(“成功创建帐户”);
}
}
其他的
{	
System.out.println(“无效数据,请重试”);
}

}
如果您在
私有数据管理
上使用
@Autowired
,您就不能使用
新建
,因为这样Spring就无法自动连线,因为它对您的新对象一无所知。
@Autowired
顾名思义,Spring会使用
@Autowired
来自动查找已经存在的内容。此外,如果您试图由构造函数注入,应该这样做

private DataManagement dm;

@Autowired
public RigesterationController(DataManagment dm)
{
   this.dm = dm;
}  
对于现场注入,只需输入

@Autowired
private DataManagement dm;

我不理解编辑的部分..你的意思是用组件注释替换服务注释..我按照你说的编写了构造函数,但还有一个错误:-controller.RigeSetationController中构造函数的参数0需要一个类型为“first.DataManager”的bean,但找不到。哦,很抱歉,没有注意到
@SeService
annotation.你看了这些吗?我看了这些..但我认为这些是为了另一个问题扫描你显示你的主类?检查帖子..它现在被编辑了