基于Web设计实习报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于Web设计实习报告

课程设计题目:网上书店

桂林理工大学信息科学与工程学院班级:计算机11-1班报告人姓名:陈啟森

学号:

承担角色:程序设计员

同组组长:

同组其他成员:

实验指导教师:邓酩

实验地点: 02513

完成起止日期:

[正文] 用户模块:

后台管理:

我主要负责上面两个模块中需要用到的数据库访问层(DAO),以及其具体的数据的增、删、改 的实现方法,为了做到这些操作我创建了对应的包及其类: 1、针对book 表的操作

在com.bsw.book 包中放置Book.java 和BookDAO.java 文件。 2、针对BookCategory 表的操作

在com.bsw.bookcategory 包中放置BookCategory.java 和BookCategoryDAO.java 文件。 3、针对shopcart 表的操作

在com.bsw.shopcart 包中放置ShopCart.java 和ShopCartDAO.java 文件。 4、针对traderecord 表的操作

在com.bsw.traderecord包中放置TradeRecord.java和TradeRecordDAO.java文件。

5、针对user表的操作

在er包中放置User.java和UserDAO.java文件。

增、删、改具体实现方法以book表为例:

插入功能实现:

/**

* 插入Book对象到数据库中

* @param book 将要插入的Book对象

* @return 是否插入成功

*/

public boolean insertBook(Book book){

// 获得数据库的连接对象

connection = DBManager.getConnection();

// 生成SQL代码

StringBuffer sqlState = new StringBuffer();

sqlState.append("INSERT INTO book(name,url,author,bookman,");

sqlState.append("status,price,categoryId,introduction,total,currentNum,addTi me)");

sqlState.append(" VALUES(?,?,?,?,?,?,?,?,?,?,?)");

// 设置数据库的字段值

try {

preState = connection.prepareStatement(sqlState.toString());

preState.setString(1, book.getName());

preState.setString(2, book.geturl());

preState.setString(3, book.getAuthor());

preState.setString(4, book.getBookman());

preState.setInt(5, book.getStatus());

preState.setDouble(6, book.getPrice());

preState.setInt(7, book.getCategoryId());

preState.setString(8, book.getIntroduction());

preState.setInt(9, book.getTotal());

preState.setInt(10, book.getCurrentNum());

preState.setDate(11, book.getAddTime());

//System.out.println(sqlState);

// 设置事务的开始,并更新数据库,最后提交事务

preState.execute("begin");

preState.executeUpdate();

preState.execute("commit");

return true;

} catch (SQLException e) {

// 插入失败则回滚

try {

preState.execute("rollback");

} catch (SQLException e1) {

e1.printStackTrace();

return false;

}

e.printStackTrace();

} finally {

DBManager.closeAll(connection, state, resultSet);

}

return false;

}

删除功能实现:

/**

* 删除给定ID的书

*

* @param bookID 给定的书ID

* @return 真或假

*/

public boolean deleteBook(int bookID){

Connection conn=null;

Statement stmt=null;

ResultSet rs=null;

try{

conn=DBManager.getConnection();

stmt=conn.createStatement();

String sqlStr="delete from book where id="+bookID;

stmt.execute("begin"); // 事务保证删除成功

stmt.executeUpdate(sqlStr);

stmt.execute("commit");

//System.out.println("delete success!");

return true;

}catch(SQLException e){

try{

stmt.execute("rollback"); // 回滚

}catch(SQLException e1){

e1.printStackTrace();

}

e.printStackTrace();

return false;

}finally{

DBManager.closeAll(conn,stmt,rs);

}

}

修改功能实现:

/**

* 用给定的对象更新数据库与所给定对象ID号相同记录

*

* @param book 给定书的对象

* @return 真或假

相关文档
最新文档