首页 > 其他分享 >2014年工作中遇到的20个问题:141-160

2014年工作中遇到的20个问题:141-160

时间:2023-08-04 15:36:46浏览次数:48  
标签:category 20 name 141 toggle editor key 2014 id


141.日期转换。

//输入的时间为毫秒的准确时间
  //firstTime:1417139867916,lastTime:1419731867916
  public static int getDayBetweenTwoDate(long firstTime, long lastTime){
      //当天的0点:1417104000000



  }

  问题原因:firstCalendaStartTime - lastCalendaStartTime 是比较大的负数,强制转换成int,变成了正数。

  应该是溢出或者long强制转换成int导致的。

  

  

  不改变代码结构,只调整优先级,先执行 除法,再执行 强制转换:

public static int getDayBetweenTwoDate(long firstTime, long lastTime){




  }

  

  这段代码还有个“有歧义”的地方,通常betweenTwoDate应该返回正数,表明后面的比前面的大几天。

  但,咱们的代码想实现的是,前面的时间是否比后面的时间大,如果小于,就表明过期了。

  

  

public static void main(String[] args) {






  }

  

142.分类循环,都加上“编辑”事件。


可行方法1:只有1个地方使用el表达式,使用ready方法,页面加载完成,再渲染

<#list categoryRows as category>
<!-- 循环过程中,js的变量相加‘"#cms_editor"+categoryId’不会生效,所有地方都直接使用${category.id}-->
<script type="text/javascript">
$(document).ready(
function(){

$("#cms_editor"+id).bind("click",function(){
$("#editor_name"+id).toggle();
$("#category_name"+id).toggle();
});
});
</script>
</#list>

可行方法2:每个地方都直接使用el表达式

<#list categoryRows as category>
<script type="text/javascript">
$("#cms_editor${category.id}").bind("click",function(){
$("#editor_name${category.id}").toggle();
$("#category_name${category.id}").toggle();
});
</script>
</#list>

不可行方法3:只有最后1个分类,绑定了事件

<#list categoryRows as category>

<script type="text/javascript">

$("#cms_editor"+id).bind("click",function(){
$("#editor_name"+id).toggle();
$("#category_name"+id).toggle();
});
</script>
</#list>


注意事项:

先执行For循环,Freemarker模版渲染完成之后,返回前端Html,才可能执行js调用。

循环过程中,js的变量相加‘"#cms_editor"+categoryId’不会立即生效。



143. SpringMVC配置了异常处理器,通过实现HandlerExceptionResolver接口。


//解决异常
public ModelAndView resolveException(HttpServletRequest request,
HttpServletResponse response, Object handler, Exception ex) {
logger.error("error:", ex);
ModelAndView view = new ModelAndView(exceptionPage);
view.addObject("err", ex);
//ex.printStackTrace();
return view;
}


没有在控制台打印异常,错在哪都不知道,略显坑爹啊~



144.Tomcat中配置了404页面。

<error-page>
    <error-code>500</error-code>
    <location>/error/500.html</location>
  </error-page>
  <error-page>
    <error-code>404</error-code>
    <location>/error/404.html</location>
  </error-page>

 访问一个不存在的页面,结果总是提示/error/404.html找不到。

 加上SpringMVC配置<mvc:default-servlet-handler/>,就好了。


145.修改SiteMesh的Decorator.xml配置文件,需要重启应用服务器。



146.URL区分大小写。

  http://localhost:8080/jsgame/flappypig/flappyPig.html

  URL中的字母区分大小写,最好统一成小写。


147.Javascript严格模式。

var flappy = (function (self) {
    'use strict';
});

设立"严格模式"的目的,主要有以下几个:

  - 消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;

  - 消除代码运行的一些不安全之处,保证代码运行的安全;

  - 提高编译器效率,增加运行速度;

  - 为未来新版本的Javascript做好铺垫。

参考资料:http://www.ruanyifeng.com/blog/2013/01/javascript_strict_mode.html


148.数据库表的字段不能是关键字,比如“key”。

