简体   繁体   English

来自 Java Web 的非英文数据输入 Netbeans 8.0.2 中的应用

[英]Non English Data Input From Java Web Application in Netbeans 8.0.2

My Connection String我的连接字符串

Class.forName("com.mysql.jdbc.Driver");

conn= DriverManager.getConnection("jdbc:mysql://localhost:3306/exam_system?useSSL=false&useUnicode=true&characterEncoding=utf8","root","Password");

My JSP File我的 JSP 文件

<%@page import="java.util.ArrayList"%>
<jsp:useBean id="pDAO" class="myPackage.DatabaseClass" scope="page"/>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
    <title></title>
    <link rel="stylesheet" type="text/css" href="style-backend.css">
        <link rel="stylesheet" type="text/css" href="style.css">
        <meta charset="utf-8" >
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

            <label Style="color: black">  ছন্দে</label>
            <input type="hidden" name="pgprt" value="4">
            <select name="coursename" class="text">
        <% 
            ArrayList list1=pDAO.getAllCourses();

            for(int i=0;i<list1.size();i=i+2){
        %>
        <option value="<%=list1.get(i)%>"><%=list1.get(i)%></option>
            <%
            }
            %>
            </select>
            <input type="submit" value="Show" class="form-button">
            </form>
                            </div>

        <div class="panel form-style-6" style="max-width: 420!important;float: right">   
           <form action="controller.jsp" >
               <div class="title">Add New Question</div>
               <table Style="color: black;font-color: black">
                   <tr>
                       <td><label Style="color: black">Course Name</label></td>
                       <td colspan="3"> 
                               <select name="coursename" class="text">
        <% 
            ArrayList list=pDAO.getAllCourses();

            for(int i=0;i<list.size();i=i+2){
        %>
        <option value="<%=list.get(i)%>"><%=list.get(i)%></option>

            <%
            }      request.setCharacterEncoding("UTF-8");      
            %>

            </select>
                       </td>
                   </tr>
                   <tr>
                       <td><label Style="color: black">Your Question:</label></td>
                       <td colspan="4"><input type="text" name="question" class="text" placeholder="Type your question here" style="width: 420px;" ></td><br>
                   </tr>
                   <tr>
                       <td><label Style="color: black">Options</label></td>
                       <td><input type="text" name="opt1" class="text" placeholder="First Option" style="width: 130px;" ></td>
                       <td><input type="text" name="opt2" class="text" placeholder="Second Option" style="width: 130px;" ></td>
                       <td><input type="text" name="opt3" class="text" placeholder="Third Option" style="width: 130px;" ></td>
                       <td><input type="text" name="opt4" class="text" placeholder="Fourth Option" style="width: 130px;" ></td>
                   </tr>
                   <tr>
                       <td><label>Correct Answer</label></td>
                       <td colspan="4"><center><input type="text" name="correct" class="text" placeholder="Correct Answer" style="width: 130px;" ></center></td>
                   <tr>
                       <td colspan="5"><input type="hidden" name="page" value="questions">
                    <input type="hidden" name="operation" value="addnew">
                       <center><input type="submit" class="form-button" value="Add" name="submit"></center></td>

When Inputting Non-English Data It is Not Inserting Correctly in MySQL Database.输入非英文数据时,在 MySQL 数据库中没有正确插入。 But I changed Database Pattern And Test By Passing Non-English Data In String And It Works Perfectly.但是我通过在字符串中传递非英语数据来更改数据库模式和测试,并且效果很好。

INSERT INTO `exam_system`.`contact`
(`Name`,
`Email`,
`Message`)
VALUES
('<{Name:fsfsd }>',
'<{Email:sdfsdf }>',
'<{Message: 1. চর্যাপদ কোন ছন্দে লেখা? }');

Before Answering I tried在回答之前我试过了

  1. Net Bean Font Change Net Bean 字体更改

  2. Tried Change String Data To Byte尝试将字符串数据更改为字节

  3. And Rest和 Rest

Change Are in the symbol Code.更改在符号代码中。

When Accepting Parameter or User Value Convert That Value Into Char.接受参数或用户值时将该值转换为字符。

String crr=request.getParameter("correct");
byte[] bytesCrr = crr.getBytes(StandardCharsets.ISO_8859_1);
crr = new String(bytesCrr, StandardCharsets.UTF_8);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM