live and learn

big big world
posts - 5, comments - 27, trackbacks - 0, articles - 1
   :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

JSP+JAVABEAN+SERVLE开发的登录系统

Posted on 2008-11-16 00:25 小人物 阅读(3042) 评论(5)  编辑  收藏
开发用的工具Myeclipse6.0,JDK1.5,TOMCAT5.5,SQLSERVLET2000;用的是最基础的j2ee:jsp+javabean+servlet
1,现在在系统完成后的包类:


2,com.he.db里的DB.java,作用是连接数据库和创建stament和resultset和关闭他们。以及增删查该的执行
 1 package com.he.db;
 2 
 3 import java.sql.Connection;
 4 import java.sql.DriverManager;
 5 import java.sql.PreparedStatement;
 6 import java.sql.ResultSet;
 7 import java.sql.SQLException;
 8 import java.sql.Statement;
 9 
10 public class DB {
11     
12     private static DB db = null;
13     private static Connection conn = null;
14     private static Statement stmt = null;
15     
16     //单例模式,new DB类的时候,创建唯一对象,只初始化一次,
17     //注意:不要显式交闭此static中的Connection和Statement对象,否则抛空指针异常
18     static{
19         try {
20             String driverClass = "net.sourceforge.jtds.jdbc.Driver";
21             String url = "jdbc:jtds:sqlserver://localhost:1433;DatabaseName=login";
22             String username = "sa";        //edit
23             String password = "";    //edit
24             Class.forName(driverClass);
25             conn = DriverManager.getConnection(url,username,password);
26             stmt = conn.createStatement();
27             System.out.println("--------初始化---------");
28         } catch (ClassNotFoundException e) {
29             System.out.println("---------- 加载数据库驱动类时发生异常: ----------");
30             e.printStackTrace();
31         } catch (SQLException e) {
32             System.out.println("------------ getConnection()方法发生异常--------------");
33         }
34     }
35     
36     //创建PrepareStatement对象
37     public PreparedStatement prepareStmt(String sql){
38         PreparedStatement pstmt = null;
39         try {
40             pstmt = conn.prepareStatement(sql);
41         } catch (SQLException e) {
42             System.out.println("-------------prepareStmt()方法发生异常-------------------");
43             e.printStackTrace();
44         }
45         return pstmt;
46     }
47     
48     //执行查询所有记录操作
49     public ResultSet exeQuery(String sql){
50         ResultSet rs = null;
51         try {
52             rs = stmt.executeQuery(sql);
53         } catch (SQLException e) {
54             System.out.println("------------exeQuery()方法发生异常: --------------------");
55             e.printStackTrace();
56         }
57         return rs;
58     }
59     
60     //执行保存、更新、删除操作
61     public void exeUpdate(String sql){
62         try{
63             stmt.executeUpdate(sql);
64         } catch(SQLException e){
65             System.out.println("------------- exeUpdate()方法发生异常------------------");
66             e.printStackTrace();
67         }
68     }
69     
70     
71     //关闭PreparedStatement对象
72     public void closePstmt(PreparedStatement pstmt){
73         try{
74             pstmt.close();
75             pstmt = null;
76         }catch(SQLException e){
77             System.out.println("-------------------- DB.closePstmt()方法发生异常 -------------------------");
78             e.printStackTrace();
79         }
80     }
81     
82     //关闭ResultSet对象
83     public void closeRs(ResultSet rs){
84         try{
85             rs.close();
86             rs = null;
87         }catch(SQLException e){
88             System.out.println("-------------------- DB.closePstmt()方法发生异常 -------------------------");
89             e.printStackTrace();
90         }
91     }
92     
93 
94 }
95 

3,com.he.manager里的Manager.java,作用是实现登录系统所需要用到的各项功能。例如添加帐号,查看是否数据库里有同名帐号等。。
 1 package com.he.manager;
 2 
 3 import java.sql.PreparedStatement;
 4 import java.sql.ResultSet;
 5 import java.sql.SQLException;
 6 import java.util.ArrayList;
 7 import java.util.Iterator;
 8 import java.util.List;
 9 import java.util.regex.Pattern;
10 
11 import com.he.db.DB;
12 import com.he.pojo.Account;
13 import com.sun.org.apache.xerces.internal.impl.xs.identity.Selector.Matcher;
14 
15 public class Manager {