// 增加
public void addBook(Book book) ... {
Session session=getSession();
Transaction tr=session.beginTransaction();
session.save(book) ;
tr.commit() ;
session.close() ;
}
// 删除(根据ID)
public void delBookById(String bookId) ... {
Session session=getSession();
Transaction tr=session.beginTransaction();
String hql="delete Book as book where book.bookId=?";
Query quer=session.createQuery(hql);
quer.setString(0,bookId) ;
quer.executeUpdate() ;
tr.commit() ;
session.close();
}
// 删除(批量删除)
public void delBooks(String[] bookIds) ... {
Session session=getSession();
Transaction tr=session.beginTransaction();
String hql="delete Book as book where book.bookId=?";
for(int i=0;i<bookIds.length ;i++)...{
(session.createQuery(hql)).setString(0,bookIds[i]).executeUpdate() ;
}
tr.commit() ;
session.close() ;
}
// 修改
public void updateBook(Book book) ... {
Session session=getSession();
Transaction tr=session.beginTransaction();
session.update(book) ;
tr.commit() ;
session.close();
}
// 查找(根据ID)
public Book findBookById(String bookId) ... {
Session session=getSession();
Transaction tr=session.beginTransaction() ;
String hql="select book from Book as book where book.bookId=?";
Query quer=session.createQuery(hql) ;
quer.setString(0,bookId) ;
Book book=null;
List list=quer.list() ;
tr.commit() ;
session.close() ;
if(list.size() >0)//可防止空指针的
book=(Book)list.get(0) ;
return book;
}
// 总记录数
public int getBookCounts() ... {
Session session=getSession();
Transaction tr=session.beginTransaction() ;
String hql="select count(book.bookId) from Book as book";
Query quer=session.createQuery(hql);
int count=((Integer)quer.iterate().next()).intValue() ;
return count;
}
// 查找全部书
public Map findBooks( int startRow, int maxRows) ... {
Session session=getSession();
Transaction tr=session.beginTransaction() ;
Map map=new HashMap();
String hql="from Book";
Query quer=session.createQuery(hql);
quer.setFirstResult(startRow);
quer.setMaxResults(maxRows) ;
List list=quer.list() ;
Iterator it=list.iterator() ;
while(it.hasNext())...{
Book book=(Book)it.next();
map.put(book.getBookId(),book) ;
}
tr.commit() ;
session.close() ;
return map;
}
// 获得当前系统时间,转换成yyyy-MM-dd格式,准备入库
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat( " yyyy-MM-dd " );
Date pdate = Date.valueOf(sdf.format(cal.getTime()));
// 上传文件
UploadForm uploadForm = (UploadForm) form;
FormFile file = uploadForm.getFile();
String filename = file.getFileName();
// 设置默认文件存储目录
String path = " d:/upload/pic/ " ;
// 文件路径
String filepath = path + filename;
try ... {
//上传文件写到本地文件系统
InputStream is = file.getInputStream();
FileTool.writeFile(filepath, is);
}
catch (FileNotFoundException ex) ... {
}
catch (IOException ex) ... {
}
//
ActionMapping mapping
ActionForm form
HttpServletRequest request
HttpServletResponse response
// 数据库连接
Connection con = null ;
Class.forName( " com.mysql.jdbc.Driver " );
con = DriverManager.getConnection( " jdbc:mysql://localhost/tarena " , " root " , " weblogic " );
PreparedStatement ps = null ;
ResultSet rs = null ;
String sql = " select * from t_picture where id=? " ;
ps = con.prepareStatement(sql);
ps.setInt( 1 , pid);
rs = ps.executeQuery();
public boolean addPicture(PictureBean pb) ... {
//上传数据入库
boolean result = false;
String sql = "insert into t_picture(title,author,type,area,pdate,filepath) values (?,?,?,?,?,?)";
Connection con = DBConnector.getConnection();
PreparedStatement ps = null;
try ...{
ps = con.prepareStatement(sql);
int i = 1;
ps.setString(i++, pb.getTitle());
ps.setString(i++, pb.getAuthor());
ps.setString(i++, pb.getType());
ps.setString(i++, pb.getArea());
ps.setDate(i++, pb.getPdate());
ps.setString(i++, pb.getFilepath());
int j = ps.executeUpdate();
if (j > 0) ...{
result = true;
}
}
catch (SQLException ex) ...{
ex.printStackTrace();
}
finally ...{
close(null, ps, con);
}
return result;
}
public PictureBean queryPicture( int pid) ... {
//查询某类型图片摘要信息
PictureBean pb = null;
String sql = "select * from t_picture where id=?";
Connection con = DBConnector.getConnection();
PreparedStatement ps = null;
ResultSet rs = null;
try ...{
ps = con.prepareStatement(sql);
ps.setInt(1, pid);
rs = ps.executeQuery();
if (rs.next()) ...{
pb = new PictureBean();
pb.setId(rs.getInt("id"));
pb.setTitle(rs.getString("title"));
pb.setAuthor(rs.getString("author"));
pb.setType(rs.getString("type"));
pb.setArea(rs.getString("area"));
pb.setPdate(rs.getDate("pdate"));
pb.setFilepath(rs.getString("filepath"));
}
}
catch (SQLException ex) ...{
ex.printStackTrace();
}
finally ...{
close(rs, ps, con);
}
return pb;
}
public Collection queryByType(String type) ... {
//查询某张图片详细信息
Vector pbs = new Vector();
String sql = "select * from t_picture where type=?";
Connection con = DBConnector.getConnection();
PreparedStatement ps = null;
ResultSet rs = null;
try ...{
ps = con.prepareStatement(sql);
ps.setString(1, type);
rs = ps.executeQuery();
while (rs.next()) ...{
PictureBean pb = new PictureBean();
pb.setId(rs.getInt("id"));
pb.setTitle(rs.getString("title"));
pb.setAuthor(rs.getString("author"));
pb.setPdate(rs.getDate("pdate"));
pbs.add(pb);
}
}
catch (SQLException ex) ...{
ex.printStackTrace();
}
finally ...{
close(rs, ps, con);
}
return pbs;
}