这里我们主要用到的是zking.包,china.包是参照表
DBHleper类
package zking.util;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class DBHelper {
private static String user = "scott";
private static String upwd = "tiger";
private static String cname = "oracle.jdbc.driver.OracleDriver";
private static String url = "jdbc:oracle:thin:@localhost:1521:orcl";
//注册驱动类
static {
try {
Class.forName(cname);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
//连接数据库
/**
* 连接数据库
* @return
*/
public static Connection getCon() {
Connection con = null;
try {
con = DriverManager.getConnection(url, user, upwd);
} catch (Exception e) {
e.printStackTrace();
}
return con;
}
/**
* 关闭连接
* @param con
* @param ps
* @param rs
*/
public static void closeDb(Connection con,PreparedStatement ps,ResultSet rs) {
try {
if(con!=null) {
con.close();
}
if(ps!=null) {
ps.close();
}
if(rs!=null) {
rs.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 下一个获取下一个编号的方法
* @return 下一个编号
*/
public static int getNextId(String tableName,String col) {
int id = 1;
Connection con = null;
PreparedStatement ps = null;
ResultSet rs = null;
try {
con = DBHelper.getCon();
ps = con.prepareStatement("select max("+col+") from "+tableName);
rs = ps.executeQuery();
if(rs.next()) {
id = rs.getInt(1)+1;
}
} catch (Exception e) {
e.printStackTrace();
}finally {
DBHelper.closeDb(con, ps, rs);
}
return id;
}
//关闭连接
}
用户实体类User
package zking.entity;
public class User {
private int uuid;
private String uname;
private String upwd;
private String uinfo;
public User() {
super();
}
public User(int uuid, String uname, String upwd, String uinfo) {
super();
this.uuid = uuid;
this.uname = uname;
this.upwd = upwd;
this.uinfo = uinfo;
}
public int getUuid() {
return uuid;
}
public void setUuid(int uuid) {
this.uuid = uuid;
}
public String getUname() {
return uname;
}
public void setUname(String uname) {
this.uname = uname;
}
public String getUpwd() {
return upwd;
}
public void setUpwd(String upwd) {
this.upwd = upwd;
}
public String getUinfo() {
return uinfo;
}
public void setUinfo(String uinfo) {
this.uinfo = uinfo;
}
}
用户Dao类UserDao
package zking.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import zking.entity.User;
import zking.util.DBHelper;
public class UserDao {
//用户登录-根据帐号 密码 进行查询
/**
* 用户登录
* @param uname 用户名
* @param upwd 用户密码
* @return 登录成功返回用户对象,失败返回null
*/
public User login(String uname,String upwd) {
User user = null;
Connection con = null;
PreparedStatement ps = null;
ResultSet rs= null;
try {
con = DBHelper.getCon();
ps = con.prepareStatement("select * from T277 where uname=? and upwd=?");
ps.setString(1, uname);
ps.setString(2, upwd);
rs = ps.executeQuery();
//操作数据
if(rs.next()) {
int uuid = rs.getInt(1);
String uinfo = rs.getString(4);
user = new User(uuid, uname, upwd, uinfo);
}
} catch (Exception e) {
e.printStackTrace();
}finally {
DBHelper.closeDb(con, ps, rs);
}
return user;
}
/**
* 用户注册
* @param user 注册的用户对象
* @return
*/
public int register(User user) {
int i = 0;
Connection con = null;
Pr