springboot @Autowired(required=true)If you want an embedded database (H2, HSQL or Derby,html无法映射

本文解决了一个Spring Boot项目中DAO层无法正确注入的问题,涉及到配置注解、扫描路径及静态资源处理等方面。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

大意是启动时候没有找到这个bean所以就报错了,真是烦的一批自己整个springboot搞了三天这个问题。

有的是让加这个注解,这个注解是没事了但是从server层到dao层就会找不到dao层方法

@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})

有的说说可以加下面这俩 ,但是下面这俩和上面那个有冲突不实用

@ComponentScan(basePackages = {"com.zhuhl.dao"})(所有dao层的父文件夹)
@MapperScan("com.zhuhl.dao")

如果去掉上面EnableAutoConfiguration这个注解 就会报下面这个错,真是烦的一批

不要忘了dao上面加

@Mapper

service上面加

@Service

If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.

我检查过 项目目录 pom properties(有的是yml文件)都没问题

我是这么改的 才正常运行,每个人可能都不一样,但是不推荐加EnableAutoConfiguration这个注解

 

 但是上述这样启动还是有问题 会报404 主要是dao层注入不了不知道为啥 得在service层 加成这样才行,感觉就是掩耳盗铃 有就注入找不着就不注入 那肯定找不着啊 只是不报错了

@Autowired(required = false)

下面这种加这个注释也行 但是我的dao层目录是这样的 我再加个就还报错 我差点炸了 这一层目录有啥区别 我蒙了 不是扫描所有子包和同级目录吗  真邪门 

com.zhuhl.base.dao.user

 

这样是运行起来了 但是 访问报这个 GIAO

 

还碰到个错误 我明明有这个目录就是报404 

解决  加入静态资源注入  其实继承了

WebMvcConfigurationSupport
// 配置静态资源文件路径
@Override
protected void addResourceHandlers(ResourceHandlerRegistry registry) {
   registry.addResourceHandler("/templates/**")
         .addResourceLocations(ResourceUtils.CLASSPATH_URL_PREFIX + "/templates/");
   super.addResourceHandlers(registry);
}

后也不会报错了。

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhl_BeginLife

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值