📄 addbookservlet.java
字号:
package com.shop.controller;
import java.io.IOException;
import java.io.OutputStream;
import java.util.GregorianCalendar;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileItemFactory;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import com.shop.model.CharSet;
import com.shop.model.manager.userinfo.BookInfoManager;
import com.shop.model.utils.PageVO;
import com.shop.vo.addbook.BookInfoVo;
public class AddBookServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
BookInfoManager bookM=new BookInfoManager();
String method=request.getParameter("method");
//----------------------------------------显示图片-------------------------------------------------------------------
if("showImg".equals(method)){
String isbn=request.getParameter("isbn");
if(isbn!=null){
byte[] bookImage=bookM.getBookImageById(isbn);
response.setContentType("image/jpeg");
if(bookImage!=null){
OutputStream out =null;
try {
out = response.getOutputStream();
out.write(bookImage);
out.flush();
} catch (RuntimeException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(out!=null){
out.close();
}
}
}
}
return;
}
//----------------------------------------------------------------------------------------------------------------------
//----------------------------------------------查看单条图书记录----------------------------------------------------
if("showBookByIsbn".equals(method)){
String isbn=request.getParameter("isbn");
BookInfoVo book=bookM.getBookByIsbn(isbn);
request.setAttribute("book", book);
request.getRequestDispatcher("/bookinfo/aBookInfo.jsp").forward(request, response);
return;
}
//----------------------------------------------------------------------------------------------------------------
//----------------------------------------------显示分页后的列表----------------------------------------------------------
PageVO page=new PageVO(request,6);
page.setMaxRowNo(bookM.getCount());
List<BookInfoVo> bookList=bookM.findBook(page);
request.setAttribute("bookList", bookList);
request.setAttribute("page",page);
request.getRequestDispatcher("/include/main.jsp").forward(request, response);
return ;
//---------------------------------------------------------------------------------------------------------------------
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//----------------------------------------------添加图书记录---------------------------------------------------------- --
try {
CharSet chatSet=new CharSet();
BookInfoVo book=new BookInfoVo();
BookInfoManager bookM=new BookInfoManager();
boolean isMultipart = ServletFileUpload.isMultipartContent(request);
if(isMultipart){
FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
List items = upload.parseRequest(request);
if(items!=null&&items.size()>0){
for (Object object : items) {
FileItem fileItem =(FileItem)object;
if(fileItem.isFormField()){
if("isbn".equals(fileItem.getFieldName())){
book.setIsbn(fileItem.getString());
continue;
}
if("bookName".equals(fileItem.getFieldName())){
book.setBookName(chatSet.changCharSetToGB2312(fileItem.getString()));
continue;
}
if("author".equals(fileItem.getFieldName())){
book.setAuthor(chatSet.changCharSetToGB2312(fileItem.getString()));
continue;
}
if("price".equals(fileItem.getFieldName())){
book.setPrice(Float.parseFloat(fileItem.getString()));
continue;
}
if("printDate".equals(fileItem.getFieldName())){
String[] str=fileItem.getString().split("-");
GregorianCalendar calendar=new GregorianCalendar(Integer.parseInt(str[0]),Integer.parseInt(str[1])-1,Integer.parseInt(str[2]));
book.setPrintDate(calendar.getTime());
System.out.println(str[0]+str[1]+str[2]);
System.out.println(book.getPrintDate().toLocaleString());
continue;
}
if("sellPrice".equals(fileItem.getFieldName())){
book.setSellPrice(Float.parseFloat(fileItem.getString()));
continue;
}
if("printAddr".equals(fileItem.getFieldName())){
book.setPrintAddr(chatSet.changCharSetToGB2312(fileItem.getString()));
continue;
}
if("remainNumber".equals(fileItem.getFieldName())){
book.setRemainNumber(fileItem.getString());
continue;
}
if("inBookNumber".equals(fileItem.getFieldName())){
book.setInBookNumber(fileItem.getString());
continue;
}
if("inBookDate".equals(fileItem.getFieldName())){
String[] str=fileItem.getString().split("-");
GregorianCalendar calendar=new GregorianCalendar(Integer.parseInt(str[0]),Integer.parseInt(str[1])-1,Integer.parseInt(str[2]));
book.setInBookDate(calendar.getTime());
continue;
}
if("bookType".equals(fileItem.getFieldName())){
book.setBookType(chatSet.changCharSetToGB2312(fileItem.getString()));
continue;
}
if("bookDescrption".equals(fileItem.getFieldName())){
book.setBookDescrption(chatSet.changCharSetToGB2312(fileItem.getString()));
continue;
}
}else{
if(fileItem.getSize()==0){
continue;
}
book.setBookImage(fileItem.get());
String filename =fileItem.getName();
System.out.println(filename.substring(filename.lastIndexOf("\\")+1));
}
}
if(bookM.isExsistBook(book.getIsbn())){
request.setAttribute("book", book);
request.getRequestDispatcher("/bookinfo/addBook.jsp").forward(request, response);
return;
}
bookM.addBookInfoVo(book);
}
}
} catch (NumberFormatException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (FileUploadException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
response.sendRedirect(request.getContextPath()+"/bookinfo/success.jsp");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -