Implémentation d'une fonction similaire en Java

iineko.PNG

Il semble qu'il vaut mieux produire de plus en plus, donc je publierai la première application similaire que j'ai créée. Fabriqué avec le modèle MVC.

Aperçu

Cliquez sur l'image pour la voir! Augmentera. La valeur est stockée dans la portée de l'application. https://iineko.herokuapp.com

Où j'ai eu du mal

  1. J'ai eu du mal parce que je ne savais pas comment envoyer une valeur depuis HTML sans transition d'écran. Comment envoyer des valeurs en HTML sans transition d'écran

  2. Même si vous appuyez sur J'aime, ce ne sera pas plus de 1. Comme il était nouveau à chaque fois qu'il était aimé, j'ai mis le premier jugement de départ.

  3. Je ne savais pas comment passer une instance à travers les classes. Dans YoineServelet.java, Yoine y = new Yoine (); Ajouter 1 J'aime à Yoine y dans YoineLogic.java Je voulais l'installer dans Yoine.java Je m'inquiétais de ce qu'il fallait faire si je faisais un nouveau avec Yoine Servelet et un nouveau avec Yoine Logic, cela deviendrait une autre instance. ↓ Changé pour recevoir le type Yoine comme argument dans Yoine Logic.

Code source

model

Yoine.java


package model;

import java.io.Serializable;

public class Yoine implements Serializable {
	private int yoineCount = 0;

	public void setYoineCount(int yoineCount) {
		this.yoineCount = yoineCount;
	}

	public int getYoineCount() {
		return yoineCount;
	}
}

YoineLogic.java


package model;

public class YoineLogic {

	public void yoinePlus(Yoine y) {
		int count = y.getYoineCount();
		count++;
		y.setYoineCount(count);
	}
}

View

yoineView.jsp


<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<style type="text/css">
<!--
   div.ta0 {text-align: left;}
   div.ta1 {text-align: center;}
   div.ta2 {text-align: right;}
   div.ta3 {text-align: justify;}
-->
</style>
<title>Bon chat! !! !!</title>
</head>
<body>
<div class="ta1">
<p><a href="/iine/YoineServlet?action=yoine">
<img src="/iine/finger-163689_640.jpg " alt="Comme c'est gentil!" width="300" height="200"></a>
<a href="/iine/YoineServlet?action=yoine">
<img src="/iine/2cat-323262_1280.jpg " alt="Comme c'est gentil!" width="300" height="200"></a>
</p>
<p><font size="5"><b>Bon chat! :${yoine.yoineCount}</b></font></p>
</div>
</body>
</html>

Controller

YoineServlet.java


package servlet;

import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import model.Yoine;
import model.YoineLogic;

/**
 * Servlet implementation class YoineServlet
 */
@WebServlet("/YoineServlet")
public class YoineServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;

	/**
	 * @see HttpServlet#HttpServlet()
	 */
	public YoineServlet() {
		super();
		// TODO Auto-generated constructor stub
	}

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		//Traitement pour déterminer le premier démarrage
		//Tirez parti de la portée de l'application
		ServletContext sc = this.getServletContext();
		Yoine y = (Yoine) sc.getAttribute("yoine");

		//Poursuite du jugement de départ initial
		//S'il n'y a pas de valeur dans la portée de l'application, nouveau
		if(y == null) {
			y = new Yoine();
			sc.setAttribute("yoine", y);
		}

		//Obtenir les paramètres de la demande
			request.setCharacterEncoding("UTF-8");
			String yoine = request.getParameter("action");


		//Si le bouton similaire est enfoncé
		if (yoine != null) {

			//Ajoutez des likes avec Yoine Logic
			YoineLogic yl = new YoineLogic();
			yl.yoinePlus(y);

			//Enregistrer le nombre de likes dans la portée de l'application
			sc.setAttribute("yoine", y);
		}

		//vers l'avant
		RequestDispatcher rd = request.getRequestDispatcher("/yoineView.jsp");
		rd.forward(request, response);

	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

	}

}

Recommended Posts

Implémentation d'une fonction similaire en Java
Implémentation d'une fonction similaire (Ajax)
[Rails] Implémentation d'une fonction similaire
Implémentation Java de tri-tree
[Rails] Implémentation asynchrone de la fonction similaire
Mise en place de la fonction de tri des rails (affichés par ordre de nombre de like)
Implémentation de DBlayer en Java (RDB, MySQL)
[Ruby on rails] Implémentation d'une fonction similaire
Implémentation de l'interpréteur par Java
Implémentation Boyer-Moore en Java
Implémentation du tri de tas (en java)
Mise en œuvre de la fonction de pagénation
Créons une application TODO en Java 4 Implémentation de la fonction de publication
Créons une application TODO en Java 8 Implémentation des fonctions d'édition
[JQuery] Procédure d'implémentation de la fonction de saisie semi-automatique [Java / Spring]
Implémentation de la fonction de recherche séquentielle
Implémentation de la fonction de prévisualisation d'image
[Java] Implémentation du réseau Faistel
Mise en œuvre de la fonction déroulante de catégorie
[Rails] Implémentation de la fonction tutoriel
Implémentation de HashMap avec kotlin
[Rails] Implémentation de la fonction d'importation CSV
[Rails] Implémentation de la fonction de prévisualisation d'image
[Rails] Implémentation de la fonction de retrait utilisateur
[Rails] Implémentation de la fonction d'exportation CSV
Implémenter la fonction PHP implode en Java
Liste des membres ajoutés dans Java 9
Liste des types ajoutés dans Java 9
Erreur rencontrée lors de l'implémentation de la fonction de balisage
[Rails] Implémentation d'une nouvelle fonction d'enregistrement au format assistant à l'aide de devise
Mécanisme et caractéristiques de la classe d'implémentation Collection souvent utilisés en Java
Implémentation de la méthode de clonage pour Java Record
Obtenez le résultat de POST en Java
Implémentation de la fonction d'authentification des utilisateurs à l'aide de devise (2)
Implémentation du traitement asynchrone compatible multi-tenant dans Tomcat
Diverses choses comme les indicateurs de bits en Java
Implémentation de la fonction d'authentification des utilisateurs à l'aide de devise (1)
Rails [Pour les débutants] Implémentation de la fonction de commentaire
Implémentation de la fonction d'authentification des utilisateurs à l'aide de devise (3)
Fonction de conversion d'objet de liste immuable (immuable) dans Java8
Implémenter quelque chose comme une pile en Java
L'histoire de l'écriture de Java dans Emacs
Rôle de JSP dans les applications Web [Java]
Discrimination d'énum dans Java 7 et supérieur
Implémentation de la fonction DM
Partition en Java
Changements dans Java 11
Janken à Java
Ceci et cela de la mise en œuvre du jugement en temps réel des dates en Java
Comparaison des méthodes d'implémentation de thread en Java et de la méthode d'expression lambda
Taux circonférentiel à Java