为啥在jsp中提交数据后会显示的是问号

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥在jsp中提交数据后会显示的是问号相关的知识,希望对你有一定的参考价值。

为什么在jsp中提交数据后会显示的是问号

"")方法来获取表单中提交的内容,比如你的index.html页面的表单中有一个姓名文本框:<input type="text" name="username"> 提交到action.jsp后,在页面中先通过写java代码取出他的值:<% String name=requset.getParameter("username") %> 然后在action.jsp的页面中输出:<input type="text" name="myname" value="<%=name%>"> 参考技术A 需要转码

String str = 需要转码的内容;
byte[] b = str.getByte("ISO-8859-1");
str = new String(b);

加上上面这段代码
str被转码!!!

参考资料:s

参考技术B 转码 参考技术C 是数据显示问号?是的话,那么应该是编码问题。本回答被提问者采纳

为啥JDBC代码中有双问号

【中文标题】为啥JDBC代码中有双问号【英文标题】:Why are there double question marks in JDBC code为什么JDBC代码中有双问号 【发布时间】:2013-03-13 18:35:28 【问题描述】:

我正在使用 PHP 将 JDBC sql 语句转换为 ODBC/DB2。我遇到了以下让我感到困惑的条款。

WHERE phid = ??id

我的第一直觉是它是用于准备好的陈述,但现在我不太确定。这是 JSP/JDBC 的事情吗? Google/stack 没有发现任何东西。

【问题讨论】:

你能把找到这个的代码块贴出来吗? 这不是标准 JDBC,可能是供应商特定的扩展。 或者它可能是一些特定于应用程序(命名)的参数处理。 你能发布更多的java代码吗?完整的 sql 准备语句和任何 setString 调用它。 【参考方案1】:

哇! Mabye 它只是一个普通的绑定变量,但连续有 2 个! java.sql.Conneciton(快速阅读)的文档中没有任何内容说它们必须用空格分隔。请发布更多代码,以便我们查看是否有任何 setString 调用来添加绑定变量。

例如,像这样的:

pstmt = conn.prepareStatement("select blah from blah WHERE phid = ??id and blah blah");
pstmt.setString(1, "customer_");
pstmt.setString(2, "order_");

我从未见过这样的事情,但也许这就是他们正在做的事情?

编辑:我试过了!它给了我一个错误!我想知道你是否发现了一些死代码?这是我尝试过的:

    sql.append("SELECT A.ID, A.GROUP_NUMBER, A.GROUP_NAME ");
    sql.append("FROM " + tab1 + " A ");
    sql.append("INNER JOIN " + tab2 + " B ");
    sql.append("ON (A.ID = B.GROUP_ID) ");
    sql.append("WHERE B.THREAD_ID = ? ");
    sql.append("AND B.THREAD_ID = ??ID ");
    sql.append("ORDER BY A.ID ");

// ...

        conn = getConn();
        pstmt = conn.prepareStatement(sql.toString());
        pstmt.setInt(1, threadId);
        pstmt.setString(2, "B.");
        pstmt.setString(3, "THREAD_");

我收到了这个错误:

ILLEGAL SYMBOL "?". SOME SYMBOLS THAT MIGHT BE LEGAL ARE: MICROSECONDS MICROSECOND SECONDS SECOND MINUTES MINUTE HOURS. SQLCODE=-104, SQLSTATE=42601, DRIVER=3.57.82

【讨论】:

【参考方案2】:

正如其他人所评论的(抱歉,还没有足够的代表发表评论),这可能是命名参数处理的某种方式。我在 JDBC 和我知道的任何 ORM 框架中都找不到对它的任何引用,因此它可能是为该特定应用程序创建的自定义 JDBC/ORM 框架。查看更多示例代码肯定会有所帮助。

【讨论】:

以上是关于为啥在jsp中提交数据后会显示的是问号的主要内容,如果未能解决你的问题,请参考以下文章

iOS 开发 post 提交数据 中文乱码 一串问号,怎么解决

html表单数据为啥不能提交到servlet

asp.net提交表单到数据库中的中文数据是一些问号

JSP怎么将表单提交到对应的servlet

AJAX提交表单,上传出错的国际化信息无法显示在jsp页面上

Textarea 中回车换行,提交数据后,在网页中显示的是没换行的样子,求解