通过node_id找到users并添加到数据库

               function openReasonEdit(){
var reason=document.getElementById("reason").value;
var selects = $('#usedRecord').datagrid('getSelections');
                    var id=selects[0].nodes.id;//获取选中信息的node_id
                    var macs="";
                    for (var i = 0; i < selects.length; i++) {
                                if (i == selects.length - 1) {
                               
                                    macs += selects[i].mac;
                                }
                                else {
                                    macs += selects[i].mac + "-";
                                }
                            }
$.ajax({
type : "POST",
url : "Black_addblackList1",
data :"macs="+macs+"&reason="+reason+"&id="+id,
success : function(msg) {
alert(msg);
$("#openReason").window('close');
}
});

            }   

**********************************************************************************************************

public void addblackList1() {
try {
//查询出id对应的users
List<Criterion> criterion1 = new ArrayList<Criterion>();
criterion1.add(Restrictions.eq("id", Integer.parseInt(id)));
Nodes node = nodesService.executeQueryUnique(criterion1, null);


List<Criterion> criterion = new ArrayList<Criterion>();
Users users=new Users();
users.setId(node.getUsers().getId());
criterion.add(Restrictions.eq("users", users));
List<Nodes> nodes=nodesService.executeQuery(criterion, null);
//根据mac判断是否加入黑名单(如果存在只更新)之间用-隔开
String[] nodesArray = macs.split("-");
for (int i = 0; i < nodesArray.length; i++){
List<Criterion> criterions = new ArrayList<Criterion>();
criterions.add(Restrictions.eq("mac", nodesArray[i]));
System.out.println(nodes.size());
criterions.add(Restrictions.in("nodes", nodes));
List<BlackList> nodeBlack = blackListService.executeQuery(criterions, null);
if(nodeBlack!=null){
blackListService.deleteAll(nodeBlack);
//删除缓存中信息
SpyMemcachedUtil.delBlackFromMemcache(nodeBlack);
for (int j = 0; j < nodes.size(); j++) {
BlackList blackList = new BlackList(this.reason, nodesArray[i],nodes.get(j));
blackListService.saveOrUpdate(blackList);
//加入缓存中
SpyMemcachedUtil.setBlackToMemcache(blackList);
}
}else{
for (int j = 0; j < nodes.size(); j++) {
BlackList blackList = new BlackList(this.reason, nodesArray[i],nodes.get(j));
blackListService.saveOrUpdate(blackList);
//加入缓存中
SpyMemcachedUtil.setBlackToMemcache(blackList);
}}
}
/*BlackList blackList = new BlackList(this.reason, this.macs);
nodeBlackListService.saveOrUpdate(blackList);*/
outPrint("加入黑名单成功!");
} catch (Exception e) {
e.printStackTrace();
outPrint("加入黑名单失败!");
} finally {
}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Node.js 中进行数据库查询时,可以通过前端传递的参数动态拼接查询语句,以实现根据前端接收的 id 对数据库进行查询的功能。具体的实现步骤如下: 1. 在前端页面中通过表单或 AJAX 请求将 id 参数传递到后端。 2. 在后端代码中,接收前端传递的 id 参数,使用字符串模板拼接查询语句。假设需要查询名为“users”的表中 id 等于前端传递的 id 值的一条数据,可以使用如下代码: ```javascript const mysql = require('mysql'); const connection = mysql.createConnection({ host: 'localhost', user: 'root', password: 'password', database: 'test' }); connection.connect(); const id = req.query.id; // 假设使用 Express 框架,通过 req.query 获取前端传递的 id 参数 const sql = `SELECT * FROM users WHERE id = ${id}`; connection.query(sql, (error, results, fields) => { if (error) throw error; console.log(results); }); connection.end(); ``` 这段代码使用了 MySQL 模块,连接到本地 MySQL 数据库,通过 req.query 获取前端传递的 id 参数,使用字符串模板拼接查询语句,并将查询语句作为参数传递给“query”方法执行查询操作。 3. 查询结束后,将查询结果返回给前端页面,以供前端页面进行处理和展示。 需要注意的是,在进行字符串拼接时,需要使用模板字符串或字符串模板的方式,以方便插入变量值。同时,为了避免 SQL 注入等安全问题,需要对输入的变量进行转义或使用参数化查询等方式,以保证查询的安全性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值