最近使用node操作mysql的感受
发布于 9 年前 作者 keller35 4043 次浏览 最后一次编辑是 8 年前 来自 问答

最近工作中要用到node操作mysql,没有使用orm。 因为受java影响,原本一开始准备写一个dao层,写了一段时间之后发现表连接的情况出现得太多,用dao并不能很方便的组织数据。 于是又改为直接写sql查询数据,然后根据接口封装数据,这其中又使用到async的一些操作集合的接口。 整体下来就有这样的感觉,写出来的代码结构性很差,不易读,代码无法复用。 不知道各位怎么看待这个问题?

9 回复

用ruby的 active record吧,合适的东西做合适的活

估计像我一样是为了体验新味道而掉进坑的。nidejs因为回调的原因,很多业务处理方式不如传统的代码结构优美。你或者不必太纠结,或者习惯这种新常态,另外dao既然有就已经超越百分之八十的nodejs开发者了

//select->insert->update
db.query(query, handleSelect);
function handleSelect(err, results){
	db.query(query, handleInsert);
}
function handleInsert(err, results) {
	db.query(query, handleUpdate);
}
function handleUpdate(err, results) {
	//next
}

自己的常用写法

用mysql为什么不能用orm框架?orm2这个就挺不错

说白了还是在吐槽 callback hell ! 试试co吧

@qingtiandalaoye 我不认为dao是必须存在的东西,这就好像在说: “你看,我用了24种设计模式,你才用了一种,我超越你了!”

sequelize也不错

Node 的几个流行 ORM 看似美好,其实暗藏了 N 多坑。

@qingtiandalaoye @151263

我不认为 DAO 是必须存在的东西,这就好像在说: “你看,我用了24种设计模式,你才用了一种,我超越你了!”

非常赞同这句话。并且不知道为什么我宁愿叫它 Model 层也不愿意叫它 DAO。

回到顶部