新手在写程序时,一定要胆大心细,而且要有耐心,不妥协,不懂就翻书,网上查资料,问朋友,坚决进行到底。 最近一直凭着ASP的知识在摸索中前进,一跑坎坷,自不用说了。 言归正传。 建立一个登录系统,要求达到以下目的。 1、用户通过Bean来认证以及得到得到用户信息。 2、记录用户登录信息,如用户登录次数,最后登录时间。 3、记录操作日志。 未解决及疑惑的问题: 1、用户登录后的Session是否可以通过Bean来判断。 2、通过Bean调用ORACLE存储过程,返回select后的记录集。 操作步骤: 1、建立用户验证Bean: public boolean checkUser() throws Exception { boolean flag=false; ResultSet rs=conn.executeQuery(getSql()); if(rs.next()){ userID =rs.getString("userID"); userName =rs.getString("userName"); userPWD =rs.getString("userPWD"); userUnit =rs.getString("userUnit"); userLoadTime =rs.getDate("userLoadTime"); userLoadNumeric=rs.getInt("userLoadNumber"); flag=true; } rs.close(); conn.closeConn(); return flag; } 通过返回的值判定用户是否存在。 2、记录用户登录信息: public void changeLoginInfo(String userID) throws Exception{ String sql="update SystemUserTable set UserLoadTime=sysdate,UserLoadNumber=UserLoadNumber+1 where userID=''''"+userID+"''''"; conn.executeUpdate(sql); }
3、记录操作日志: 第一步,建立存储过程 create or replace procedure proc_writeNote( description in varchar2, wName in varchar2, wIP in varchar2 ) is begin insert into Systemnote (Id,Description,Wname,Wip) values(Autoaddid.Nextval,description,wName,wIP); commit; end proc_writeNote;
第二步、建立操作存储过程的方法(重写prepareCall()方法) public CallableStatement prepareCall(String produce){ try { conn = DriverManager.getConnection(DBUrl, UserID, UserPWD); cstmt=conn.prepareCall(produce); } catch (SQLException ex) { System.err.print("prepareCall():"+ex.getMessage()); } return cstmt; }
第三步,执行存储过程 public void writeNote(String description,String wName,String wIP){ String sql="{call proc_writeNote(?,?,?)}"; try { CallableStatement cstmt=conn.prepareCall(sql); cstmt.setString(1, description); cstmt.setString(2,wName); cstmt.setString(3,wIP); cstmt.executeUpdate(); } catch (SQLException ex) { System.out.print("writeNote():"+ex.getMessage()); } }
[系统软件]EXP-00008: ORACLE error 904 encountered的解决方… [常用软件]PB7 连接 Oracle 的配置方法 [VB.NET程序]在VB中调用Windows API的注意事项 [Delphi程序]在Delphi中调用Flash [Delphi程序]在Delphi.net中调用COM/COM+ [Delphi程序]在Delphi中调用CHM帮助文件 [VB.NET程序]在VB中调用CHM 帮助的几种方法 [VB.NET程序]在VBA中调用AUTOCAD打印文件 [VB.NET程序]如何在Store Procedure中调用VB COM [VB.NET程序]VB 中调用 Word 拼写检查
|