NutzCN Logo
问答 spring做控制层,nutz做数据处理层问题之dao
发布于 3062天前 作者 yong9664 2578 次浏览 复制 上一个帖子 下一个帖子
标签:

dao该如果处理,交给spring吗?如果是,如何配置啊?求解
我现在的做法还是dao.js,但是在spring控制的controller和service拿不到dao对象

// dao.js
// 省略
dao : {
            type : "org.nutz.dao.impl.NutDao",
            args : [{refer:"dataSource"}]
        }
// 省略
// MainSetup.java
// 省略
Ioc ioc = conf.getIoc();
ioc.get(Dao.class);	// 注入数据源,
// 省略
10 回复

必须在spring的配置文件里面声明个bean啊

@wendal 哦,具体怎么弄啊?不知道如何下手。
dao.js不需要了是吗?

nutz.dao不需要nutz.ioc, nutz.ioc也不认识nutz.dao

<bean name="dao" type="org.nutz.dao.impl.NutDao">
   <!-- 再注入DataSource和SpringDaoRunner -->
</bean>

https://github.com/nutzam/nutzmore/tree/master/nutz-integration-spring

@wendal SpringDaoRunner我加上有问题

Connection con = DataSourceUtils.getConnection(dataSource);
// 这里会提示有个异常未捕获
Connection con = null;
		try {
			con = DataSourceUtils.getConnection(dataSource);
		} catch (CannotGetJdbcConnectionException e1) {// 捕获后这里会有错误,不明白怎么回事,提示的错误信息如下
			e1.printStackTrace();
		}
//提示的错误信息:No exception of type CannotGetJdbcConnectionException can be thrown; an exception type must be a subclass of Throwable

@wendal

// 使用这个方法,好像是可以了
Connection con = null;
		try
		{
			con = DataSourceUtils.doGetConnection(dataSource);
			callback.invoke(con);
		}
		catch (Exception e)
// 省略
// springMVC.xml
<!-- nutz数据源 -->
	<bean id="springDaoRunner" class="com.listener.SpringDaoRunner" />
	<bean id="ds" class="org.nutz.dao.impl.SimpleDataSource">
		<property name="username" value="nysq_new" />
		<property name="password" value="pass" />
		<property name="jdbcUrl" value="jdbc:oracle:thin:@36.7.151.36:1521:orcl" />
	</bean>
	<bean id="dao" class="org.nutz.dao.impl.NutDao">
		<constructor-arg>
			<ref bean="ds" />
		</constructor-arg>
		<property name="runner" ref="springDaoRunner"></property>
	</bean>

项目启动正常,然后如何在controller和service使用nutz的dao?麻烦给个例子,谢谢

注入进入service或action随便玩

来自炫酷的 NutzCN

@wendal ok了,谢谢!
SpringDaoRunner主要是个什么用处?不是很懂
springMVC.xml里没有注入它,也是正常的,nutz的dao在springMVC的控制层和service都可以正常使用

@yong9664 事务交给spring处理

来自炫酷的 NutzCN

@wendal 哦,接下来就准备做事务呢,有问题明天再请教,谢谢!

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