Java项目开发笔记与开发过程中的问题总结

开发 后端
最近要在一个项目中使用Java, 本来是用.NET开发的, 可是验收时用户要求用Java平台,只好进行移植工作了. 一直使用的是.NET开发, Java项目开发只是关注, 没有深入研究, 等实际应用时才发现自己水平有限, 问题一堆,特记下这些笔记。

Java项目开发中关于使用Java平台的问题:

1. 开发工具太多, 什么Eclipse, Jbuilder等,各有不同, 让人熟悉就花时间了, 本为以为对JB比较熟悉,又有2006版本了, 就用它吧, 可是才两天, 就发现自己的代码文件中的中文变为乱码了, 当然网上有一堆解决方案, 只是心里不爽, 直接不用了, 改为eclipse了, 操作界面不是很熟悉, 与VS.NET IDE还是有不少区别, 只是用多了自然就熟悉了,
又从网上当了一堆插件, 什么tomcat, xml编辑器, 没有用myeclipse, 虽然支持JSP,以前用过一下, 也不太好用, 其它的就没找到什么好东西了, 时间也不允许, 至少现在可以调度Java代码了, JSP的调试再说吧.

2. 开始整的时候,发现自己在WEB开发方面熟悉的是VS的ASPX事件模型, 反而不知道如何处理JSP了, 只好使用以前ASP的模式, 使用form提交, 感觉真是太落伍了, 虽然现在有许多AJAX之类的东西, 也支持客户端事件模型, 实在没时间研究这些东西了. 先做出来再说.
数据库连接类使用了以前jive中的几个类, 支持在xml中配置连接等, 再自己写了一个类, 从XML中读取SQL语句, 差不多能用.

3.在网上搜索了一把,未找到在eclipse中对web service支持比较好的plugin,发现版本都比较低,似乎久未更新了,JB下到是有不错的设计和编译界面,只是JB其它太烂。

Java项目开发中的字符集问题:

使用Java首先就要碰上一个中文字符的显示和处理问题, 这些问题总是很烦, 要对request进行编码才能解决.
既然使用非MS平台, 数据库可能就不会用到mssql server了, 使用mysql, 发现要移植以前的数据还是比较容易, 但mysql的驱动实在不好弄, 刚开始使用纯JDBC的驱动, 结果发现在中文字符的处理上始终有问题, 只好
网上查原因, 发现jdbc驱动的版本太低, 在判断中文字符上有问题, 升级驱动程序, 可以插入和显示了, 但SQL中是中文, 可是进了数据库就是乱码, 试了N遍也不行, 只好改为jdbc-odbc.
但接下来在执行batch sql时又报错了, 说mysql odbc driver 的SQL语法错, 检查了半天, SQL也能在mysql中执行的, 就是不能通过Java提交执行. 用的是mysql 5.0.X, 支持unicode 的编码建表. 最后只能采用一个折衷的办法,自己写一个批量执行SQL的类,采用“;”分隔多个SQL,在调用时仍然一行一行的执行,郁闷。

最终的字符集解决办法:

页面上要设置字符集的输出格式,如GBK或GB2312,另外,如果使用统一的包含文件定义输出字符集,还是不行,必须在每个页面中单独定义,也可能是我的INCLUDE方式不对;
数据库连接字符串中也要设置编码;

在传递数据到DB的SQL还要对中文进行编码;
String key = new String(request.getParameter("txtKey").getBytes("ISO8859_1"));

最后还有一个问题是,如果TOMCAT编译JSP文件生成的Java文件有乱码,那么在访问的时候页面上总是要报错,什么"delete tokens"之类的,此时要删除掉tomcat\work目录下的中间编译代码才行;

控件及常用库

WEB控件, 网上有一堆各种各样的lib和控件, 但这些东西太浪费时间, 光是上网找就比较花时间了, 下回来试用也有各种各样的问题,

每个控件有自己的特色, 而且每个总是满足了这个,满足不了那个需求, 要都满足, 还是要收费的才行, 毕竟天下没有多少免费的午餐;

主要有几个:

1。数据显示表格控件,应该能支持排序,有缓存机制,能分页,能设置格式,支持ResultSet或ArrayList之类的,还要有导出excel等功能;最好要能简单使用。

2。图表控件,最有名的当然是cewolf/jfreechart,只是要使用它自己定义的DatasetProducer,不能直接使用ResultSet,也是个麻烦事,不过的确是很不错的控件了。

Java项目开发小结

1。经过这次移植,发现Java项目开发还是有许多很牛的地方,采用hashmap来缓存数据,效率的确很不错,只是用得太多,缺乏管理机制,有点混乱了,下一阶段再重构一下,形成一个管理框架最好;

2。eclipse开发的确很不错,与vs ide差别是比较大,只是使用习惯了之后发现其功能强大,而且可以找些plugin来扩展功能,估计我只是看到了点皮毛而已。

3。在Java下开发,使用Javascript太多,还没找到更好解决办法,水平有限;

4。与另一个人一起开发,大家的编程风格和代码不够规范,使用了一些重复的类和方法,这在后期维护是个工作,时间太紧,项目总是这样,就没得多少提高了;

个人水平实在有限,上面只是一面之词,Java项目开发月底才结束,有什么变更再补充。

【编辑推荐】

  1. 基于 JavaScript的REST客户端框架
  2. 如何优 化JavaScript脚本的性能
  3. JavaScript控制Excel打印完美解决方案
  4. 用 Javascript连接Access数据库的方法
  5. 浅谈 JavaScript中面向对象技术的模拟
责任编辑:张燕妮 来源: LUPA开源社区
相关推荐

2010-03-04 09:54:24

Android开发

2009-06-17 16:10:37

Java网站优势

2015-09-10 09:55:36

移动web开发问题

2010-07-05 12:09:10

RationalJazz需求管理

2009-11-23 20:39:21

ibmdw敏捷开发

2011-07-06 16:00:28

ASP

2011-04-14 15:35:53

嵌入式系统嵌入式

2015-09-25 10:02:52

BlocksDelegates开发

2012-06-25 10:13:00

Java.NET

2011-01-26 09:40:42

.NET开发

2009-06-10 15:36:25

ubuntu netb开发过程

2016-12-30 11:10:32

Hadoop开发JVM

2015-07-09 10:36:40

iOS

2010-04-06 17:26:26

Windows Pho

2010-08-10 15:09:55

Flex开发

2011-01-04 10:05:45

敏捷开发

2010-07-15 14:47:05

Perl开发

2022-07-31 19:59:42

文档管理工具互联网

2010-07-06 14:35:22

RationalJazz

2020-10-23 10:31:59

开发开源工具开源
点赞
收藏

51CTO技术栈公众号