jsp+servlet spike and bidding auction system based on javaweb+mysql (java+jsp+bootstrap+jquery+mysql)

jsp + servlet seckill and bidding auction system based on javaweb + mysql (java + jsp + bootstrap + jquery + mysql)

operating environment

Java≥8, MySQL≥5.7, Tomcat≥8

development tools

eclipse/idea/myeclipse/sts can be configured to run

Be applicable

Course design, major assignments, graduation design, project exercises, learning presentations, etc.

Function Description

JSP + Servlet seckill and bidding auction system based on javaweb + mysql (java + jsp + bootstrap + jquery + mysql)

Project Introduction

The B2C-based online auction system is mainly used to help people use the Internet to buy their favorite commodities conveniently and quickly, and participate in flash sales and auctions.

The main functions include: 1. Foreground module (1) Login/registration of ordinary users. (2) View products by category (common products and promotional products) (3) View product details (4) View flash sale products (5) View auction products (6) Add products to the shopping cart (7) Purchase, settlement function (8) Message 2. Background module (1) Change password (2) Commodity management: edit/delete setting/cancel promotion (3) Lightning flash product: setting/cancelling flash sale (4) Bidding product: setting/cancelling bidding (5) Order management: view Order (6) message management: view/delete messages

environmental needs

1. Operating environment: preferably java jdk 1.8, we run on this platform. Other versions are also theoretically possible. 2. IDE environment: IDEA, Eclipse, Myeclipse are all available. IDEA is recommended; 3. Tomcat environment: Tomcat 7.x, 8.x, 9.x versions are all available 4. Hardware environment: windows 7/8/10 with 1G memory or more; or Mac OS; 5. Maven project or not: No; Check whether pom.xml is included in the source code directory; if it is included, it is a maven project, otherwise it is a non-maven project 6. Database: MySql 5.7 version;

technology stack

  1. Backend: Servlet 2. Frontend: JSP + bootstrap + jQuery

Instructions for use

  1. Use Navicat or other tools to create a database with the corresponding name in mysql, and import the sql file of the project; 2. Change the database configuration in the resources/ioc/dao.js configuration file in the project to your own configuration; 3. Use IDEA /Eclipse/MyEclipse import project, when Eclipse/MyEclipse imports, if it is a maven project, please select maven; if it is a maven project, please execute the maven clean;maven install command after the import is successful, configure tomcat, and then run; 4. Project access path: Foreground: http://localhost:8080/sale Background: http://localhost:8080/sale/user/adminlogin
 return new JspView("jsp. admin. product. add");
}

