日积月累--小技巧之六

 各种各样奇形怪状的需求推动着技术的革新,发展,也使我们每个人都从中受益。

 发散地思考,不断地干掉一个又一个不懂却又好奇的问题,那么你就在进步。(You Are Progress。)


I. 如何在代码中判断请求时Ajax 请求呢, 还是普通的Http请求?

   使用审查工具,对比Ajax请求与一般请求,会发现一般Ajax请求会向请求中加入一个header: X-Requested-With : XMLHttpRequest;后端代码通过获取该请求头然后判断是否为"XMLHttpRequest",即可达到目的。

	String x_requested_with = http_servlet_request.getHeader("X-Requested-With");
	if("XMLHttpRequest".equals(x_requested_with))
		// It is Ajax Request

II. 使用jdbc接口对数据库进行插入操作,非常方便,而且很多时候完全足够,不管你使用的是原生jdbc还是封装完备的框架。但是当你有太多数据需要插入数据库,此时使用代码插入实在太慢(数据库的批处理也未达到很好的效果,也许我使用有误)。而且数据库驱动似乎也不支持bulk insert(代码尝试,数据库无效果),bulk insert也就是大批量插入:insert into table values(....), values(....), values(.....),......;这种插入语句大家一定见过很多次,使用工具如navicat, dbforge等等导出的数据库sql文件都是这样。这种语法好处是,一次插入足够多的数据,每一个':'(分号)之前的语句一次性插入,效率非常高。

     将插入语句写入文件,然后调用代码执行操作:

	java code :
		....
	Runtime.getRuntime().exec("D:/executable.bat");
	
	executable.bat:
	mysql -uroot -proot mydatabase < D:/sql_file.sql

III. 你有这中需求吗:显示多张数据表获取的数据按照真假之来排序,如:多个店铺商家按照是否有用户向其下过订单为首要条件来排序。

     可以使用Mysql的join与isnull()来完成此功能:

	select * from supplier left join order on supplier.supplier_id = order.supplier_id order by isnull(order.order_id) asc; 
	// 这样,没有订单的商家就置于拥有订单商家之上

Good Bye, Readers! See You Next Post.....




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值