public static Showlist<Bookborrow> Sborbook(String sbook)
						throws NamingException, SQLException {
					Connection conn = null;
					PreparedStatement stmt = null;
					ResultSet rs = null;
					if (sbook == null) {
						sbook = "";
					} else {
						sbook = "%" + sbook + "%";
					}

					DataSource ds = getDataSource();
					Showlist<Bookborrow> result = new Showlist<Bookborrow>();

					try {
						conn = ds.getConnection();
						stmt = conn
								.prepareStatement("SELECT * FROM borrow, books where borrow.b_number = books.b_number and b_name like ? order by borrowdate");
						stmt.setString(1, sbook);

						rs = stmt.executeQuery();

						while (rs.next()) {
							result.getList().add(
									new Bookborrow(rs.getInt("b_number"),
											rs.getString("b_name"), rs.getString("writer"),
											rs.getString("maker"), rs.getDate("b_date"), rs
													.getString("category"), rs
													.getInt("isbn"), rs
													.getString("location"),rs.getInt("bw_number"),rs.getString("id")
													,rs.getTimestamp("borrowdate"),rs.getDate("returndate"),rs.getInt("extendate"),rs.getInt("delaydate"),stamp2(rs.getTimestamp("borrowdate")),stamp3(rs.getTimestamp("borrowdate"))));
						}
					} finally {
						if (rs != null)
							try {
								rs.close();
							} catch (SQLException e) {
							}
						if (stmt != null)
							try {
								stmt.close();
							} catch (SQLException e) {
							}
						if (conn != null)
							try {
								conn.close();
							} catch (SQLException e) {
							}
					}

					return result;
				}