• 2015年创业中遇到的技术问题:31-40


    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">
    属性值
    描述
    number
    设置单元格可横跨的列数。
    注释: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 不能用于参与了索引视图的表。


    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位的随机数。
    /**
     * 20位的唯一数,前17位是系统当前时间,后3位是随机数。
     */
    public static String uniqueNo() {
    String dateStr = DateFormatUtil.format(new Date(), "yyyyMMddHHmmssSSS");
    Integer threeRandomStr=RandomUtils.nextInt(100, 1000);
    return dateStr+threeRandomStr;
    }
     System.out.println("20位唯一时间戳:"+uniqueNo());
     
     20位唯一时间戳:20150319101506558462
  • 相关阅读:
    QuartzNet使用
    Flex Metadata tags 元数据标签
    fb设置viewSourceURL
    免费开放的API
    测试跨域加载
    nape.geom.MarchingSquares
    bootstrap 全局样式
    <meta> 标记汇总
    bootstrap模版兼容IE浏览器代码嵌入
    正则表达式语法
  • 原文地址:https://www.cnblogs.com/qitian1/p/6462816.html
Copyright © 2020-2023  润新知