没有好好学SpringBoot直接就用代码出现一系列解决不了的错误显示报错信息如下:
***************************
APPLICATION FAILED TO START
***************************
Description:
Field mapper in com.demo.service.impl.UserServiceImpl required a bean of type 'com.demo.mapper.UserMapper' that could not be found.
Action:
Consider defining a bean of type 'com.demo.mapper.UserMapper' in your configuration.
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
代码分析如下:
mapper(dao层)
1 package com.demo.mapper;
2
3 import org.springframework.context.annotation.ComponentScan;
4 import org.springframework.stereotype.Repository;
5
6 import com.demo.domain.User;
7
8 //@Component
9 @Repository
10 public interface UserMapper {
11
12 public User gYeMian(User u);
13
14 public int sYeMian(User u);
15
16 }
service层
package com.demo.service.impl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.demo.domain.User;
import com.demo.mapper.UserMapper;
import com.demo.service.UserService;
@Service(value = "userService")
public class UserServiceImpl implements UserService{
@Autowired
private UserMapper mapper;
@Override
public User gYeMian(User u) {
User user = mapper.gYeMian(u);
return user;
}
@Override
public int sYeMian(User u) {
int i = mapper.sYeMian(u);
return i;
}
}
controller层
package com.demo.controller;
2
3 import javax.servlet.http.HttpServletRequest;
4
5 import org.springframework.beans.factory.annotation.Autowired;
6 import org.springframework.stereotype.Controller;
7 import org.springframework.web.bind.annotation.RequestMapping;
8 import org.springframework.web.bind.annotation.ResponseBody;
9
10 import com.demo.domain.User;
11 import com.demo.service.UserService;
12
13 @Controller
14 @RequestMapping(value = "/uc")
15 public class UserController {
16
17 @Autowired
18 private UserService userService;
19
20 @ResponseBody
21 @RequestMapping("/stemp.htm")
22 private String sYeMian(String muBan, HttpServletRequest request){
23
24 User u = new User();
25 u.setMuBan(muBan);
26 System.out.println("muBan=" + muBan);
27 int i = userService.sYeMian(u);
28
29 if (i>0){
30 return "存储成功";
31 }
32 return "存储失败";
33 }
34
35 }
解决方案
1 package com.demo.mapper;
2
3 import org.apache.ibatis.annotations.Mapper;
4
5 import com.demo.domain.User;
6
7 @Mapper
8 public interface UserMapper {
9
10 public User gYeMian(User u);
11
12 public int sYeMian(User u);
13
14 }
在mapper(dao层)加上@Mapper注解,否则提示找不到Mapper