31.Linux下启动Mysql有N种方式。

  service mysql start;

  service mysqld strat;

  

  上述2种方式是,mysql已经安装作为了服务,有的叫做“mysql”,有的叫做“mysqld”。

  

  如果没有服务,还得手动启动。

  

  比如,/usr/bin/mysqld start &。

  

  一段时间不搞,记忆已经模糊了。

  o(︶︿︶)o 唉

32.用户表-索引-类型。

user表:uid,name

A类用户:1开头,10001

B类用户:2开头,20001

C类用户:3开头,30001

按照我之前的想法,想给用户增加一个type字段,感觉更清楚一些。

  

  boss觉得呢,从长远和性能角度,加前缀的方式更合适。

  

  加前缀,查询一类用户,用uid < 10001 ,uid >= 20000 and uid < 30000。每次查询可以走索引。

  

  根据类型type查询,type =1, type =2.

  type的值是固定的1,2,3。

  

  据说,索引的值不同反而更好。

  数据库索引这一块一直没有认真细看过)

33.jquery事件委派。

jquery提供了delegate方法。

// tab 选项卡


 $(".tab-package").delegate(".tab-menu li", "click", function() {

 var self = $(this);

 var parent = self.parents(".tab-package:first");

 var content = parent.find(".tab-content");

 content.eq(self.index()).show().siblings().not('.tab-menu').hide();

 self.parent().children().removeClass('on');

 self.addClass('on');


 });

弊端就是,页面改版后,如果样式被改了,很多依赖JS的效果出不来,不容易发现问题原因。

34.HTML表格的colspan。

想简单实现横跨所有列,网上找了个资料,感觉很坑啊,又说0表示横跨到列组的最后一列,又说没有浏览器支持。

只好去动态计算应该横跨多少列。

定义和用法

colspan 属性规定单元格可横跨的列数。

浏览器支持

所以浏览器都支持 colspan 属性。

没有浏览器支持 colspan="0",这个值有特殊的意义。(参见属性值表格中的描述)

语法

<td colspan="value">

属性值

描述

设置单元格可横跨的列数。

注释:colspan="0" 指示浏览器横跨到列组的最后一列。

template="<tr><td></td><td></td></tr>";

横跨2列。

实践发现,把colspan设置大一点,比如20,就能横跨所有列了。

35.SpringMVC异常处理,不需要加多余的“后缀”了。

<bean id="exceptionResolver" class="com.p2p.base.util.MyExceptionHandler">

 <property name="exceptionPage" value="/error/500" />

 </bean>

 
 

 <property name="exceptionPage" value="/error/500.html" />

36.表格分页组件fupage,实现加载动画。

加载数据的时候,显示动画效果。

在组件刚刚执行的时候,先设置表格内容为“展示加载图片的html代码”。

等加载完之后,再重新设置表格的主体内容。

//动画效果


 function loadingAnimation(bodyHolder,loadingImageUrl,isTable) {

 console.log("fupage-loading...");

 var loadingText = "加载中...";

 var loadingImage = "<img src='" + loadingImageUrl + "' alt='玩名加载中...'/>";

 var loadingDiv = "<div style='text-align:center;' >";

 //表格才加“<tr>”

 if(isTable){

 //偷懒,一般表格不会超过20列,设置为20,横跨所有列

 loadingDiv +='<tr><td colspan=20>';

 }

 if (loadingImageUrl) {

 loadingDiv += loadingImage;

 } else {

 loadingDiv += loadingDiv;

 }

 if(isTable){

 loadingDiv +='</td></tr>';

 }

 loadingDiv += "</div>";

 $("#" + bodyHolder).html(loadingDiv);


 }

37.Truncate Table。

在第21个问题,说到快速清空表数据的一种方法,drop table tablename,然后再重建表。

有粉丝给出了另外一种方式:Truncate Table。

Truncate是一个能够快速清空资料表内所有资料的SQL语法。并且能针对具有自动递增值的字段,做计数重置归零重新计算的作用。

TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。

DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。

TRUNCATE TABLE 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用 DELETE。

如果要删除表定义及其数据,请使用 DROP TABLE 语句。

对于由 FOREIGN KEY 约束引用的表,不能使用 TRUNCATE TABLE,而应使用不带 WHERE 子句的 DELETE 语句。由于 TRUNCATE TABLE 不记录在日志中,所以它不能激活触发器。

TRUNCATE TABLE 不能用于参与了索引视图的表。

参考资料: http://baike.baidu.com/link?url=ZQerws0xw22RxNSqcVbbATypqv6S9uxuP8k-SInjNBxRsnc9OmRsqWSBslWY8GxRlPr_OzAnU93EkkufepWFAa

38.kinMaxShow轮播图异常,最终发现是WebUploader图片上传坑爹,图片被压缩了。

  宽度由350变成了250,因此显示不正常了。

39.Java生成某个范围的随机数。

方法一:

int max=20;


  int min=10;


  Random random = new Random();


  int s = random.nextInt(max)%(max-min+1) + min;

import org.apache.commons.lang3.RandomUtils;


   Integer n=RandomUtils.nextInt(100, 1000);


   System.out.println("3位数的随机数:"+n);

  

40. 订单编号等唯一字符串,用17位的时间+3位的随机数。

/**

 
 
 public static String uniqueNo() {

 String dateStr = DateFormatUtil.format(new Date(), "yyyyMMddHHmmssSSS");

 Integer threeRandomStr=RandomUtils.nextInt(100, 1000);

 return dateStr+threeRandomStr;

 }