CREATE TABLE `briefcms_setting` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `key` varchar(255) DEFAULT NULL COMMENT 'key是关键字',
  `value` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8;

数据库的字段名称key,在写update语句的时候,会报错。

update briefcms_setting set value='' where key ='';


把key改为name就可以了,太坑了。


149.Web服务器响应静态请求。

线上配置Nginx代理。


本地开发配置Tomcat

<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/static/*</url-pattern>
</servlet-mapping>


SpringMVC的也加上,<mvc:default-servlet-handler/>



150.SpringMVC的Controller与Struts2的Action,单例Singleton与多例Prototype。

Struts接收参数,是在Action类定义一个字段,比如Person,接收参数,是类作用域的变量。如果是单例,会共享。

所以,必须配置@Prototype

SpringMVC接收参数,是在Controller的某个方法定义一个参数,比如Person,接收参数,是局部变量。


151.Mybatis的in查询。

方法一:参数list是个集合

<select id="batchList" resultType="java.util.Map">
select * from p2p_loan_info where lid in
<foreach item="item" index="index" collection="list" open="(" separator="," close=")">  
     #{item.lid}  
 </foreach>  
</select>

方法二:参数idList是"a,b,c"这种格式

@Select("select count(*) from p2p_post where category_id in (#{idList}) and status= 0")
Integer getCountIn(String idList);

不可行的方法: category_id in #{idList},category_id in ${idList},idList是"(a,b,c)"。

#{}提示'' 字符串不对

${}提示,找不到变量的getter方法


152.dao和mapper在同一个目录不需要???

<mapper class="com.p2p.user.dal.dao.IdCardDao"/>
<mapper resource="mybatis/IdCardInfoMapper.xml"/>

不需要在mybatis-config.xml引入,只配置Dao根据接口Mapper扫描就可以了。


153. Java和Freemarker对“%”和“-”的支持不好。

Freemarker显示变量,不支持“-”和“%”,params.like-lid或者params.%lid不可以,貌似对"%"和“-”不能正常识别。

<input type="text" class="i-inp" id="search_lid" name="params[like_lid]" 
<#if page.params.like_lid> value="${page.params.like_lid}" </#if> />

Java的变量定义,不能以“-”结尾,比如“like-”不行。

//可行

   String flagLike = "like_";


154.对第123个问题的修正。


   第123.Git Push错误“Error writing request body to server”,解决方法可能会有问题。

   

   我是在“User Setting”中增加的配置,而不是在“System Setting”里。

   System Setting是不可写的,提示配置文件“Unknown”。

   

   Boss也遇到了这个问题,他想通过设置“System Setting”,但是总是被拒绝,报NTFile相关的权限异常。

   在“User Setting”里设置,就Ok了。


155.Eclipse日志文件存放在何处 。

  工程目录,比如J:\JavaWeb\fansunion\.metadata\.log


156.  日期比较between and不够灵活。

where time between ${startDate} and ${endDate}

输入的可能只有startDate或endDate.


<if test="startDate != null">
       and time >= startDate 
     </if>
     
     <if test="endDate != null">
        and time >= endDate
     </if>


157. Mybatis解决“大于等于号”的问题。

 &gt; 大于

 或者使用 CDATA

<![CDATA[ when min(starttime)<='12:00' and max(endtime)<='12:00' ]]>   

 

158.遇到2个很像的单词,意思也类似。

totle:信息总数;资讯总数;整个;周遍

total:总计的(金额等); 全部的; 完全的; 绝对的

n.总计,总数; 全体数量


159.网上有HTML在线编辑器格式化功能,会把FTL的表达式,弄坏。

<#list list as item>

</#list>


格式化为

&lt;&gt;


160.Commons-Collections的MapUtils工具方法还是不错的。

本来想自己去写个的,结果输入MapUtils.get有自动提示,发现有现成的,又可以偷懒了。


 Integer org.apache.commons.collections.MapUtils.getInteger(Map map, Object key)

 Gets a Integer from a Map in a null-safe manner. 

标签:category,20,name,141,toggle,editor,key,2014,id
From: https://blog.51cto.com/fansunion/6963204

相关文章

  • ActiveMQ任意文件写入漏洞(CVE-2016-3088)
    ActiveMQ任意文件写入漏洞(CVE-2016-3088)【现实项目遇到过】1.环境搭建cdvulhub-master/activemq/CVE-2016-3088docker-composeup-ddocker-composeconfig#查看靶场环境相关的配置信息docker-composedown#关闭靶场环境环境监听61616端口和8161端口,其中8......
  • Minitab 2021 - 统计分析管理软件
    Minitab2021是一款功能强大的统计分析管理软件,广泛应用于质量管理、数据分析、实验设计和质量改进等领域。点击获取Minitab2021 数据导入和管理:Minitab2021提供了灵活的数据导入和管理功能,可以导入各种常见格式的数据文件,如文本文件、Excel表格、数据库等。用户可以......
  • 喜讯!箱讯AnyCase荣获“2023年度苏州市服务型制造示范平台”
    近日,苏州市工业和信息化局公示了“2023年度苏州市服务型制造示范企业(平台)”名单。箱讯科技(上海)有限公司子公司苏州箱讯供应链管理有限公司荣耀上榜。添加图片注释,不超过140字(可选)添加图片注释,不超过140字(可选)添加图片注释,不超过140字(可选)添加图片注释,不超过140字(可选)此次评......
  • AndroidStudio2021.3logcat工具无法显示日志解决办法
    AndroidStudio2021.3logcat工具无法显示日志解决办法 https://blog.csdn.net/weixin_43623271/article/details/127876964  1.File->setting2.搜索logcat,->ExperimentalunChkEnablenewLogcattoolwindow以后提示时Dismissit ......
  • 在行:真想见,不如付点钱 Late2021
    2020更新:666的聊天已下线,1666的还在......
  • 【专题】2023中国消费者洞察报告PDF合集分享(附原数据表)
    全文链接:https://tecdat.cn/?p=33375原文出处:拓端数据部落公众号在疫情后的时代,中国的消费市场正在逐步复苏。政策和社会共同努力,全面提振消费者的信心。与此同时,供给侧正在采用新的内容营销模式,品牌、电商直播和信息平台注重科普专业知识,将品质和创新作为核心竞争力。居民消费......
  • Day19(2023.07.31)
    行程8:45    到达上海市信息安全测评认证中心(黄浦区陆家浜路1308号)9:00  存档文件11:30--13:00   吃饭休息13:00  存档文件&Windows实践17:00      下班......
  • 7DGroup 性能/测试开发/运维 系列文章更新(2021/8)
    组织织简介1、7DGroup简介性能能闲谈1、浅谈window桌面GUI技术及图像渲染性能测试实践2、杂谈:性能测试的范围到底有多大?3、戏说CPU使用率-驳《CPU使用率度量指标是扯淡!》译文标题4、对性能测试评估分析优化市场的反思5、泛谈系统级跟踪和应用级跟踪6、性能测试分析优化该有的范围7......
  • 7DGroup 性能/测试开发/运维 系列文章更新(2021/10)
    组织织简介1、7DGroup简介2、【付费征文】7DGroup长期征集原创文章性能能闲谈1、浅谈window桌面GUI技术及图像渲染性能测试实践2、杂谈:性能测试的范围到底有多大?3、戏说CPU使用率-驳《CPU使用率度量指标是扯淡!》译文标题4、对性能测试评估分析优化市场的反思5、泛谈系统级跟踪和应......
  • 7DGroup性能&测试开发文章持续更新(2019/11/20)
    性能闲谈系列:浅谈window桌面GUI技术及图像渲染性能测试实践杂谈:性能测试的范围到底有多大?戏说CPU使用率-驳《CPU使用率度量指标是扯淡!》译文标题对性能测试评估分析优化市场的反思泛谈系统级跟踪和应用级跟踪性能测试分析优化该有的范围期待996ICU的条款尽早加入到开源协议中!性能分......