1、oracle用户登录问题
linux虚拟机上装了oracle12c,oracle下建了个用户,查看状态已正常,但是toad就是连接不了。
toad 一直报ORA-01017: invalid username/password; logon denied 监听之类也都启好了,session权限也赋过了。
直接使用sqlplus/nolog ,然后connect也是可以登录的,此时你会觉得你的密码肯定是正确的。
但其实最后发现真的是因为密码不正确的原因。
其实你觉得密码正确了是假象,因为你既然能登录系统管理员,数据库就默认你又更高的数据库权限,是不会校验你的密码的,这种情况在linux版本下的数据库是有的,且oracle对大小写敏感,所以你在toad一直输入的密码可能不是你当初设置的密码,此时你只需要登录系统管理员,nolog后,把密码改一下即可。
2、jsonobject tobean转换时日期格式问题
传过来两个对象,第一个日期格式是yyyy-MM-dd,第二个是yyyy-MM-dd HH:mm:ss,按照如下方式转换:
String[] dateFormats = new String[] {"yyyy-MM-dd","yyyy-MM-dd HH:mm:ss"};
JSONUtils.getMorpherRegistry().registerMorpher(new DateMorpher(dateFormats));
转换后,第二个对象的时分秒均被转换成0了,将dateFormats按照如下方式定义则正常。
String[] dateFormats = new String[] {"yyyy-MM-dd HH:mm:ss","yyyy-MM-dd"};
昨晚修改好了之后,早上来测试又变成0了,尴尬,只得把第一个对象的日期格式也改成yyyy-MM-dd HH:mm:ss的格式
3、最近一直在调试蓝牙打印,买的hp的蓝牙打印机,打印机开启之后15分钟之类不操作就会自动关闭,要说对测试有啥影响呢,其实并没有。
然后某一天心血来潮,取消了他的自动关闭功能,然后测试便彻底有了阻碍。可以搜索到打印机,凡是点打印就是没反应,关机也关不掉,强拔电源之后开机,还是同样的毛病,研究了半天发现,尽然进入了睡眠模式,睡眠模式无法关机,(⊙﹏⊙)b。
好了,知道原因,说是开启打印任务就能唤醒,然后我有时候能唤醒,有时候唤不醒,取消了睡眠模式之后有时候打印机还是会进入睡眠,总而言之就是从那时候开始,打印机就真的是看我不爽,开始不定期毫无预兆的罢工。
总结就是自动关机总比装睡唤不醒的好。
4、ftp上传文件
原来如此简单啊,只要在“我的电脑”地址栏输入ftp地址,输入用户名密码后把想要的文件拖进去即可
5、java.lang.RuntimeException: Stub! JSonobject
调用第三方接口获取到的一串字符串,对此做java转换时,一直报上面的错。花了快半天的时间,一直无法理解到底错在哪里。
最后的最后才发现我因为偷懒写了个小程序在做单元测试,junit也是有规则的,也要按照规定的格式,才疏学浅啊
6、谷歌浏览器突然打不开网页
右键点击,选择属性,
修改快捷方式中的目标,在最后空格输入-no-sandbox
修改兼容性中的兼容模式为“以兼容模式运行这个程序”
打开浏览器的中的帮助-关于谷歌,选择设置,点开高级设置,点击重置设置按钮。
此时在将之前的-no-sandbox删除即可。
--------------------华丽丽的分割线------------------------------
事实证明,上述方法对我来说根本不起作用,下了班隔天开机后依然没有,不得不卸载重装。
结果第三天开机后依然没用,然后再卸载已经装不下上了,无奈在注册表里手动删除了所有跟google有关的注册表文件,然后重装后至今正常。
7、作为一个程序员,请一定要注意代码规范
之前一直用谷歌,或是ie高版本测试,程序一切正常,结果客户用的是ie8,几乎所有页面全是object error
检查了很久才发现是因为逗号和分号的原因。
逗号分号的问题解决了,页面已能正常显示,只有一个页面上有问题,就是调用百度地图的时候一直报BMap未定义。
查了很多方案,最后因为一句话“主机与地图调用地址之间的网络不通”,真是一语惊醒梦中人,测试用的那台电脑因为增加了安全限制,要访问的网址均需加入到可信任站点才能访问,果然,将地图调用地址加入信任站点后问题解决。
8、ubuntu server 14.04安装
装了三遍才算装好,因为一个网络连接的问题折腾了将近一天的时间。
9、mybatis调用了一个存储搓成查询结果为0
查询语句单独跑没有问题,但是调用程序是查询不到数据,debug调试发现抛出了异常,从server层开始调用时一直都传递了一个参数,但最后实际编写存储过程是并未用到那个参数,sql的xml配置文件中加了那个参数,将其去掉即可。
10 The import XXX conflicts with a type defined in the same file
英文不好真是要命啊,原来只是因为定义的类名和引入的包同名冲突了。
11 真的不要随随便便复制粘贴
因为复制粘贴的原因,导致花了三个小时才发现错误在哪里。
查询的库表字段中,部分字段存储的内容是json格式的字符串,一直以为是转换时不能把这直接当成字符串,结果却是因为ibatis的xml文件中查询结果map根本没有对应到正确的实体。当时就是直接复制粘贴了过来,也忘了改了。
还有同事的一个存储过程,查询条件中的nvarchar的大小没跟库表字段对应,一直查询不到结果,还以为是字符串中包含括号的元原因,最后才发现明明就是长度不够,字符串被截断了。
这些异常也都捕捉不到,检查起来真是特别浪费时间。
12 cannot find module ‘XXX’
linux部署后启动报的错,注意区别大小写
13 tcp6占用80端口
cat /proc/sys/net/ipv6/conf/all/disable_ipv6
显示0表示ipv6开启,1表示已经关闭
关闭的方法:
在/etc/sysctl.conf文件中增加
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
14 setContentView(View view) 和setContentView(int layoutResID)的区别
就因为这个花了6个小时才找出原因
仿微信做的一个图片上传模块,用的girdview,布局动态加载时girdview怎么都显示不出来。竟然就是因为我没有在oncreate方法中获取girdview,动态加载时只能用setContentView(View view)
大概写的只有我自己看能看懂吧,哈哈
15.再一次被复制粘贴坑了
想着recycleview的自由度比listview高好多,项目里有个复杂列表用的recyclerview
因为每个item里面有很多button以及需要编辑的edittext,button的click的方法怎么都不行,真的是想尽了各种办法,才发现是因为又被重写了一遍,2.16.7.7晚上搞到12点多换了种稍微复杂的方式终于弄出来了,当然是因为上面的一段代码被我屏蔽了,早上起来又把复杂的方式简单化了一下,发现跟之前写的是一样的,但是为什么之前怎么都不行呢,查了半天才发现,真是被自己折磨疯了。
16 instanceof函数 json字符串是否为空的判断
17 linux下tomcat部署项目,部署成功后,启动也不报错,但是页面访问报404。
检查发现是因为路径不对,可是本地测试一直用的那的路径,为什么部署后就不行了呢,原来是因为打的war包的名字与配置文件中配置的display-name不一致导致的,tomcat默认以发布的包为根目录名称了。
18 下午重启了下服务器,然后再启动tomcat的时候一直报错卡在了Deploying web application directory /XXXX/manager
需要修改jdk1.x.x_xx/jre/lib/security/Java.security文件,在文件中找到securerandom.source这个设置项,将其改为:
securerandom.source=file:/dev/./urandom
19 使用nginx upstrean反向代理时一直无法访问,域名后必须加端口后才能访问,花了近4个小时也没能找到错误,无奈linux的基本功不扎实,只能求助。
小伙伴在服务器wget一下发现是能访问的,然后就突然想到是不是防火墙封了端口,查看一下果然是啊。
20170910 又在捣腾nginx,想做一个负载均衡的配置,结果nginx怎么都起不来,按照sudo nginx -t查找后已经修正的错误,但启动还是报错,原来是因为我启动的时候没用sudo导致的。不过启动前最好还是reload一下,sudo nginx -s reload
20 微信支付回调失败,只要支付时使用了微信红包的订单必定回调失败,经检查才发现是由于没有好好看微信官方文档,且没有作为程序员该有的敏感和常识