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

来源:互联网 发布:2016美国大选结果数据 编辑:程序博客网 时间:2024/05/04 12:34
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文件了!
  
参考:http://fruithardcandy.iteye.com/blog/1941452

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是可以变的参数。
参考资料:http://blog.csdn.net/huaye2007/article/details/8028859

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

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

参考:http://blog.csdn.net/u012345283/article/details/39718245?utm_source=tuicool

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服务,不用国外的。
官方地址:http://maven.oschina.net/home.html
帮助文档:http://maven.oschina.net/help.html

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

Boss最初找不到这个文件,mvn是他安装的,但是已经很久了。
我尝试了2种办法来查找这个mvn的安装目录:
find / -name maven,查找结果太多,有的目录没有权限。
whick mvn,直接定位到mvn的安装目录,比如我们的是
[whptp@web100 2.3]$ which mvn
/usr/local/maven/bin/mvn
”。
0 0
原创粉丝点击