/**
* add pro
*
* @param request
* @return
* @throws IOException
*/
@At("/add")
@AdaptBy(type = UploadAdaptor. class, args = {<!-- --> "${app. root}/WEB-INF/tmp" })
public View add(HttpServletRequest request, @Param("file") TempFile file,
@Param("name") String name, @Param("price") String price,
@Param("content") String content) throws IOException {<!-- -->

Product product = new Product();
product.setName(name);
product.setPrice(price);
product.setContent(content);

// save image to start
File f = file. getFile();
String filename = f. getName();
int address = filename. lastIndexOf(".");
String type = filename. substring(address + 1, filename. length());
String date = new SimpleDateFormat("yyyyMMddHHmmssSS").format(Calendar
.getInstance().getTime());
//String yp = "D:\file";
String yp = request.getServletContext().getRealPath("/");
//String changePath = yp + date + "." + type;// Actual save path
String changePath = yp + "\resources\file" + date + "." + type;// Actual save path
//String changePath = yp + "/resources/file/" + date + "." + type;// Mac system actual save path
File desFile = new File(changePath);
File pck = new File(yp);
// check directory
if (!pck. exists()) {<!-- -->
pck.mkdirs();
}
desFile.createNewFile();
FileOutputStream out = new FileOutputStream(desFile);
FileInputStream in = new FileInputStream(f);
byte[] stream = new byte[in.available()];
in. read(stream);
out.write(stream);
out. close();
in. close();
// Save to disk end

// //
 for(int i=0;i<list. size();i ++ ){<!-- -->
order = list. get(i);
order.setSffk(1);
order. setVisible(1);
orderService. editOrder(order);
product = productService.findProductById(order.getProid());
if(product.getSfms()==1){<!-- -->//If it is a spike, the number of spikes -1
product.setMscount(product.getMscount()-1);
productService. editProduct(product);
}
\t\t\t
}
request.setAttribute("msg", "Payment succeeded");
//New product launch
List<Product> newlist = productService. findNewProduct();
request.setAttribute("newlist", newlist);
//Promotion
List<Product> cxlist = productService. findCxProduct();
request.setAttribute("cxlist", cxlist);
return new JspView("jsp. index");
}
/**
*
* @param request
* @return
*/
@At("/toOrderList")
public View toOrderList(HttpServletRequest request){<!-- -->
User user = (User)request.getSession().getAttribute("user");
List<Order> list = orderService. getOrderList(user. getId());
for(int i=0;i<list. size();i ++ ){<!-- -->
list.get(i).setUser(userService.findUserById(list.get(i).getUserid()));
list.get(i).setProduct(productService.findProductById(list.get(i).getProid()));
}
request.setAttribute("list", list);
return new JspView("jsp. orderlist");
}
\t
@At("/addprice")
public View addprice(HttpServletRequest request){<!-- -->
User user = (User)request.getSession().getAttribute("user");
String addprice = request. getParameter("addprice");
//***
String id = request. getParameter("id");
\t\t
Product product = productService. findProductById(Integer. parseInt(id));
int jpprice = Integer.parseInt(product.getJpprice()) + Integer.parseInt(addprice);
product.setJpprice(String.valueOf(jpprice));
productService. editProduct(product);
Order order = new Order();
List<Order> listorder = orderService. findOrderByProid(product. getId());
 }
List<Message> list = messageService. findListMessage();
list = (List<Message>) PagerUtil. getPager(list, Integer. parseInt(pagerNum));
request.setAttribute("list", list);
request.setAttribute("count", list.size());
request.setAttribute("maxPager", list.size()/10 + 1);
request.setAttribute("pagerNum", pagerNum);
return new JspView("jsp. admin. message");
}

}
package cn.itbaizhan.action;

