📄 booksavedaoimpl.java
字号:
package com.booksearch.dao;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.booksearch.orm.Book;
import com.booksearch.orm.Daily;
import com.booksearch.orm.Price;
/**
* Class:BookSaveDaoImpl
* Description: 对实体bean进行持久化和更新数据信息
* extens:HibernateDaoSupport
* implements:BookLoadDao
* @author feng guang
* @since 11/20/08
*/
public class BookSaveDaoImpl extends HibernateDaoSupport implements BookSaveDao {
private List list = null;
/**
* Function: addBook
* Description: 判断数据库中是否有书名相同的记录,如果没有直接插入到数据库,如果有,则更新此记录并更新关键的priceinfo表
* Calls: no
* Called By: BookSaveThread.run()
* @param book as Book
* @return void
* @throws no
*/
public synchronized void addBook(Book book) {
this.getHibernateTemplate().save(book);
}
// public synchronized void addBook(Book book) {
// boolean flag = false;
// if(null != book.getBookISBN()&&!"".equals(book.getBookISBN())){
//
// list = this.getHibernateTemplate().find("from Book as book where book.bookISBN = ?",book.getBookISBN());
// //this.updateBook(book, list);
// if(null!=list && list.size()>0){
// flag = true;
// Book temp = (Book)list.get(0);
//
// Price price = book.getPrice();
//
// if(null != price.getChina_pubUrl()){
//
// temp.getPrice().setChina_pubDiscount(price.getChina_pubDiscount());
// temp.getPrice().setChina_pubPrice(price.getChina_pubPrice());
// temp.getPrice().setChina_pubUrl(price.getChina_pubUrl());
//
// }else if(null != price.getDangdangUrl()){
//
// temp.getPrice().setDangdangDiscount(price.getDangdangDiscount());
// temp.getPrice().setDangdangPrice(price.getDangdangPrice());
// temp.getPrice().setDangdangUrl(price.getDangdangUrl());
//
// }else if(null != price.getZhuoyueUrl()){
// temp.getPrice().setZhuoyueDiscount(price.getZhuoyueDiscount());
// temp.getPrice().setZhuoyuePrice(price.getZhuoyuePrice());
// temp.getPrice().setZhuoyueUrl(price.getZhuoyueUrl());
//
// }else if(null != price.getTsinghuaUrl()){
//
// temp.getPrice().setTsinghuaDiscount(price.getTsinghuaDiscount());
// temp.getPrice().setTsinghuaPrice(price.getTsinghuaPrice());
// temp.getPrice().setTsinghuaUrl(price.getTsinghuaUrl());
// }else if(null != price.getWeilanUrl()){
//
// temp.getPrice().setWeilanDiscount(price.getWeilanDiscount());
// temp.getPrice().setWeilanPrice(price.getWeilanPrice());
// temp.getPrice().setWeilanUrl(price.getWeilanUrl());
// }else if(null != price.getBookschinaUrl()){
//
// temp.getPrice().setBookschinaDiscount(price.getBookschinaDiscount());
// temp.getPrice().setBookschinaPrice(price.getBookschinaPrice());
// temp.getPrice().setBookschinaUrl(price.getBookschinaUrl());
// }
//
// /*更新此记录其它没有的信息*/
// if(null == temp.getBookAuthor()){
// temp.setBookAuthor(book.getBookAuthor());
// }
// if(null == temp.getBookImage()){
// temp.setBookImage(book.getBookImage());
//
// }
// if(null == temp.getBookISBN()){
// temp.setBookISBN(book.getBookISBN());
// }
// if(0.00 == temp.getBookFixPrice()){
// temp.setBookFixPrice(book.getBookFixPrice());
// }
// if(null == temp.getBookPublisher()){
// temp.setBookPublisher(book.getBookPublisher());
// }
// if(null == temp.getBookPublishTime()){
// temp.setBookPublishTime(book.getBookPublishTime());
// }
// /*更新到数据库*/
// this.getHibernateTemplate().update(temp);
// }
//
// }
// if(!flag){
// if(null != book.getBookPublisher() && !"".equals(book.getBookPublisher())
// && null != book.getBookPublishTime()&& !"".equals(book.getBookPublishTime())
// && book.getBookFixPrice()>0){
//
// int bookFixPrice = (int) book.getBookFixPrice();
// final String strHql = "from Book as book where book.bookPublisher = :bookPublisher "
// + "and book.bookPublishTime like :bookPublishTime";
// final String bookPublisher = book.getBookPublisher();
// final String bookPublishTime = book.getBookPublishTime();
// //final float bookFixPrice = book.getBookFixPrice();
// list = (ArrayList<Book>) this .getHibernateTemplate().executeFind( new HibernateCallback() {
// public List doInHibernate(Session session) throws HibernateException, SQLException {
// Query query = session.createQuery( strHql);
// query.setString("bookPublisher", bookPublisher);
// query.setString("bookPublishTime", bookPublishTime+"%");
// //query.setFloat("bookFixPrice", bookFixPrice);
// return query.list();
// }
// });
// //this.updateBook(book, list);
// if(null != list && list.size()>0){
//
// for(int i=0;i<list.size();i++){
// Book temp = (Book)list.get(i);
// if(bookFixPrice == (int)temp.getBookFixPrice()){
//
// flag = true;
// //Book temp = (Book)list.get(0);
// //System.out.println("hasupdate>>"+temp.getBookName() + temp.getBookImage());
// Price price = book.getPrice();
//
// if(null != price.getChina_pubUrl()){
//
// temp.getPrice().setChina_pubDiscount(price.getChina_pubDiscount());
// temp.getPrice().setChina_pubPrice(price.getChina_pubPrice());
// temp.getPrice().setChina_pubUrl(price.getChina_pubUrl());
//
// }else if(null != price.getDangdangUrl()){
//
// temp.getPrice().setDangdangDiscount(price.getDangdangDiscount());
// temp.getPrice().setDangdangPrice(price.getDangdangPrice());
// temp.getPrice().setDangdangUrl(price.getDangdangUrl());
//
// }else if(null != price.getZhuoyueUrl()){
// temp.getPrice().setZhuoyueDiscount(price.getZhuoyueDiscount());
// temp.getPrice().setZhuoyuePrice(price.getZhuoyuePrice());
// temp.getPrice().setZhuoyueUrl(price.getZhuoyueUrl());
//
// }else if(null != price.getTsinghuaUrl()){
//
// temp.getPrice().setTsinghuaDiscount(price.getTsinghuaDiscount());
// temp.getPrice().setTsinghuaPrice(price.getTsinghuaPrice());
// temp.getPrice().setTsinghuaUrl(price.getTsinghuaUrl());
// }else if(null != price.getWeilanUrl()){
//
// temp.getPrice().setWeilanDiscount(price.getWeilanDiscount());
// temp.getPrice().setWeilanPrice(price.getWeilanPrice());
// temp.getPrice().setWeilanUrl(price.getWeilanUrl());
// }else if(null != price.getBookschinaUrl()){
//
// temp.getPrice().setBookschinaDiscount(price.getBookschinaDiscount());
// temp.getPrice().setBookschinaPrice(price.getBookschinaPrice());
// temp.getPrice().setBookschinaUrl(price.getBookschinaUrl());
// }
//
// /*更新此记录其它没有的信息*/
// if(null == temp.getBookAuthor()){
// temp.setBookAuthor(book.getBookAuthor());
// }
// if(null == temp.getBookImage()){
// temp.setBookImage(book.getBookImage());
//
// }
// if(null == temp.getBookISBN()){
// temp.setBookISBN(book.getBookISBN());
// }
// if(0.00 == temp.getBookFixPrice()){
// temp.setBookFixPrice(book.getBookFixPrice());
// }
// if(null == temp.getBookPublisher()){
// temp.setBookPublisher(book.getBookPublisher());
// }
// if(null == temp.getBookPublishTime()){
// temp.setBookPublishTime(book.getBookPublishTime());
// }
// /*更新到数据库*/
// this.getHibernateTemplate().update(temp);
// break;
// }
// }
//
// }
// }
// }
// if(!flag){
//// System.out.println("save2::"+book.getBookName()+">>"+book.getBookImage()+">>"+book.getBookFixPrice()+">>"
//// +book.getBookISBN()+">>"+book.getBookPublishTime()+">>"
//// +book.getBookPublisher() + ">>" + book.getPrice().getBookschinaDiscount() + ">>"
//// + book.getPrice().getBookschinaPrice() + ">>" + book.getPrice().getBookschinaUrl());
// this.getHibernateTemplate().save(book);
// }
//
// }
// private synchronized void updateBook(Book book,List list){
// /*如果数据库中有相同书名的记录,则更新此记录信息*/
// if(list.size()>0){
//
// Book temp = (Book)list.get(0);
//
// Price price = book.getPrice();
//
// if(null != price.getChina_pubUrl()){
//
// temp.getPrice().setChina_pubDiscount(price.getChina_pubDiscount());
// temp.getPrice().setChina_pubPrice(price.getChina_pubPrice());
// temp.getPrice().setChina_pubUrl(price.getChina_pubUrl());
//
// }else if(null != price.getDangdangUrl()){
//
// temp.getPrice().setDangdangDiscount(price.getDangdangDiscount());
// temp.getPrice().setDangdangPrice(price.getDangdangPrice());
// temp.getPrice().setDangdangUrl(price.getDangdangUrl());
//
// }else if(null != price.getZhuoyueUrl()){
// temp.getPrice().setZhuoyueDiscount(price.getZhuoyueDiscount());
// temp.getPrice().setZhuoyuePrice(price.getZhuoyuePrice());
// temp.getPrice().setZhuoyueUrl(price.getZhuoyueUrl());
//
// }else if(null != price.getTsinghuaUrl()){
//
// temp.getPrice().setTsinghuaDiscount(price.getTsinghuaDiscount());
// temp.getPrice().setTsinghuaPrice(price.getTsinghuaPrice());
// temp.getPrice().setTsinghuaUrl(price.getTsinghuaUrl());
// }else if(null != price.getWeilanUrl()){
//
// temp.getPrice().setWeilanDiscount(price.getWeilanDiscount());
// temp.getPrice().setWeilanPrice(price.getWeilanPrice());
// temp.getPrice().setWeilanUrl(price.getWeilanUrl());
// }else if(null != price.getBookschinaUrl()){
//
// temp.getPrice().setBookschinaDiscount(price.getBookschinaDiscount());
// temp.getPrice().setBookschinaPrice(price.getBookschinaPrice());
// temp.getPrice().setBookschinaUrl(price.getBookschinaUrl());
// }
//
// /*更新此记录其它没有的信息*/
// if(null == temp.getBookAuthor()){
// temp.setBookAuthor(book.getBookAuthor());
// }
// if(null == temp.getBookImage()){
// temp.setBookImage(book.getBookImage());
//
// }
// if(null == temp.getBookISBN()){
// temp.setBookISBN(book.getBookISBN());
// }
// if(0.00 == temp.getBookFixPrice()){
// temp.setBookFixPrice(book.getBookFixPrice());
// }
// if(null == temp.getBookPublisher()){
// temp.setBookPublisher(book.getBookPublisher());
// }
// if(null == temp.getBookPublishTime()){
// temp.setBookPublishTime(book.getBookPublishTime());
// }
//
// this.getHibernateTemplate().update(temp);
// }else{
// this.getHibernateTemplate().save(book); ;
// }
// }
public boolean isExist(String bookIsbn) {
if("".equals(bookIsbn)||null == bookIsbn)
return false;
else{
list = this.getHibernateTemplate().find("from Book as book where book.bookISBN = ?",bookIsbn);
if(null != list&&list.size() > 0)
return true;
else
return false;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -