• 2015年工作中遇到的问题:41-50


    41.Freemarker中的“大于等于”,想当然用了个"ge",结果不行。
      应该是“gte”,gt代表大于,e代表等于。

    42.报错找不到jquery-1.10.2.min.map解决办法。
    我先说一下什么是source map文件。
           source map文件是js文件压缩后,文件的变量名替换对应、变量所在位置等元信息数据文件,一般这种文件和min.js主文件放在同一个目录下。
           比如压缩后原变量是map,压缩后通过变量替换规则可能会被替换成a,这时source map文件会记录下这个mapping的信息,这样的好处就是说,
       在调试的时候,如果有一些JS报错,那么浏览器会通过解析这个map文件来重新merge压缩后的js,使开发者可以用未压缩前的代码来调试,这样会给我们带来很大的方便!
          而这种还原性调试功能,目前只有chorme才具有,所以就会出现标题说的问题,我引入jquery-1.10.2.min.js的时候,在firefox下或者其他浏览器下是好的,
      在chorme下会报错找不到jquery-1.10.2.min.map文件,404,就是因为以上说的情况,jquery会检测浏览器是否支持source map功能,
      如果支持的话,那就去下载source map文件,而这个时候如果你引用的是官网的min.js那没问题,它会去自己的目录下找source map文件,
      而如果jquery.min.js文件在你的服务器上而服务器上又没有source map的话,那就会报错了,
      所以三种解决办法:
      一,引用官网文件  
      二,把source map文件下载下来放到服务器上(推荐) 
      三,把chorme文件的工具-->开发者工具-->设置-->Enable source maps勾去掉,去掉这个勾,jquery就不会去下载source map文件了!
      

    43.Boss推荐的TotalCommand这个工具,感觉实用性价值很大。
    目前发现,硬盘Tab切换,查找文件,比较方便。

    44.URL匹配问题。
    SiteMesh、SpringMVC、Struts、web.xml等很多地方都可以配置url匹配,说实话
    “/”,“/*”,“*.html”等容易混淆。
    SiteMesh的“/”貌似是单独的拦截一个“/”。
    <filter>
            <filter-name>sitemesh</filter-name>
            <filter-class>com.opensymphony.module.sitemesh.filter.PageFilter</filter-class>
        </filter>
        <filter-mapping>
            <filter-name>sitemesh</filter-name>
            <url-pattern>/</url-pattern>
            <dispatcher>REQUEST</dispatcher>
            <dispatcher>FORWARD</dispatcher>
        </filter-mapping>
        <filter-mapping>
            <filter-name>sitemesh</filter-name>
            <url-pattern>*.htm</url-pattern>
            <dispatcher>REQUEST</dispatcher>
            <dispatcher>FORWARD</dispatcher>
        </filter-mapping>
            <filter-mapping>
            <filter-name>sitemesh</filter-name>
            <url-pattern>*.html</url-pattern>
            <dispatcher>REQUEST</dispatcher>
            <dispatcher>FORWARD</dispatcher>
        </filter-mapping>

    45.这2个请求是等价的,只要下面的一个就好了。已初步验证!
    @RequestMapping("")
    public String welcome3(Model model) {
    return doWelcome(model);
    }
    @RequestMapping("/")
    public String welcome2(Model model) {
    return doWelcome(model);
    }
    46.mysql修改数据做条件判断。
    Boss需要在执行数据库更新update语句的时候做判断,问了下我,我之前学习sql的时候,印象中没有这个用法啊。
    最后,还是找到了办法,从网上找的。
    网上找资料确认,这个是“sql标准语法,主流数据库都支持”。

    案例:

    修改一字段数据,发现该数据如果修改后小于0,则修改为0.否则在当前字段基础上相减

    游戏中玩家金币不能为负数,如果直接查询出来,在程序做判断,然后修改回去,感觉很繁琐。

    UPDATE userinfo SET money = CASE WHEN money<=400 THEN 0 ELSE money-400 END WHERE username='huaye2001'

    400是可以变的参数。

    47.Tomcat-SpringMVC-Web项目,自定义404页面。
    @Controller
    public class AllController {
    @RequestMapping("*")
    public String test404(){
    return "404Page";
    }
    }

    直接在web.xml中配置Tomcat404静态页面,配置没能走sitemesh,上面这种方式可以正常渲染header和footer。
    这个问题还需要继续研究。


    48.是否应该使用Maven、SiteMesh等工具。
    太多的工具,虽然带来了好处,但是也带来了很多麻烦的地方那个,SiteMesh不够灵活。
    挺让人纠结的。

    49.查找QQ的消息记录。
    之前和一个网友,有聊天,但是找不到具体是哪个好友了,但是知道话题的关键内容。
    QQ消息搜索的位置:工具-消息管理器-右上角-搜索。

    50.Maven仓库,经常会出现问题,有些jar包中央仓库没有,比如kaptchar.jar。
    于是,就直接在本地Maven仓库放置了相应的jar包,但是有的时候,打包会失败,今天就遇到了,
    不知道为什么Maven非要去中央仓库下载这个jar包,但是呢,今天类似“https://repo.maven.apache.org/”这种地址,
    都不能正常访问,提示“Browsing for this directory has been disabled.
    View this directory's contents on http://search.maven.org instead.
    Find out more about The Central Repository.”。

    网上还有种说法,执行命令安装1个外部jar包,
    mvn install:install-file -DgroupId=com.google.code -DartifactId=kaptcha -Dversion=2.3.2 -Dfile=/home/whptp/.m2/repository/com/google/code/kaptcha/kaptcha/2.3/kaptcha-2.3.2.jar -Dpackaging=jar -DgeneratePom=true
    试了下,没有成功。

    最后尝试了另外1种办法是,用OSChina提供的Maven服务,不用国外的。

    按照帮助文档,修改Settings.xml文件,就可以了,我们已经修改搞定了。
    第一次的时候,会下载很多jar包,很多很多啊。

    Boss最初找不到这个文件,mvn是他安装的,但是已经很久了。
    我尝试了2种办法来查找这个mvn的安装目录:
    find / -name maven,查找结果太多,有的目录没有权限。
    whick mvn,直接定位到mvn的安装目录,比如我们的是
    [whptp@web100 2.3]$ which mvn
    /usr/local/maven/bin/mvn
    ”。
  • 相关阅读:
    JS设计模式(11)中介者模式
    PHP实现微信模板消息发送给指定用户
    PHP浮点精度问题
    PHP微信红包生成算法的程序源码(用抛物线的模型实现)
    PHP队列的实现详细操作步骤
    PHP数组函数实现栈与队列的方法介绍(代码示例)
    Laravel 事务中使用悲观锁
    array_reduce — 用回调函数迭代地将数组简化为单一的值
    PHP上传文件和下载
    php导出xls,报错:文件格式和扩展名不匹配。该文件可能已损坏或不安全。除非你相信它的来源,否则不要打开它。
  • 原文地址:https://www.cnblogs.com/qitian1/p/6462890.html
Copyright © 2020-2023  润新知