首页 > 其他分享 >2013年工作中遇到的20个问题:41-60

2013年工作中遇到的20个问题:41-60

时间:2023-04-05 15:11:46浏览次数:47  
标签:aa 20 项目 -- list 41 60 return null


41.API的稳定性

public static List<Integer> getStatusCode(String role);
被多个方法调用。

其中一个方法是 xxxFunction(){
getStatusCode(“role”);

现在需要给getStatusCode增加一个参数,aa;
参数的值aa从session中取得,
aa= ActionContextUtils.getFromSession("aa");

现在遇到一个问题,如果给getStatusCode增加一个参数,所有调用getStatusCode的方法都需要获得aa的值,传入参数。

最终方案是:在getStatusCode方法内部,使用静态方法ActionContextUtils.getFromSession("aa")获得aa的值,所有接口都不需要改变。

42.函数单入口单出口的选择。

//单入口单出口
public List getList(boolean flag){
  List list =null;
  try{
     list = ...
  }catch(){
     
  }
  return list;
}//单入口多出口--防止函数if语句嵌套过深
public List getList(User user){
 
  if(user == null){
    return null;
  }
  
  if(user.getName() == null){
    return null;
  }
  
  list = ..;
  
  return list;
}

43. ActionContext.getContext() 为null。
没有经过Struts2的Controller,接口响应直接被FlexController拦截了。

44. null对象可以强制转换为任意对象。
认为此不合理的原因是:经常发生NullPointerException.

String str = (String)null;√
str.charAt(0); ×

 

45.远程调试代码进不去。

代码不一致导致。

 

46.Tomcat下同一个工程启动了2次。
除了ROOT文件夹,还有个 到ROOT的连接。(Linux系统)

 

47.1台电脑不能访问另外一台电脑了。
IP自动分配的,IP到期之后,重新分配了另外一个IP。

 

48.Apache POI导出Excel时报错。
java.lang.AbstractMethodError: org.apache.poi.xssf.usermodel.XSSFRow.setRowS

poi-ooxml-3.7.jar
poi-ooxml-3.8-20120326.jar

2个jar包重复了,使用了第1个包。

 

49.Maven项目发布项目到Tomcat,项目的jar包没有发布到WEB/INF目录下。

 项目属性--Deployment Assembly-Add,添加Java Build Path Entries,
 选择一个合适的。

50.32位与64位的选择。
   JDK,Eclipse要么都使用64位的,要么都使用32位的。
  
   Tomcat可以用32位或64位。

 51. SVN由1.6升级到1.8之后,不能更新和提交了。
 
 项目--右键--Team--Upgrade。
  
 52.主机名和IP映射。
   通过修改hosts文件实现。
   hosts文件的具体位置,C:\Windows\System32\drivers\etc\hosts
   127.0.0.1       fansunion.cn
  
   重新打开浏览器即可,此时访问fansunion.cn仍然是访问本机IP,但此时host就是fansunion.cn了。
  
 53.域名跳转
   项目要修改URL的目录,原来的请求要跳转到新的目录下。

public class UrlForwardFilter implements Filter {
    public void doFilter(ServletRequest req, ServletResponse resp,
            FilterChain filterChain) throws IOException, ServletException {      
        String uri = request.getRequestURL().toString();      
        if (uri.contains('aa')) {
            writer
                    .print("<script type='text/javascript'>window.location.href='aa';</script>");
            return;
        } else if (uri.contains('bb') {
            writer
                    .print("<script type='text/javascript'>window.location.href='bb';</script>");
            return;
        }
        filterChain.doFilter(req, response);
    }
}


 
   为了测试URL路径跳转是否成功,需要修改hosts文件,来模拟产生域名。
 
 54.Eclipse生成JavaDoc文档,防止产生乱码。 在Eclipse里 点击工程右键 Export-->Export-->java--》 JavaDoc,在向导的最后一页的Extra JavaDoc Options 里,
 填上参数即可。比如项目采用的是UTF-8的编码就填:-encoding UTF-8 -charset UTF-8。

 
 55.Eclipse项目的2个常见文件。
   在Eclipse项目的根目录下,通常都有.classpath和.project2个文件。
   这2个文件实际上都是文本文件,可以使用记事本类软件打开,通过阅读配置可以了解更多的信息,
   知道Eclipse项目是怎么组织和运作的。
 

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
 <classpathentry kind="src" path="src"/>
 <classpathentry kind="src" path="test"/>
</classpath><?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
 <name>FansUnion</name>
 <comment></comment>
</projectDescription>

 56.Spring @ResponseBody 返回乱码。 //1个同事和1个网友都遇到了这个问题

@ResponseBody  
public String getForm(String pid) {  
    return "你好";  
}  spring MVC有一系列HttpMessageConverter去处理用@ResponseBody注解的返回值,如返回list则使用MappingJacksonHttpMessageConverter,
返回string,则使用StringHttpMessageConverter,这个convert使用的是字符集是iso-8859-1,而且是final的。1.你自己重写一个StringHttpMessageConverter,使用你想要的字符集,并且使这个属性可注入
(参考javascript:void(0))
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"> 
        <property name="messageConverters">  
            <util:list>  
                <bean class="com.pcds.ecomm.website.syscustomization.ConfigurableStringHttpMessageConverter"> 
                    <constructor-arg value="UTF-8"/>  
                </bean>  
                <bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" /> 
            </util:list>  
        </property>  
    </bean>


2.使用Response.getOutputStream()手动发送字符串。
需要首先设置编码,以防止乱码。

 57.Java邮件发送。
 
 几种实现方式:
 
 1.Spring Mail。
 
 2.ApacheCommonsMail。
 
 3.Jodd Mail。
 
 4.Java Mail。
 
 58.代码仓库。
 把大学和工作写的代码,进行了整理。经常备份,然后上传到网盘备份。还是有点麻烦。
 现在,使用SVNChina的付费服务,99元/1G空间/1年。
 
 59.Maven等工具的优缺点问题。
 工作中使用了Maven,带来了方便。
 好处:自动下载jar包,部署方便。
 坏处:对网络的依赖大,需要学习新工具的使用,不同项目共用同一个Maven本地仓库,
 一旦删除Maven仓库,所有项目都受到影响。
 
 引入新工具解决问题的同时,工具本身也带来了诸多问题,这是一个值得深思的问题。
 
 60.Java开源代码。
 Spring,Struts,Hibernate,OpenJDK,Jodd,Mybatis等很多Java开源项目,都进行了 浏览/研究/学习,
 感觉还是挺有学习和研究价值的。这些项目的代码中有很多注释和文档,便于研究。
 同时,我也发现,这些Java项目有很多思想和方法还是比较类似的。
 学习时间越长,对思想和方法的研究就越来越重要。


 
 

标签:aa,20,项目,--,list,41,60,return,null
From: https://blog.51cto.com/fansunion/6171035

相关文章

  • 2012总结--第8篇--感情篇
    1.亲情家人2012年春上离开家里后,还没有回去过。只是偶尔给家里打个电话。家人倒是希望我早点回去。不知道为什么,我总有种“不成就一番伟业不回家"的感觉。这个儿子白养了”。这话太犀利了。无言以对!沉默!至亲家人没有见到,其他亲人就更不用说了。只是和......
  • 2013的战略规划
    心态:淡定一点,工作-学习-生活更有耐心一点。战略:制定2014到2018的5年详细发展规划,至少制定3套可行方案。思考今后的人生走向,打工-创业-结婚-潇洒。读书:阅读新书30本,复习旧书50本。整理书中精华,吸收并分享。写作:技术相关100篇,非技术100篇。财务:要狠狠地攒一笔。再少,也要比2012年多......
  • 2012总结--第7篇--财务篇
    特别说明:1.Fans比较节省,有少量积蓄,但Fans想说的:Fans辛辛苦苦攒钱既不是为了炫富,也不是用来给你借的!谢谢理解!2.Fans不会轻易向别人借钱。金钱关系应该是双方甚至多方的合作关系。3.世人的烦恼很多都是因为金钱问题没有处理好而导致的。如果你摆平不了金钱,你很可能会被金钱......
  • 2012总结--第6篇--装备篇
    时代在进步,Fans的装备也再不断更新换代。1.天龙八部今年2月份的时候,又玩了下天龙八部-火影fans这个少林门派的号。终于下定决心,充值了300元,换成元宝后,从“元宝商店”买了10几个“3级宝石”。3级红宝石,3级皓石,3级碧玺,3级虎眼。打完宝石,看了下属性值,打了几个怪。和人PK下。尼......
  • 《渗透测试》信息打点-公众号服务&Github监控&供应链&网盘泄漏&证书图标邮箱资产 2023
     #微信公众号-获取&三方服务1、获取微信公众号途径https://weixin.sogou.com/2、微信公众号有无第三方服务 #Github监控-开发&配置&源码目标中开发人员或者托管公司上传的项目存在源码泄漏或配置信息(密码密匙等),人员数据库等敏感信息,找到多个脆弱点。1、人员&域名&邮箱......
  • 2058. 笨拙的手指
    2058.笨拙的手指奶牛贝茜正在学习如何在不同进制之间转换数字。但是她总是犯错误,因为她无法轻易的用两个前蹄握住笔。每当贝茜将数字转换为一个新的进制并写下结果时,她总是将其中的某一位数字写错。例如,如果她将数字14转换为二进制数,那么正确的结果应为1110,但她可能会写下......
  • COMP3411/9814 人工智能
    COMP3411/9814ArtificialIntelligenceTerm1,2023Assignment3–PlanningandMachineLearningDue:Week10-10pmFriday21AprilMarks:10%offinalassessmentforCOMP3411/9814ArtificialIntelligenceQuestion1:Planning(4marks)Modifythesimpleplanner......
  • windows子系统ubuntu2204 wsl2
    前提:windows内核版本支持wsl2(目前是内部版本不能低于19041)查看命令(cmd/powershell):winver1.wsl1不需要内核虚拟化和hyper-v,wsl2需要内核虚拟化支持并启用hyper-v所以可能使用wsl1时,可以创建虚拟机,但是启用wsl2就会报错,提示:未开启bios虚拟化或hyper-v启用wsldism.exe/onlin......
  • 360看图 1.0.0.1010 精简优化版
    修改历史:2023.03.30:自改官方 1.0.0.1010最新正式版本2023.03.20:首个自改官方1.0.0.1002修改内容:基于官方最新版本制作,精简部分非必要文件;禁止软件自动更新;去除所有程序自校验,避免程序报错;其他细节调整下载链接: 自用资源,暂不公开!......
  • 联想拯救者Y9000P 2023版 双系统ubuntu安装nvidia显卡驱动、cuda及cudnn简明教程
    前言对于从事机器学习、深度学习、图像处理、自然语言处理等科研与工作的小伙伴们,ubuntu系统是一个不错的选择,本人前几天入手拯救者y9000p2023版本,配置为:RTX406016G13代i913900HX,由于我从事智能驾驶工作,电脑到之后就安装了ubuntu双系统,本篇文章将为大家介绍一下ubuntu安装nvi......