NutzCN Logo
问答 DaoUp 方式获取 dao的时候 properties 文件中url前缀 spring.url=url 老项目前缀不能动
发布于 10天前 作者 sunhai1988 60 次浏览 复制 上一个帖子 下一个帖子
标签:

DaoUp 方式获取 dao的时候 properties 文件中url前缀 spring.url=url 老项目前缀不能动

12 回复
DaoUp.me().setDataSource(new PropertiesProxy("xxx.properties").make(DruidDataSource.class, "spring."));

spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=
spring.datasource.username=
spring.datasource.password=

使用 DaoUp.me().setDataSource(new PropertiesProxy("application.properties").make(DruidDataSource.class, "spring.datasource.")); 这个并不行

改成url= username = password= 就可以


java.lang.RuntimeException: java.lang.NoSuchFieldException: Can NOT find field [type] in class [com.alibaba.druid.pool.DruidDataSource] and it's parents classes at org.nutz.lang.Lang.wrapThrow(Lang.java:185) at org.nutz.lang.Mirror.getInjecting(Mirror.java:1068) at org.nutz.ioc.impl.PropertiesProxy.make(PropertiesProxy.java:375) at com.ybej.user.controller.NutzDaoTest.main(NutzDaoTest.java:12) Caused by: java.lang.NoSuchFieldException: Can NOT find field [type] in class [com.alibaba.druid.pool.DruidDataSource] and it's parents classes at org.nutz.lang.Mirror.getField(Mirror.java:489) at org.nutz.lang.Mirror.getInjecting(Mirror.java:1059) ... 2 more

哦,还有其他非配置项

这是springboot吧? 有nutzdao的starter的

不需要用DaoUp也能搞定

嗯 我看看,其实我拿到dao实例,就好了其他都不用改动

直接用simpledatasource 好了

嗯,能搞定就行

先这样用下 不知道会不会有什么问题

/**
 * Created by admin on 2017/12/8.
 */
@Component
public class NutzDao {
    @Autowired
    DruidDataSource  dataSource;

    private Dao dao;

    public Dao  getDao(){

        if (dao == null){
            dao = new NutDao(dataSource);
        }
        return dao;
    }
}

添加回复
请先登陆
回到顶部