今日要讲的是关于easyui 的后端所有工作,增删改查,一次性讲解完毕,
首先是底层代码,BookDao:
public class BookDao implements IBookDao{
private Connection con=null;
private PreparedStatement ps=null;
private ResultSet rs=null;
@Override
public List<Book> getAllByPage(int pageIndex, int pageSize, String str) {
List<Book> ls=new ArrayList<Book>();
int a=(pageIndex-1)*pageSize+1;
int b=pageIndex*pageSize;
try {
con=DBHelper.getCon();//获得连接
String sql="select * from(select a.* , rownum as rid from tb_books a where bname like '%"+str+"%') b where b.rid between ? and ?";
ps=con.prepareStatement(sql);//获取执行对象
//给占位符赋值
ps.setInt(1, a);
ps.setInt(2, b);
rs=ps.executeQuery();//获得结果集
while(rs.next()) {//遍历结果集
Book bb=new Book(rs.getInt(1), rs.getString(2), rs.getDouble(3), rs.getString(4));
ls.add(bb);
}
} catch (Exception e) {
e.printStackTrace();
}finally {
DBHelper.myClose(con, ps, rs);
}
return ls;
}@Override
public int getRows(String str) {
int n=0;
try {
con=DBHelper.getCon();//获得连接
String sql="select count(*) from "+str;//定义sql语句
ps=con.prepareStatement(sql);
rs=ps.executeQuery();//获得结果集
if(rs.next()) {
n=rs.getInt(1);// 赋值
}
} catch (Exception e) {
e.printStackTrace();
}finally {
DBHelper.myClose(con, ps, rs);
}
return n;
}
/*public static void main(String[] args) {
BookDao b=new BookDao();
List<Book> ba = b.getAllByPage(1, 10, "");
for (Book bo : ba) {
System.out.println(bo);
}
}*/@Override
public int addBook(Book b) {
int n=0;
try {
con=DBHelper.getCon();//获得连接
String sql="insert into tb_books select nvl(max(bid),0)+1,?,?,? from tb_books";
ps=con.prepareStatement(sql);//获得执行对象
//给占位符赋值
ps.setString(1, b.getBname());
ps.setDouble(2, b.getBprice());
ps.setString(3, b.getBtype());
n=ps.executeUpdate();
} catch (Exception e) {
DBHelper.myClose(con, ps, rs);
}
return n;
}
@Override
public int updatets(Book b,int bid) {
int n = 0;
try {
con = DBHelper.getCon();
String sql = "update tb_books set bname=?,bprice=?,btype=? where bid="+bid;
ps=con.prepareStatement(sql);
ps.setString(1, b.getBname());
ps.setDouble(2, b.getBprice());
ps.setString(3, b.getBtype());
n=ps.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
}finally {
DBHelper.myClose(con, ps, null);
}
return n;
}
@Override
public int deletets(int bid) {
int n = 0;
try {
con = DBHelper.getCon();
String sql = "delete from tb_books where bid="+bid;
ps=con.prepareStatement(sql);
n=ps.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
}finally {
DBHelper.myClose(con, ps, null);
}
return n;
}
}
接着就是比较关键的servlet界面
AddBookServlet:
package com.zking.servlet;
import java.io.IOException;
import