@IocBean
public class DownloadAction {<!-- -->
\t
@At("download")
public String download(HttpServletRequest request,HttpServletResponse response) throws IOException, ServletException{<!-- -->
String filePath = request. getParameter("filePath");
//"..";
if(filePath. indexOf("..")!=-1){<!-- -->
throw new ServletException("Please do the correct operation");
}
String path=filePath;
File f = new File(path);
if(f==null || !f.exists()){<!-- -->
//Log. error(path + " file not exists . ");
return null;
}
FileInputStream in = new FileInputStream(f);
response.setHeader("Content-disposition","attachment;filename=" + f.getName());
response.setContentLength((int) f.length());
ServletOutputStream out=response. getOutputStream();
out. flush();
byte[] b=new byte[1024];
int i=0;
while((i=in.read(b))>0){<!-- -->
out.write(b, 0, i);
 public View szms(HttpServletRequest request) {<!-- -->
String id = request. getParameter("id");
Product product = productService. findProductById(Integer. parseInt(id));
String price = request. getParameter("price");
String count = request. getParameter("count");
String time = request. getParameter("time");
if (count == null) {<!-- -->
count = "0";
}
product.setSfms(1);
product.setMscount(Integer.parseInt(count));
product.setMsprice(price);
product.setMsdate(time);

int i = productService. editProduct(product);

if (i == 1) {<!-- -->
request.setAttribute("msg", "Modified successfully");
} else {<!-- -->
request.setAttribute("msg", "Failed to modify");
}

String pagerNum = request. getParameter("pagerNum");
if (pagerNum == null) {<!-- -->
pagerNum = "1";
}
List<Product> list = productService. findListSpike();
request.setAttribute("count", list.size());
request.setAttribute("maxPager", PagerUtil.getMaxPager(list.size()));
list = (List<Product>) PagerUtil. getPager(list,
Integer. parseInt(pagerNum));
request.setAttribute("list", list);
request.setAttribute("pagerNum", pagerNum);
return new JspView("jsp.admin.product.spikelist");
}

@At("/qxms")
public View qxms(HttpServletRequest request) {<!-- -->
String id = request. getParameter("id");
Product product = productService. findProductById(Integer. parseInt(id));
product.setSfms(0);
product.setNewprice(null);
@IocBean
@At("/user")
public class UserAction {<!-- -->
\t
@Inject("refer: userService")
private UserService userService;
@Inject("refer: productService")
private ProductService productService;
\t
/**
* Go to login/registration page
* @param request
* @return
*/
@At("/tologin")
public View tologin(HttpServletRequest request){<!-- -->
return new JspView("jsp. login");
}
/**
* Go to the registration page
* @param request
* @return
*/
@At("/toregister")
public View to register(HttpServletRequest request){<!-- -->
return new JspView("jsp. register");
}
/**
\t * register
* @param request
* @return
*/
@At("/register")
public View register(HttpServletRequest request){<!-- -->
String username=request. getParameter("username");
String password=request. getParameter("password");
String email=request. getParameter("email");
User user = new User();
user.setUsername(username);
user.setPassword(password);
user.setEmail(email);
user = userService. addUser(user);
if(user!=null){<!-- -->
request.setAttribute("msg", "success");
}else{<!-- -->
request.setAttribute("msg", "error");
}
return new JspView("jsp. register");
 }
List<Message> list = messageService. findListMessage();
list = (List<Message>) PagerUtil. getPager(list, Integer. parseInt(pagerNum));
request.setAttribute("list", list);
request.setAttribute("count", list.size());
request.setAttribute("maxPager", list.size()/10 + 1);
request.setAttribute("pagerNum", pagerNum);
return new JspView("jsp. admin. message");
}
/**
* add message
* @param request
* @return
*/
@At("/add")
public View add(HttpServletRequest request){<!-- -->
Message message = new Message();
String name = request. getParameter("name");
String email = request. getParameter("email");
String text = request. getParameter("message");
message.setName(name);
message.setEmail(email);
message. setMessage(text);
message = messageService. addMessage(message);
if(message != null){<!-- -->
request.setAttribute("msg", "Message successful");
}else{<!-- -->
request.setAttribute("msg", "Failed to leave a message");
}
return new JspView("jsp. message");
}
/**
* add message
* @param request
* @return
*/
@At("/delete")
public View delete(HttpServletRequest request){<!-- -->
String id = request. getParameter("id");
int i = messageService.deleteMessage(Integer.parseInt(id));
if(i==1){<!-- -->
request.setAttribute("msg", "Deleted successfully");
}else{<!-- -->
request.setAttribute("msg", "Failed to delete");
}
String pagerNum = request. getParameter("pagerNum");
if(pagerNum==null){<!-- -->
 if (i == 1) {<!-- -->
request.setAttribute("msg", "Deleted successfully");
} else {<!-- -->
request.setAttribute("msg", "Failed to delete");
}
// ****
String pagerNum = request. getParameter("pagerNum");
if (pagerNum == null) {<!-- -->
pagerNum = "1";
}
List<Product> list = productService. findListProduct();
request.setAttribute("count", list.size());
request.setAttribute("maxPager", PagerUtil.getMaxPager(list.size()));
list = (List<Product>) PagerUtil. getPager(list,
Integer. parseInt(pagerNum));
request.setAttribute("list", list);
request.setAttribute("pagerNum", pagerNum);
return new JspView("jsp.admin.product.list");
}

@At("/toupdate")
public View toupdate(HttpServletRequest request) {<!-- -->
String id = request. getParameter("id");
Product product = productService. findProductById(Integer. parseInt(id));
request.setAttribute("product", product);
return new JspView("jsp.admin.product.update");
}

/**
* update pro
*
* @param request
* @return
* @throws IOException
*/
@At("/update")
@AdaptBy(type = UploadAdaptor. class, args = {<!-- --> "${app. root}/WEB-INF/tmp" })
public View update(HttpServletRequest request,
@Param("file") TempFile file, @Param("name") String name,
@Param("price") String price, @Param("content") String content,
@Param("id") String id) throws IOException {<!-- -->

Product product = productService. findProductById(Integer. parseInt(id));
product.setName(name);
product.setPrice(price);
product.setContent(content);
String changePath = product. getImg();
if (file != null) {<!-- -->
// save image to start
 return new JspView("jsp. changePsd");
}
/**
* Jump to admin to change password
* @param request
* @return
*/
@At("/toAdminChangePsd")
public View toAdminChangePsd(HttpServletRequest request){<!-- -->
return new JspView("jsp.admin.changePsd");
}
/**
\t * change Password
* @param request
* @return
*/
@At("/changePsd")
public View changePsd(HttpServletRequest request){<!-- -->
User user = (User)request.getSession().getAttribute("user");
String oldpsd = request. getParameter("oldpsd");
String newpsd = request. getParameter("newpsd");
String cpsd = request. getParameter("cpsd");
if(oldpsd.equals(user.getPassword())){<!-- -->
if(newpsd.equals(cpsd)){<!-- -->
user.setPassword(newpsd);
int i = userService. editUser(user);
if(i==1){<!-- -->
request.setAttribute("msg", "Password changed successfully");
return new JspView("jsp. changePsd");
}else{<!-- -->
request.setAttribute("msg", "Password modification failed");
return new JspView("jsp. changePsd");
}
\t\t\t\t
}else{<!-- -->
request.setAttribute("msg", "The new password is inconsistent twice");
return new JspView("jsp. changePsd");
}
\t\t\t
}else{<!-- -->
request.setAttribute("msg", "The original password is wrong");
return new JspView("jsp. changePsd");
}
\t\t
}
/**
* admin change password
* @param request
* @return
*/
@At("/adminChangePsd")
 List<Order> listorder = orderService.findOrderByProid(product.getId());
if(listorder. size()>0){<!-- -->
orderService.deleteOrder(listorder.get(0).getId());
}
order.setUserid(user.getId());
order.setProid(product.getId());
order.setCount("1");
order. setVisible(0);
order.setPrice(String.valueOf(jpprice));
orderService. addOrder(order);
//Promotion
List<Product> cxlist = productService. findCxProduct();
request.setAttribute("cxlist", cxlist);
request.setAttribute("product", product);
\t\t
Calendar c = Calendar. getInstance();
try{<!-- -->
c.setTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(product.getJpdate()));
} catch (ParseException e) {<!-- -->
e.printStackTrace();
}
long current_time = System. currentTimeMillis();
long end_time=c.getTimeInMillis();
long time=end_time-current_time;
request.setAttribute("time", time/1000);
return new JspView("jsp.jpdetail");
}
@At("/setVisible")
public View setVisible(HttpServletRequest request){<!-- -->
String id = request. getParameter("id");
User user = (User)request.getSession().getAttribute("user");
List<Order> list = orderService. findOrderByProid1(Integer. parseInt(id));
if(list. size()>0){<!-- -->
Order order = list. get(0);
order. setVisible(1);
orderService. editOrder(order);
}
\t\t
//New product launch
List<Product> newlist = productService. findNewProduct();
request.setAttribute("newlist", newlist);
//Promotion
List<Product> cxlist = productService. findCxProduct();
@SuppressWarnings("unchecked")
@IocBean
@At("/product")
public class ProductAction {<!-- -->

@Inject("refer: productService")
private ProductService productService;

/**
* Product list
*
* @param request
* @return
*/
@At("/list")
public View list(HttpServletRequest request) {<!-- -->
String pagerNum = request. getParameter("pagerNum");
@SuppressWarnings("unchecked")
@IocBean
@At("/product")
public class ProductAction {<!-- -->

@Inject("refer: productService")
private ProductService productService;

/**
* Product list
*
* @param request
* @return
*/
@At("/list")
public View list(HttpServletRequest request) {<!-- -->
String pagerNum = request. getParameter("pagerNum");
if (pagerNum == null) {
pagerNum = "1";
}
\t\t// The total amount
List list = productService. findListProduct1();
request.setAttribute("count", list.size());
request.setAttribute("maxPager", PagerUtil.getMaxPager(list.size()));
list = (List) PagerUtil. getPager(list,
Integer. parseInt(pagerNum));
request.setAttribute("list", list);
request.setAttribute("pagerNum", pagerNum);
 request.setAttribute("msg", "The new password is inconsistent twice");
return new JspView("jsp. changePsd");
}
\t\t\t
}else{<!-- -->
request.setAttribute("msg", "The original password is wrong");
return new JspView("jsp. changePsd");
}
\t\t
}
/**
* admin change password
* @param request
* @return
*/
@At("/adminChangePsd")
public View adminChangePsd(HttpServletRequest request){<!-- -->
User user = (User)request.getSession().getAttribute("user");
String newpsd = request. getParameter("newpsd");
user.setPassword(newpsd);
int i = userService. editUser(user);
if(i==1){<!-- -->
request.setAttribute("msg", "Password changed successfully");
return new JspView("jsp.admin.changePsd");
}else{<!-- -->
request.setAttribute("msg", "Password modification failed");
return new JspView("jsp.admin.changePsd");
}
}
}
package cn.itbaizhan.action;

@SuppressWarnings("unchecked")
@IocBean
@At("/message")
public class MessageAction {<!-- -->
\t
@Inject("refer: messageService")
private MessageService messageService;
 order.setCount("1");
order. setVisible(1);
order.setUserid(user.getId());
order = orderService. addOrder(order);
if(order!=null){<!-- -->
request.setAttribute("msg", "Added successfully");
}else{<!-- -->
request.setAttribute("msg", "Failed to add");
}
}
List<Order> list = orderService.getCartList(user.getId());
request.setAttribute("list", list);
int sumprice = 0;
for(int i=0;i<list. size();i ++ ){<!-- -->
list.get(i).setUser(userService.findUserById(list.get(i).getUserid()));
list.get(i).setProduct(productService.findProductById(list.get(i).getProid()));
if(sumprice==0){<!-- -->
sumprice = Integer. parseInt(list. get(i). getPrice());
}else{<!-- -->
sumprice + = Integer.parseInt(list.get(i).getPrice());
}
}
request.setAttribute("sumprice", sumprice);
request.setAttribute("count", list.size());
return new JspView("jsp. cart");
}
/**
*
* @param request
* @return
*/
@At("/changeCount")
public View changeCount(HttpServletRequest request){<!-- -->
String id = request. getParameter("id");
String count = request. getParameter("count");
Order order = orderService. findOrderById(Integer. parseInt(id));
order.setCount(count);
int price = Integer.parseInt(count)*Integer.parseInt(order.getSingleprice());
order.setPrice(String.valueOf(price));
orderService. editOrder(order);
//**
User user = (User)request.getSession().getAttribute("user");
List<Order> list = orderService.getCartList(user.getId());
request.setAttribute("list", list);
int sumprice = 0;
for(int i=0;i<list. size();i ++ ){<!-- -->
list.get(i).setUser(userService.findUserById(list.get(i).getUserid()));
list.get(i).setProduct(productService.findProductById(list.get(i).getProid()));
@SuppressWarnings("unchecked")
@IocBean
@At("/product")
public class ProductAction {<!-- -->

@Inject("refer: productService")
private ProductService productService;

/**
* Product list
*
* @param request
* @return
*/
@At("/list")
public View list(HttpServletRequest request) {<!-- -->
String pagerNum = request. getParameter("pagerNum");
if (pagerNum == null) {<!-- -->
pagerNum = "1";
}
\t\t// The total amount
List<Product> list = productService. findListProduct1();
request.setAttribute("count", list.size());
request.setAttribute("maxPager", PagerUtil.getMaxPager(list.size()));
list = (List<Product>) PagerUtil. getPager(list,
Integer. parseInt(pagerNum));
request.setAttribute("list", list);
request.setAttribute("pagerNum", pagerNum);
return new JspView("jsp.admin.product.list");
}

/**
* Jump to add product page
*
* @param request
* @return
*/
@At("/toadd")
public View toadd(HttpServletRequest request) {<!-- -->
return new JspView("jsp.admin.product.add");
}

/**
@SuppressWarnings("unchecked")
@IocBean
@At("/message")
public class MessageAction {<!-- -->
\t
@Inject("refer: messageService")
private MessageService messageService;
\t
/**
\t * Message List
* @param request
* @return
*/
@At("/list")
public View tologin(HttpServletRequest request){<!-- -->
String pagerNum = request. getParameter("pagerNum");
if(pagerNum==null){<!-- -->
pagerNum = "1";
}
List<Message> list = messageService. findListMessage();
list = (List<Message>) PagerUtil. getPager(list, Integer. parseInt(pagerNum));
request.setAttribute("list", list);
request.setAttribute("count", list.size());
request.setAttribute("maxPager", list.size()/10 + 1);
request.setAttribute("pagerNum", pagerNum);
return new JspView("jsp. admin. message");
}
/**
* add message
* @param request
* @return
*/
@At("/add")
public View add(HttpServletRequest request){<!-- -->
Message message = new Message();
String name = request. getParameter("name");
String email = request. getParameter("email");
String text = request. getParameter("message");
message.setName(name);
message.setEmail(email);
message. setMessage(text);
 String id = request. getParameter("id");
Product product = productService. findProductById(Integer. parseInt(id));
request.setAttribute("product", product);
return new JspView("jsp.admin.product.szjp");
}

@At("/szjp")
public View szjp(HttpServletRequest request) {<!-- -->
String id = request. getParameter("id");
Product product = productService. findProductById(Integer. parseInt(id));
String price = request. getParameter("price");
String time = request. getParameter("time");
product.setSfjp(1);
product.setJpprice(price);
product.setJpdate(time);

int i = productService. editProduct(product);

if (i == 1) {<!-- -->
request.setAttribute("msg", "Modified successfully");
} else {<!-- -->
request.setAttribute("msg", "Failed to modify");
}

String pagerNum = request. getParameter("pagerNum");
if (pagerNum == null) {<!-- -->
pagerNum = "1";
}
List<Product> list = productService. findListSpike();
request.setAttribute("count", list.size());
request.setAttribute("maxPager", PagerUtil.getMaxPager(list.size()));
list = (List<Product>) PagerUtil. getPager(list,
Integer. parseInt(pagerNum));
request.setAttribute("list", list);
request.setAttribute("pagerNum", pagerNum);
return new JspView("jsp.admin.product.promolist");
}

@At("/qxjp")
public View qxjp(HttpServletRequest request) {<!-- -->
String id = request. getParameter("id");
Product product = productService. findProductById(Integer. parseInt(id));
product.setSfjp(0);
product.setQpprice(null);
product.setJpdate(null);
product.setJpprice(null);
int i = productService. editProduct(product);
if (i == 1) {<!-- -->
request.setAttribute("msg", "Modified successfully");
} else {<!-- -->
request.setAttribute("msg", "Failed to modify");
}
 * @param request
* @return
*/
@At("/adminlogout")
public View adminlogout(HttpServletRequest request){<!-- -->
request.getSession().setAttribute("user", null);
return new JspView("jsp.admin.login");
}
/**
* logout
* @param request
* @return
*/
@At("/logout")
public View logout(HttpServletRequest request){<!-- -->
request.getSession().setAttribute("user", null);
//New product launch
List<Product> newlist = productService. findNewProduct();
request.setAttribute("newlist", newlist);
//Promotion
List<Product> cxlist = productService. findCxProduct();
request.setAttribute("cxlist", cxlist);
return new JspView("jsp. index");
}
/**
* Jump to change password
* @param request
* @return
*/
@At("/tochangePsd")
public View tochangePsd(HttpServletRequest request){<!-- -->
return new JspView("jsp. changePsd");
}
/**
* Jump to admin to change password
* @param request
* @return
*/
@At("/toAdminChangePsd")
public View toAdminChangePsd(HttpServletRequest request){<!-- -->
return new JspView("jsp.admin.changePsd");
}
/**
\t * change Password

Please add picture description

Please add picture description
Please add picture description
Please add picture description