Java 实战项目锤炼之网上图书商城与后台管理系统的实现流程

网友投稿 530 2022-11-23

Java 实战项目锤炼之网上图书商城与后台管理系统的实现流程

Java 实战项目锤炼之网上图书商城与后台管理系统的实现流程

一、项目简述(附带IW文档)

功能: 前台: * 用户模块 * 分类模块 * 图书模块 * 购物车模块 * 订单模块

后台: * 管理员模块 * 分类管理模块 * 图书管理模块 * 订单模块

二、项目运行

环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)

项目技术: jsP + C3P0+ Servlert + html+ css + javascript + jquery + Ajax + Fileupload等等。

购物城模块控制器代码:

/**

* @Description: 购物城模块控制器

*/

@RestController

@RequestMapping("/cart")

public class ShoppingCartController {

@Autowired

private ShoppingCartService shoppingCartService;

/**

* 根据用户ID获取该用户的购物车

http:// * @param session

* @return

*/

@GetMapping("/list")

public ResultVO getCartByUserId(HttpSession session) {

User user = (User) session.getAttribute("user");

List carts = shoppingCartService.getShoppingCartsByUserId(user.getUserId());

return new ResultVO(ResultCode.SUCCESS, carts);

}

/**

* 更新购物车的商品数量

* @param cartId 购物车Id

* @param quantity 商品购买数量

* @retuhttp://rn

*/

@PutMapping("/list/{cartId}")

public ResultVO updateCartItem(@PathVariable("cartId") Integer cartId,Integer quantity) {

if(quantity<=0){

throw new CustomizeException(ResultCode.FAILED,"购物数量必须大于0");

}

if(quantity>10){

throw new CustomizeException(ResultCode.FAILED,"每件商品限购10件");

}

ShoppingCart cart = new ShoppingCart();

cart.setCartId(cartId);

cart.setQuantity(quantity);

shoppingCartService.updateShoppingCart(cart);

return new ResultVO(ResultCode.SUCCESS);

}

/**

* 添加到购物车请求处理

*

* @param cart 接收前台传来的参数

* @return

*/

@PostMapping("/list")

public ResultVO addToShoppingCart(@Valid ShoppingCart cart, HttpSession session) {

User user = (User) session.getAttribute("user");

cart.setUserId(user.getUserId());

shoppingCartService.addToShoppingCart(cart);

return new ResultVO(ResultCode.SUCCESS);

}

/**

* 删除前台传来的cartId的购物车项

* @param cartId

* @return

*/

@DeleteMapping("/list/{cartId}")

public ResultVO deleteCartItem(@PathVariable("cartId") Integer cartId) {

shoppingCartService.deleteShoppingCartByCartId(cartId);

return new ResultVO(ResultCode.SUCCESS);

}

/**

* 批量删除购物车

* @param cartIds

* @return

*/

@DeleteMapping("/list")

public ResultVO deleteCartItem(@RequestBody int[] cartIds) {

shoppilwXIRVngCartService.deleteShoppingCarts(cartIds);

return new ResultVO(ResultCode.SUCCESS);

}

}

登录注册模块的控制器代码:

/**

* @Description: 登录注册模块的控制器

*/

@Controller

public class LoginRegisterController {

@Autowired

private LoginRegisterService loginRegisterService;

/**

* 用户登录请求处理

* @param user

* @return

*/

@PostMapping("/user/login")

@ResponseBody

public ResultVO userLoginHandler(@RequestBody @Valid User user, HttpSession session) {

loginRegisterService.userLogin(user,session);

return new ResultVO(ResultCode.SUCCESS,"/");

}

/**

* 用户注册请求处理

* @param user

* @return

*/

@PostMapping("/user/register")

@ResponseBody

public ResultVO userRegisterHandler(@RequestBody @Valid User user) {

loginRegisterService.userRegister(user);

return new ResultVO(ResultCode.SUCCESS,"/login");

}

/**

* 管理员登录请求处理

* @param admin

* @return

*/

@PostMapping("/admin/login")

@ResponseBody

public ResultVO adminLoginHandler(@RequestBody Admin admin, HttpSession session) {

if(!("admin".equals(admin.getAdminName())&& "123456".equals(admin.getPassword()))){

throw new CustomizeException(ResultCode.FAILED,"管理员账户或密码错误");

}

session.setAttribute("admin",admin);

return new ResultVO(ResultCode.SUCCESS,"/admin/book_manage");

}

/**

* 用户退出

* @param session

* @return

*/

@GetMapping("/logout")

public String userLogout(HttpSession session){

session.removeAttribute("user");

return "redirect:/login";

}

/**

* 后台管理退出

* @param session

* @return

*/

@GetMapping("/admin/logout")

public String adminLogout(HttpSession session){

session.removeAttribute("admin");

return "redirect:/";

}

@GetMapping("/checkLoggedIn")

@ResponseBody

public ResultVO checkUserIsLoggedIn(HttpSession sesshttp://ion) {

if (session.getAttribute("user") == null) {

throw new CustomizeException(ResultCode.USER_NOT_LOGGED_IN);

}

return new ResultVO(ResultCode.SUCCESS);

}

}

以上就是java 实战项目锤炼之网上图书商城与后台管理系统的实现流程的详细内容,更多关于Java 图书商城的资料请关注我们其它相关文章!

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:js中的Object.defineProperties
下一篇:vite2 + Vue3中axios的封装,代理
相关文章

 发表评论

暂时没有评论,来抢沙发吧~