丽江文化旅游学院易腾创想Java实训第2组总结

这篇博客介绍了在一个Java Web项目中,小组成员分工合作完成登录、收藏和购票功能的实现。登录模块核心代码展示了使用Spring MVC进行用户验证并重定向。收藏功能通过CollectController实现了添加和删除收藏。购票功能在OrderController中实现,涉及订单保存和查询。此外,作者分享了实训过程中的学习体会,强调了团队合作、理论与实践结合的重要性,以及个人技能的提升。
摘要由CSDN通过智能技术生成

小组成员分工

wusiyu:主要完成项目的创建,登录模块,收藏模块的代码实现
zhangjunchi:主要完成登录模块,收藏模块的需求分析以及测试
huangyiping:主要完成订单模块的需求分析以及测试
leienze:主要完成了订单模块的数据层,业务层的代码实现
yuchangsen:主要完成了项目配置,maven配置,tomcat部署连接数据库
zhangjunjie:主要完成了项目数据库的数据导入,登录功能代码实现

项目介绍

登录界面:
在这里插入图片描述登录功能的核心代码:

@Controller
@RequestMapping("user")
public class UserController {
    @Autowired
    private UserService userService;
    @PostMapping("login")
    public String getUser(User user, HttpServletRequest request, HttpSession session){
        User u = userService.getUserByUserNameAndPassword(user);
        System.out.println(u);
        if (u!=null){
            System.out.println("登录成功");
            session.setAttribute("user",u);
            String path="redirect:attraction/list";
            return path;
        }else {
            return "front/login";
        }
    }
}

登录成功后,会重定向到/attraction/list,首页如下图:
在这里插入图片描述相关代码:

@RequestMapping("/list")
    public String getAttractions(HttpServletRequest request, @RequestParam(required = true, name = "page", defaultValue = "1") Integer page) {
        //page:表示查询第几页;8:表示每页显示的数量
        PageHelper.startPage(page, 8);
        List<Attraction> attractions = attractionService.getAttractions();
        //将attractions封装至PageInfo;5表示分页导航的最大页码数。
        PageInfo<Attraction> pageInfo = new PageInfo<>(attractions, 5);
        request.setAttribute("pageInfo", pageInfo);
        //------------------以下为验证打印信息------------------
        System.out.println("当前页: " + pageInfo.getPageNum());
        System.out.println("总页码: " + pageInfo.getPages());
        System.out.println("总条数: " + pageInfo.getTotal());
        System.out.println("每页显示的条数: " + pageInfo.getPageSize());
        List<Attraction> list = pageInfo.getList();
        for(int i=0;i<list.size();i++){
            Attraction attraction = list.get(i);
            System.out.println(attraction);
        }
        //------------------以上为验证打印信息------------------

        return "front/attraction";
    }

收藏功能效果图:
在这里插入图片描述

收藏功能的核心代码:

@Controller
@RequestMapping("collect")
public class CollectController {
    @Autowired
    private CollectService collectService;

    @PostMapping("/on")
    public String on(Collect collect, @RequestParam(name="from",required = true)String from,HttpSession session){
        boolean on = collectService.saveCollect(collect);
        if (on){
            session.setAttribute("message","收藏成功");
        }else {
            session.setAttribute("message","收藏失败");
        }
        return "redirect:"+from;
    }

    @PostMapping("/off")
    public String off(Collect collect, @RequestParam(name="from",required = true)String from,HttpSession session){
        boolean off = collectService.deleteCollect(collect);
        if (off){
            session.setAttribute("message","取消收藏成功");
        }else {
            session.setAttribute("message","取消收藏失败");
        }
        return "redirect:"+from;
    }
}

购票效果图
在这里插入图片描述购票的核心代码:

@Controller
@RequestMapping("order")
public class OrderController {
    @Autowired
    private OrderService orderService;
    @Autowired
    private AttractionService attractionService;

    @Transactional
    @PostMapping("buy")
    public String buy(Order order, @RequestParam(name = "from", required = true) String from, HttpSession session) {
        System.out.println(order);
        //type:订单类型:1:景点订单;2:酒店订单;3:攻略订单
        if (order.getType() == Type.attraction) {
            Attraction attraction = attractionService.getAttractionById(order.getOid());
            if (orderService.saveOrder(order)) {
                session.setAttribute("message", "购买成功");
            } else {
                session.setAttribute("message", "购买失败,你今天已经购买过景点门票了哦!");
            }
        }
        return "redirect:" + from;
    }
}

学习总结

此次只实训了短短的5天。虽说时间很短,但其中的每一天都使我们收获很大、受益匪浅,赖老师帮我们加深了对一些理论知识的理解,不仅使我们在理论上对Java有了全新的认识,在实践能力上也得到了提高。

我们第一次体会到Java 工程师的工作是什么样子的,也发现了很多不曾注意到的细节,在实训的演示过程中,我对作为一名Java工程师注意的事项应该从小事做起、从基本做起。把职业能力训练与职业素质有机的结合起来,真正地做到了学以致用,更学到了很多做人的道理,对我来说受益非浅。

除此以外,我们知道了什么叫团队,怎样和团队分工合作;同时我们还学会了如何更好地与别人沟通,如何更好地去陈述自己的观点。这也是第一次让我亲身感受到理论与实际的相结合,让我大开眼界。也是对以前所学知识的一个初审吧!这次实训对于我们以后学习、找工作也是受益菲浅的,在短短的5天中相信这些宝贵的经验会成为我们今后成功的重要的基石;这对于我们的学业,乃至我以后人生的影响无疑是极其深远的。最后感谢赖老师对我们的细心指导!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一个双子座的Java攻城狮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值