日期:2014-05-20  浏览次数:21019 次

这种写法是否会引起什么问题?
各位高手,
小弟在写一个分检数据系统,每天大概有2500条记录记录到系统中,20个用户左右并行使用.使用JSP+SQL2K(SP4)结构.
在我的程序里,我没有用连接池,而是直接调用的Connection对象的Open,Close和方法.TOMCAT与SQL2K安装在同一台SERVER上.

硬件: HPDL380 服务器(2G)硬盘 + 80G(RAID1)+ 1000M网卡

不知道这样会否有什么不良的影响,有什么好的需要修改的地方?
因为系统还没有上线,单用户使用没有问题,不知道如何测试多用户并发时的性能.

小弟的项目不可以有任何失误啊...否则就有可能失业的啦....高手们指点一下吧...谢谢啦

------解决方案--------------------

------解决方案--------------------
数据量不大
不过还是的确认你close完了吗? 可能你很确定close的很彻底,但通常都不是
系统连续运行一段时间 这些问题才回出来
------解决方案--------------------
2500条的数据和20个用户其实不算大。
一定要使用数据缓存,数据访问速度会很快,尽量一次不提取全部数据,按页提取。
速度上应该不会有什么大问题. 
建议你不要直接使用jdbc,程序维护量太大,最好使用hibernate,ibate,ejb3是最好的选择,使用POJO能直接生成数据表.
Tomcat配置不算麻烦,对一个java程序员来说算不了什么。

祝你成功。
------解决方案--------------------
如果可以点开 Tomcat 管理控制台的话可以在图形界面下配置,如果没有只能手工在 server.xml 中
的 Context 里配置,并不是很复杂。在 web.xml 中引用一下资源,在代码中使用 JNDI 获得连接。

------解决方案--------------------
数据量很小
------解决方案--------------------
不会……
------解决方案--------------------
或者这样吧,因为我担心的是DB这一块会出问题...
我建立了一个比较大的DB类,用来控制整个程序的DB操作,包括写入,读取,更新,每个function我都会有相应的 open 和 close 方法.大致的写法为如下 :

class DBM {
function A {
connection con = xxx.open();
try {
....
..
con.close();
}
catch(Exception e)
{
// ? 这里是否需要作什么处理让 connection close ??? 请指教
}
}

function B {
....
}
}

其实这种写法会否引起什么比较大的问题?如果是对于性能上的问题,我能否增加什么硬件设备可以解决到?
我知道三层结构非常好,不过开发周期会明显加长....

请高手指教....
------解决方案--------------------
没有哪个人站出来,回答一下的,替你郁闷,我也在困扰这个问题,tomcat赔了好久都没成功,期待 高手的详细回答
------解决方案--------------------
自定义主键就是了
Java code

public class IdGenerator extends TableGenera{
//这里写一下你的主键生成策略
//按你的这个要求写很简单的,获得日期->转换成字符串,最后添加4位数字递增
//每个主键生成都先检测一下已有的主键值,最后四位递增就可以了
}

------解决方案--------------------
还是应该配连接池

用JNDI最好
------解决方案--------------------
tomcat应付20个用户足够了。

为什么不用连接池呢,毕竟你的数据量还是比较大的,不是每天几十条数据量。

用户并发问题,是每个项目都需要遇到的问题。这就需要看具体问题具体分析了。

一般做法是在添加、修改、删除数据之前,再次获取相应记录,然后添加或修改,删除。然后做好判断就可以了。

因为你的用户量还是少,所以这样做就足够了。
------解决方案--------------------
主要还是在资源的回收上,
finally中回收相应的资源。
也就是说,处理好异常