Extrait technologique pouvant être utilisé pour créer des sites EC dans la formation Java

Paramètres utilisés cette fois

build.gradle

dependencies {
	compile('org.springframework.boot:spring-boot-starter-data-jpa')
	compile('org.springframework.boot:spring-boot-starter-thymeleaf')
	compile('org.springframework.boot:spring-boot-starter-web')
	providedRuntime('org.springframework.boot:spring-boot-starter-tomcat')
	compile('mysql:mysql-connector-java')
}

Conserver les informations de connexion

Il est pratique d'emballer dans une session pour transporter les informations de connexion

@SessionScope
@Component
public class AccountModel {
	private String id;
	private String name;
}
@Controller
public class MainController {

	@Autowired
	private AccountModel accountModel;
	
	/**
 * Processus de connexion
	 * @param model
	 * @param id
	 * @param post
	 * @return
	 */
	@RequestMapping("login")
	public String login(Model model,@RequestParam("id") String id,@RequestParam("pass") String pass) {
		accountModel.setId(id);
 // Vérification du mot de passe TODO
		return "shop";
	}
}
  <form method="post" th:action="@{login}">
  	<input type="text" name="id" />
  	<input type="text" name="pass" />
 <button> Connexion </ bouton>
  </form>

Avec cela, vous pouvez le vérifier chaque fois que vous vous connectez pour la première fois. Si vous ne vérifiez pas et ne conservez pas les informations de session au moment de l'achat, vous pouvez passer à l'écran d'enregistrement des informations personnelles.

Recherche de données

Voir ci-dessous pour les règles de dénomination des méthodes implémentées automatiquement dans SpringDataJPA [Spring Data JPA] Règles de dénomination pour les méthodes implémentées automatiquement

@Entity
@Table(name="item")
public class Item {
	@Id
	@GeneratedValue
	private int id;
	private String name;
	private int price;
}
public interface ItemRepos extends JpaRepository<Item, Integer> {
	/**
	 * select * from item where name like %{name}%
	 * @param name
	 * @return
	 */
	public List<Item> findByNameContains(String name);
}
@Controller
public class MainController {

	@Autowired
	private ItemRepos itemRepos;

	/**
 * Processus de recherche
	 * @param model
	 * @param name
	 * @return
	 */
	@RequestMapping("search")
	public String search(Model model,@RequestParam("name") String name) {
		List<Item> itemList = itemRepos.findByNameContains(name);
		model.addAttribute("itemList", itemList);
		return "shop";
	}

}
  <form method="post" th:action="@{search}">
  		<input type="text" name="name"/>
 <button> Recherche </ bouton>
  </form>

Enregistrement des données

JpaRepository # save effectue la mise à jour si pk est dupliqué, et l'insère sinon.

	/**
 * processus d'inscription
	 * @param model
	 * @param name
	 * @param price
	 * @return
	 */
	@RequestMapping("submit")
	public String submit(Model model,@RequestParam("name") String name,@RequestParam("price") String price) {
		Item item = new Item();
		item.setName(name);
		item.setPrice(Integer.valueOf(price));
		itemRepos.save(item);
		return "shop";
	}

Mise en garde

Puisque nous supposons la formation cette fois, nous n'avons pas implémenté de parties détaillées, mais il y a de nombreux points à considérer tels que la vérification de la valeur d'entrée et la séparation de la couche de traitement.

Recommended Posts

Extrait technologique pouvant être utilisé pour créer des sites EC dans la formation Java
Résumé de l'ORM "uroboroSQL" qui peut être utilisé dans le Java d'entreprise
Ecrire une classe qui peut être ordonnée en Java Un petit mémo standard
Touches de raccourci pratiques pour Eclipse
Problèmes facilement confondus avec Java et JavaScript
Java (édition super débutante) compréhensible en 180 secondes
[Java 8] Méthode de tri par ordre alphabétique et par ordre de longueur de chaîne de caractères pouvant être utilisée dans les tests de codage
Mémo de référence / serveur LDAP en mémoire pouvant être intégré à Java
Outil d'analyse statique pouvant être utilisé avec GitHub [version Java]
Notez que les propriétés système, y compris JAXBContext, ne peuvent pas être utilisées dans Java11
J'ai posé une question qui peut être utilisée pour des entretiens techniques
SwiftUI View qui peut être utilisé en combinaison avec d'autres frameworks
[Java 8] Jusqu'à la conversion de l'entrée standard qui peut être utilisée dans les tests de codage en une liste ou un tableau
Traitement d'entrée / sortie de fichier Java pouvant être utilisé via l'historique
Code Java qui ne peut pas être utilisé depuis Kotlin (pour les sessions d'étude en interne)
[Spring Boot] Liste des règles de validation qui peuvent être utilisées dans le fichier de propriétés pour les messages d'erreur
[Android Studio] Description qui peut être saisie en continu dans la base de données SQLite [Java]
[Android] Je souhaite créer un ViewPager pouvant être utilisé pour les didacticiels
J'ai créé un client API THETA qui peut être utilisé pour le développement de plugins
Techniques de lecture du code source Java dans Eclipse
Organiser les méthodes qui peuvent être utilisées avec StringUtils
L'histoire du port devenant inutilisable dans l'exemple de programme Spring Boot
Interface fonctionnelle de base compréhensible en 3 minutes
Ceci et cela pour éditer ini en Java. : inieditor-java
[Java] explique ConcurrentModificationException qui se produit dans java.util.ArrayList pour les nouveaux arrivants
À propos du problème que hidden_field peut être utilisé de manière insensée
Ruby on Rails 5 guide pratique d'apprentissage rapide qui peut être utilisé sur le terrain Résumé
Introduction de jQuery-jusqu'à ce qu'il puisse être utilisé (enregistrement exécuté en préparation pour une communication asynchrone) haml
Créer un contrôle de page qui peut être utilisé avec RecyclerView
Créez un fichier jar qui peut être exécuté sur Gradle
Le cas où @Autowired n'a pas pu être utilisé dans JUnit5
Base de données Firebase-Realtime sur Android pouvant être utilisée avec copie
[Question] Nullif peut-il être utilisé dans la fonction de comptage de JPQL?
Introduction à Rakefile qui peut être effectuée en 10 minutes environ
Nouvelles fonctionnalités de Java 14 pouvant être utilisées pour écrire du code
Si les options peuvent être utilisées en raison des différentes versions de Java
Outils et commandes pouvant être utiles pour le dépannage Java
Comment créer une paire de clés d'ecdsa dans un format lisible par Java