Pour résoudre le code tronqué JSP, vous devez d'abord comprendre les raisons du code tronqué JSP.
1. Lors de la configuration du serveur et de l'installation de MYSQL, il vous sera demandé de choisir un encodage si cet encodage est incohérent avec votre page Web. peut entraîner une déformation de la page JSP.
2. Lors de la création d'une base de données dans des systèmes tels que PHPMYADMIN ou mysql-front, il vous sera demandé de choisir un encodage. Si cet encodage n'est pas cohérent avec votre page Web, cela peut également provoquer des pages JSP tronquées.
3. Lors de la création d'un tableau, il vous sera demandé de choisir un encodage. Si cet encodage est incohérent avec l'encodage de votre page Web, cela peut également entraîner une déformation de la page JSP.
4. Vous pouvez choisir l'encodage lors de l'ajout de champs lors de la création d'un tableau. Si cet encodage n'est pas cohérent avec l'encodage de votre page Web, cela peut également entraîner une déformation de la page JSP.
5. L'encodage de la page JSP soumise par l'utilisateur n'est pas cohérent avec l'encodage de la page JSP qui affiche les données, ce qui entraînera certainement une déformation de la page JSP.
Par exemple, la page JSP où l'utilisateur saisit les données est en code big5, mais la page JSP où l'entrée utilisateur est affichée est en gb2312. Cela entraînera une déformation à 100 % de la page JSP.
6. Veuillez noter que le jeu de caractères est incorrect :
1. Le texte que vous voyez habituellement sur certains sites Web peut avoir plusieurs encodages. Par exemple, si vous voyez un caractère chinois traditionnel, il peut s'agir d'un encodage big5, d'un encodage utf-8 ou d'un encodage gb. c'est-à-dire qu'il existe des caractères chinois traditionnels codés en chinois simplifié, et il existe également des caractères chinois simplifiés codés en chinois traditionnel. Vous devez comprendre cela.
Si vous créez une page Web avec un codage en chinois simplifié, le codage est défini sur GB2312. Si les visiteurs de Hong Kong et de Taiwan soumettent des informations en chinois traditionnel, cela peut entraîner des codes tronqués. La solution est (1) Définir le codage du site Web sur utf-8. , afin qu'il soit compatible avec tous les caractères du monde. (2) Si le site Web fonctionne depuis longtemps et contient de nombreuses données anciennes et que les paramètres du chinois simplifié ne peuvent pas être modifiés, il est recommandé de configurer la page. encodage en GBK.
La différence entre GBK et GB2312 est que GBK peut afficher plus de caractères que GB2312. Pour afficher les caractères traditionnels en code simplifié, vous ne pouvez utiliser que GBK.
7.Le codage spécifié dans l'instruction de connexion JSP à la base de données MYSQL est incorrect.
8. Si la page JSP ne spécifie pas l'encodage pour la soumission des données, cela entraînera un code tronqué :
Par conséquent, les raisons du code JSP tronqué ne sont rien de plus que celles ci-dessus. Après avoir connu les raisons, il est beaucoup plus facile de résoudre le code JSP tronqué. code. Exprimons-les un par un :
1. Si le code d'installation de MySQL ne peut pas être modifié, de nombreux amis achètent des hôtes virtuels pour créer des sites Web et n'ont pas le droit de modifier le code d'installation de MYSQL. Nous pouvons ignorer cette étape, car tant que les étapes suivantes sont correctes, le problème du code tronqué peut toujours être résolu.
2. Modifiez l'encodage de la base de données Si l'encodage de la base de données est incorrect : Vous pouvez exécuter la commande suivante dans phpmyadmin : ALTER DATABASE `test` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin.
La commande ci-dessus consiste à définir le codage de la base de données de test sur utf8
3. Modifiez l'encodage de la table : ALTER TABLE `category` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin
La commande ci-dessus consiste à changer l'encodage d'une catégorie de table en utf8
4. Modifiez l'encodage du champ :
ALTER TABLE `test` CHANGE `dd` `dd` VARCHAR( 45 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL
La commande ci-dessus consiste à changer le codage du champ de dd dans la table de test en utf8
5. Si cette situation est facile à résoudre, vérifiez simplement la page et modifiez le jeu de caractères du fichier source.
, //Si c'est correct, il n'y aura pas de problème
6. Dans ce cas, vous pouvez également modifier le jeu de caractères de la page.
7. Dans l'instruction JSP pour se connecter à la base de données,
private String url="jdbc:mysql://localhost/"+DB_NAME+" user="+LOGIN_NAME+"&password="+LOGIN_PASSWORD+"&characterEncoding=GBK" //La clé dépend du codage de caractères;
8. Dans ce cas de caractères tronqués, ajoutez simplement request.setCharacterEncoding("GBK") au début de la page ; spécifiez simplement les
données soumises. Remarque : Après modification selon la méthode ci-dessus, vous pouvez uniquement vous assurer que vos nouvelles données sont insérées. les données ne seront pas tronquées. Par exemple Exemple : Si les données que votre utilisateur a soumises sont BIG5, mais que vous souhaitez utiliser la méthode ci-dessus pour les modifier afin qu'elles s'affichent correctement sur la page Web GB2312, ce type de code texte est impossible. la transformation ne peut être résolue qu'en écrivant un autre programme, veuillez WEB745 .com autres articles connexes
Résumé : Tout d'abord, vous devez déterminer si les caractères JSP tronqués sont tronqués après avoir été insérés dans la base de données, ou si la page JSP est tronquée juste après sa soumission. Si la JSP est tronquée juste après avoir reçu les données de la page précédente, il doit s'agir d'un jeu de caractères erroné, mais request.setCharacterEncoding n'est pas ajouté ("GBK");
Si cela est dû à la base de données, veuillez vous référer aux méthodes 2, 3 et 4 ci-dessus.
Il s'agit peut-être d'un problème d'encodage. Connectez-vous à la base de données comme ceci et voyez.
jdbc:mysql://localhost:3306/xxxx useUnicode=true&characterEncoding=UTF-8
Voir si ça marche