个人贡献
- 收集、学习相关资料
- 下载安装OpenSSL,实现证书颁发和格式转换
- 根据计划进行程序设计、优化
- 对底层代码进行单元测试
设计中遇到的问题及解决方法
- 起初写Java代码时,虽然借助了BouncyCastle这个第三方库,但是写出来的代码仍然更像是面向过程的代码,经过组长的建议,在后期优化时我们将类、方法重新进行了整理。
- 后台的测试虽然能够解决边界问题,但是将信息传入后台后再做检测判断,就比较蠢,我们选择了前台通过JavaScript检测以后再提交表单。
调试过程中遇到的主要问题,并说明解决方法
- 问题1:导入BouncyCastle的jar包后,程序仍然报错。
- 解决:经查阅资料发现导错了jar包,BouncyCastle提供了两个jar包
bcprov-jdk15to18-165.jar
和bcprov-ext-jdk15to18-165.jar
,应该导入第一个,注意区别。
- 问题2:不会写测试代码
- 解决:广泛学习网上的博客,学习Junit中抛出的异常类型检测、检测exit退出等,学习了assert的用法。
- 问题3:Eclipse上开发的web项目如何导入IDEA中
- 解决:参考博客,细节很多,导入jar包、配置Tomcat时都要注意。
设计体会与收获
- 关于程序设计,我们在一开始就明确了程序设计的思路,基于BouncyCastle的证书格式转化就是利于BouncyCastle这个第三方库的类和方法实现证书读取和写入,这对我们后期完善代码有很大的帮助。
- 关于单元测试,遇到的第一个问题是:有try,有catch是否还有必要进行单元测试?这个问题我其实困惑了蛮久,但当尝试搜索如何用Junit测试异常时,突然意识到,catch到的是预料到的异常情况,实际情况则不尽然。第二个问题是:参数、返回值特别复杂的情况,又如何单元测试这个问题,我最初的想法是判断是否返回为空,当然这肯定测试的不够合理。后来查阅资料时看到返回值比较复杂时Junit4中的断言可以检测部分关键字。
- 最后来点小反思。Java语言好用吗?好用!那为啥对其掌握不够?用的少了!那就多用用,捡起来吧!
码云链接
参考资料
END
posted @
2020-05-04 20:24
September_starlet
阅读(
163)
评论()
编辑
收藏
举报