我的一个register.jsp注册页面,在填完所要求的4项简单的数据并点击“注册”后,要半分钟才能回跳到logon.jsp页面,所填写的数据能写入oracle数据库,可为什么要这么久呢?有哪些原因呢?
备注:我这个小系统很简单的,就是一个留言板,采用了jsp+servlet+javabean的模式,开发环境是tomcat5.5+myeclipse3.2+oracle9i,只有4个jsp文件、16个java文件以及4个util工具java文件。
备注:我这个小系统很简单的,就是一个留言板,采用了jsp+servlet+javabean的模式,开发环境是tomcat5.5+myeclipse3.2+oracle9i,只有4个jsp文件、16个java文件以及4个util工具java文件。
解决方案 »
- 新手,基于s2sh做了个增删改查的demo,想要通过搜索id得到学生信息,该怎么做?
- 不能够解析html代码,直接输出代码
- Oracle11g驱动程序集
- 怎样判断单选按钮是否被选择
- 无验证码登陆安全
- CDSN老是不开Stuts论坛版块,所以自己去做了一个,欢迎Stuts开发和学习的朋友加入!
- 一定要搞清楚tomcat与IIS集成配置方法!!!!!!!!!!!!!????????
- 在jsp里 如何连接db2的数据库。。。
- 如何将基于tomcat的jsp应用程序连同tomcat一起打包?(在线)
- CRM项目数据层用Hibernate还是Mybatits好还是直接调用存储过程
- <a href="#">小问题
- 求助:在使用servlet的时候报错 code:405
还有个问题是,我注册到数据库后,数据库不能及时的显示我刚注册的用户名和密码。
当我选择userinfo表的 "刷新" 后,表内的数据都没有变化.于是我只能选择 "查询数据" 来看更新后的数据情况,但有时能显示刚输入的数据,有时却不能。请问是什么原因呢?我是oracle新手,望多多指教。
你注册可以先不连数据库,或者换用其它数据库。担心程序有问题可以把注册信息先放在session或者aplication里
否则每次都进行远程连接的话是很慢的。
你的电脑配置不错,不会是你的电脑的问题
再说了,Oracle 这么多人在用,按理说是不会出问题的。
最大的可能就是你的程序的问题了。
我感觉你连的不会是远程的数据库。看似楼主还是个学生
package ch;import java.sql.*;
public class DatabaseBean {
private static final String user="scott";
private static final String password="tiger";
//取得一个数据库的连接
public static Connection getConnection() throws SQLException{
return db.DatabaseBean.getConnection(user,password);
}
//取得某个表中可应用的主键
public static int getMaxID(String tablename) throws SQLException{
Connection conn=getConnection();
int nMaxID=db.DatabaseBean.getMaxID(conn,tablename);
conn.close();
return nMaxID;
}
//关闭连接,释放资源
public static void close(ResultSet rs,Statement st,Connection conn){
db.DatabaseBean.close(rs,st,conn);
}
//执行一个更新数据库的SQL语句
public static boolean update(String sql){
Connection conn=null;
Statement st=null;
try{
conn=DatabaseBean.getConnection();
st=conn.createStatement();
int nResult=st.executeUpdate(sql);
return nResult==1;//??????????????????????????
}
catch(SQLException ex){
ex.printStackTrace(System.err);
return false;
}
finally{
DatabaseBean.close(null,st,conn);
}
}
}
而另一个底层的DatabaseBean.java是:package db;import java.sql.*;
import javax.naming.*;
import javax.sql.*;/**
* 数据库相关的操作
*/
public class DatabaseBean
{
public static Connection getConnection( String user, String password ) throws SQLException
{
// 定义驱动程序
String DBDRIVER = "oracle.jdbc.driver.OracleDriver";
// // 定义连接字符串
String CONNSTR = "jdbc:oracle:thin:@localhost:1521:ora92";
try
{
Class.forName( DBDRIVER );
}
catch ( ClassNotFoundException ex )
{
ex.printStackTrace( System.err );
}
return DriverManager.getConnection(CONNSTR,user,password);
}
// 取得某个表中可用的主键值
public static synchronized int getMaxID( Connection conn, String tablename )
throws SQLException
{
int nMaxID = 0;
Statement st = conn.createStatement();
// 增加同步,避免同时由多个进程执行
String sql = "SELECT maxid FROM tableseq WHERE tablename = '" + tablename + "'";
ResultSet rs = st.executeQuery( sql );
while( rs.next() )
{
nMaxID = rs.getInt( 1 );
}
rs.close();
if( nMaxID > 0 )
{
// 存在该表的记录
nMaxID++;
sql = "UPDATE tableseq SET maxid=" + nMaxID + " WHERE tablename = '"
+ tablename + "'";
}
else
{
// 不存在该表的记录
nMaxID = 1; // 从1开始
sql = "INSERT INTO tableseq ( tablename, maxid ) "
+ "VALUES ( '" + tablename + "'," + nMaxID + ")";
}
st.executeUpdate( sql );
st.close(); return nMaxID;
} // 关闭连接,释放资源
public static void close( ResultSet rs, Statement st, Connection conn )
{
try
{
if( rs!=null ) rs.close();
}
catch( SQLException ex ) { };
try
{
if( st!=null ) st.close();
}
catch( SQLException ex ) { };
try
{
if( conn!=null ) conn.close();
}
catch( SQLException ex ) { };
}}请问时间慢会不会跟这两个连接的文件有关呢?
t0 = System.currentTimeMillis();
....
....
t1 = System.currentTimeMillis();
System.out.println(t1 - t0);