JavaWeb Dark Horse Travel Network-Study Notes 09【Tour Route Collection】

  1. JavaWeb Dark Horse Travel Network-Study Notes 01 [Preparation]
  2. JavaWeb Dark Horse Travel Network-Study Notes 02 [Registration Function]
  3. JavaWeb Dark Horse Travel Network-Study Notes 03 [Login and Logout Function]
  4. JavaWeb Dark Horse Travel Network-Study Notes 04 [BaseServlet Extraction]
  5. JavaWeb Dark Horse Travel Network-Study Notes 05 [Classified Data Display Function]
  6. JavaWeb Dark Horse Travel Network-Study Notes 06【Tour Route Pagination Display Pagination Display】
  7. JavaWeb Dark Horse Travel Network-Study Notes 07【Tour Route Inquiry】
  8. JavaWeb Dark Horse Travel Network-Study Notes 08【Tour Route Details】
  9. JavaWeb Dark Horse Travel Network-Study Notes 09【Tour Route Collection】
  10. JavaWeb Dark Horse Travel Network-Study Notes 10 [Project Code]

table of Contents

46-Tourist Route Collection_Analysis

Determine whether the currently logged-in user has bookmarked the line

47-Travel Route Collection_Determine whether to Collection_Background Code

RouteServlet.java

FavoriteService.java

FavoriteDao.java

48-Travel route collection_determine whether to collect_front desk code

49-Travel Route Collection_Dynamic Display of Collection Times

50-Travel route collection_click the button collection_analysis

51-Travel route collection_click the button collection_background code

RouteServlet.java

52-Travel route collection_click button collection_front desk code

53-Travel route collection_click button collection_optimization of front desk effect

RouteServlet.java

FavoriteService.java

FavoriteDao.java


46-Tourist Route Collection_Analysis

 

Determine whether the currently logged-in user has bookmarked the line

When the page is loaded, send an ajax request to get the mark of whether the user is favorite.

According to the mark, display different button styles.

47-Travel Route Collection_Determine whether to Collection_Background Code

RouteServlet.java

package cn.itcast.travel.web.servlet;

import cn.itcast.travel.domain.PageBean;
import cn.itcast.travel.domain.Route;
import cn.itcast.travel.domain.User;
import cn.itcast.travel.service.FavoriteService;
import cn.itcast.travel.service.RouteService;
import cn.itcast.travel.service.impl.FavoriteServiceImpl;
import cn.itcast.travel.service.impl.RouteServiceImpl;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet("/route/*")
public class RouteServlet extends BaseServlet {
    private RouteService routeService = new RouteServiceImpl();

    private FavoriteService favoriteService = new FavoriteServiceImpl();

    /**
     * 判断当前登录用户是否收藏过该线路
     *
     * @param request
     * @param response
     * @throws ServletException
     * @throws IOException
     */
    public void isFavorite(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //1. 获取线路id
        String rid = request.getParameter("rid");
        //2. 获取当前登录的用户 user
        User user = (User) request.getSession().getAttribute("user");
        int uid;//用户id
        if (user == null) {
            //用户尚未登录
            uid = 0;
        } else {
            //用户已经登录
            uid = user.getUid();
        }
        //3. 调用FavoriteService查询是否收藏
        boolean flag = favoriteService.isFavorite(rid, uid);
        //4. 写回客户端
        writeValue(flag, response);
    }
}

FavoriteService.java

package cn.itcast.travel.service;

public interface FavoriteService {
    /**
     * 判断是否收藏
     *
     * @param rid
     * @param uid
     * @return
     */
    public boolean isFavorite(String rid, int uid);

    /**
     * 添加收藏
     *
     * @param rid
     * @param uid
     */
    void add(String rid, int uid);
}

FavoriteDao.java

package cn.itcast.travel.dao;

import cn.itcast.travel.domain.Favorite;

public interface FavoriteDao {
    /**
     * 根据rid和uid查询收藏信息
     *
     * @param rid
     * @param uid
     * @return
     */
    public Favorite findByRidAndUid(int rid, int uid);

    /**
     * 根据rid 查询收藏次数
     *
     * @param rid
     * @return
     */
    public int findCountByRid(int rid);

    /**
     * 添加收藏
     *
     * @param i
     * @param uid
     */
    void add(int i, int uid);
}

48-Travel route collection_determine whether to collect_front desk code

49-Travel Route Collection_Dynamic Display of Collection Times

50-Travel route collection_click the button collection_analysis

51-Travel route collection_click the button collection_background code

RouteServlet.java

package cn.itcast.travel.web.servlet;

import cn.itcast.travel.domain.PageBean;
import cn.itcast.travel.domain.Route;
import cn.itcast.travel.domain.User;
import cn.itcast.travel.service.FavoriteService;
import cn.itcast.travel.service.RouteService;
import cn.itcast.travel.service.impl.FavoriteServiceImpl;
import cn.itcast.travel.service.impl.RouteServiceImpl;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet("/route/*")
public class RouteServlet extends BaseServlet {
    private RouteService routeService = new RouteServiceImpl();

    private FavoriteService favoriteService = new FavoriteServiceImpl();

    /**
     * 添加收藏
     *
     * @param request
     * @param response
     * @throws ServletException
     * @throws IOException
     */
    public void addFavorite(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //1. 获取线路rid
        String rid = request.getParameter("rid");
        //2. 获取当前登录的用户
        User user = (User) request.getSession().getAttribute("user");
        int uid;//用户id
        if (user == null) {
            //用户尚未登录
            return;
        } else {
            //用户已经登录
            uid = user.getUid();
        }
        //3. 调用service添加
        favoriteService.add(rid, uid);
    }
}

52-Travel route collection_click button collection_front desk code

53-Travel route collection_click button collection_optimization of front desk effect

RouteServlet.java

/**
 * 添加收藏
 *
 * @param request
 * @param response
 * @throws ServletException
 * @throws IOException
 */
public void addFavorite(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    //1. 获取线路rid
    String rid = request.getParameter("rid");
    //2. 获取当前登录的用户
    User user = (User) request.getSession().getAttribute("user");
    int uid;//用户id
    if (user == null) {
        //用户尚未登录
        return;
    } else {
        //用户已经登录
        uid = user.getUid();
    }
    //3. 调用service添加
    favoriteService.add(rid, uid);
}

FavoriteService.java

package cn.itcast.travel.service;

public interface FavoriteService {
    /**
     * 添加收藏
     *
     * @param rid
     * @param uid
     */
    void add(String rid, int uid);
}

FavoriteDao.java

package cn.itcast.travel.dao;

import cn.itcast.travel.domain.Favorite;

public interface FavoriteDao {
    /**
     * 添加收藏
     *
     * @param i
     * @param uid
     */
    void add(int i, int uid);
}

You have to do your best to protect your dreams. Those who laugh at your dreams, because they are bound to fail, they want to make you the same person as them. --- "When happiness comes knocking on the door"

Guess you like

Origin blog.csdn.net/weixin_44949135/article/details/114293637