(一)java程序跟踪C程序
用C写成了ODBC driver,实现JDBC的时候为了再次利用ODBCDriver,接在JDBC接口下面写了一层Wraper代码。现在为了调试BUG,需要首先作成Java的测试用例,得益于Wraper和ODBC driver里都有snap语句,可以得到调用ODBC 底层函数的SNAP文件,据此写出C的测试用例,设置断点,引用c的dll,单步跟踪。
但是C作成测试用例比较麻烦,而且需要设置很多ODBC层函数的参数,容易出错,现在有一种方法直接从JAVA跟进C工程:
a.打开dll工程的property-Configuration Properties-Debugging
b.设置Command为Java。exe的路径
c.设置Command Arguments为:-cp "bin;%classpath%" CLI.TestSQLCancel
其中 bin是指java工程的bin目录,%classpath%则指调用系统默认路径,后面的 CLI TestSQLCancel分别是相对路径下的目录和java文件,即java测试程序
d.设置woking Directory指java工程目录
(二)内码问题
使用多种语言的时候,最重要的莫过于对内码的设置
Symfoware服务器端默认为shift-jis,而客户端很多OS都是设置成了UTF-8
中日韩文字所占用的UTF8段就不说了,需要明确大多数时候是3Byte
所以从客户端想服务器端发送数据的时候需要考虑内码转换
今天测试一个txt文件,一直不能成功
后来Leader过来看了一下,txt比实际大小多了两个字节
又创建了相同内容的文件,就解决问题了
最后猜测可能是使用各种编辑器对文件做了转码处理,会在原有的字符串前面加入内码标示符,以后需要注意
相关文章
- go-zero学习及使用中遇到的问题
- Java 学习笔记15:关于web开发中,全局变量的一点想法
- 加密,各种加密,耙梳加密算法(Encryption)种类以及开发场景中的运用(Python3.10)
- TFTP下载程序到开发板遇到的问题及解决方案
- 程序中遇到的问题(2)
- 基于Eclipse搭建的STM32环境下的J-Flash烧写【hex/bin】文件到STM32xx开发板中的设置方法与步骤
- Spring事务(Transaction)管理高级篇一栈式解决开发中遇到的事务问题
- 我的Java开发学习之旅------>工具类:Java使用正则表达式分离出字符串中的中文和英文
- 关于微信小程序开发中遇到的缺少game.json问题的解决
- iOS---近来开发中的一些收获