开发中遇到的常见问题总结1

  • jdbc连接数据库的时候,需要使用数据库的sid_name,而不是数据库的services_name.而使用plsql连接数据库的时候,只需要数据库的services_name即可,所以修改连接字符串中的services_name 为sid_name.查询sid_name的方法
 select INSTANCE_NAME from v$instance;
  • 后端在将数据json化的过程不要对空的数据使用空字符串

除String类型外,如果将空数据使用空字符串表示,则无法将json数据反json化为对象。

  • 字符串的replace,substring 等操作一定要先判空处理,否则会报异常
  • 使用git进行代码管理的时候,长时间不拉代码,commit的时候有的代码不是自己修改的,需要revert一下,只commit自己修改过的代码,然后pull代码再push
  • 调用外部接口一定要做好参数校验和返回结果校验
  • 有时候,返回的JSON字符串中含有我们并不需要的字段,那么当对应的实体类中不含有该字段时,会抛出一个异常,告诉你有些字段没有在实体类中找到。

解决办法很简单,在声明ObjectMapper之后,加上上述代码:

ObjectMapper objectMapper = new ObjectMapper();
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
  • 针对IE8、IE9兼容问题

由于ocx控件的版本是32位的,而win64位系统IE8与IE9浏览器都有两个版本,一个是32位浏览器,一个是64位浏览器,32位浏览器可以正常加载ocx。而64位的浏览器,却无法正常加载ocx。所以,win64位系统在使用IE8和IE9的时候需要选择32位的浏览器。不需要重新安装IE版本,只需要选择正确即可。
 解决办法:打开计算机—>进入C:\Program Files (x86)\Internet Explorer—>选择iexplore.exe右键发送到桌面快捷方式。

  • IE10及以上浏览器的兼容问题

不管64位的浏览器还是32位的浏览器,都可以正常支持32位的OCX,因为64位浏览器一个窗口在进程中,也是两个进程,不过一个进程64位,另一个进程却是32位的,所以可以支持32位的OCX。

  • word模板使用到了jacob库,有一个异常
org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet CommonServlet threw exception
java.lang.NoSuchMethodError: com.jacob.com.Dispatch.call(Lcom/jacob/com/Dispatch;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/jacob/com/Variant;

问题分析:原来已经有一个版本的jacob(Java2Word封装),后来又装了个新的,所以导致了冲突;
解决办法:在特定目录下删除jacob.jar。(可能有好几处需要删除)

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值