第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

嘗試使用Gson庫將Json解析為Java對象時拋出異常

嘗試使用Gson庫將Json解析為Java對象時拋出異常

胡說叔叔 2021-05-05 18:28:52
我試圖創(chuàng)建一個Web方法誰會得到一個Json字符串。我需要獲取該json字符串并將其解析為java對象。當我試圖做到這一點時,我得到了例外:javax.servlet.ServletException: com.google.gson.JsonSyntaxException: java.io.EOFException: End of input at line 1 column 2根本原因com.google.gson.JsonSyntaxException: java.io.EOFException: End of input at line 1 column 2根本原因 java.io.EOFException: End of input at line 1 column 2那是我的代碼:@GET@Produces("application/text")@Path("checkuser/{user}")public String checkUser(@PathParam("user") String mu) throws SQLException, ClassNotFoundException {    gson = new Gson();    modelUserGet = gson.fromJson(mu, ModelUser.class);    StringBuilder query = new StringBuilder();    query.append("SELECT user, password, email,");    query.append(" telephone, creation_data, last_update_data ");    query.append("FROM user ");    query.append("WHERE user ='");    query.append(modelUserGet.getUser());    query.append("' ");    datamysql = new DataMySqlAccess();    Statement st = datamysql.getConnection().createStatement();    ResultSet rs = st.executeQuery(query.toString());    String result = "";    if(rs.next() == true){        modelUserSend = new ModelUser(                rs.getString("user"),                rs.getString("password"),                rs.getString("email"),                rs.getString("telephone"),                rs.getString("creation_data"),                rs.getString("last_update_data")        );        if(!modelUserSend.getPassword().equals(modelUserGet.getPassword()))            result = "INVALID_PASSWORD";        else            result = "OK";    } else         result = "INVALID_USER";    modelUserSend.setCheckUserReponse(result);    return gson.toJson(modelUserSend);}
查看完整描述

2 回答

?
慕容3067478

TA貢獻1773條經(jīng)驗 獲得超3個贊

@PathParam(“ user”)字符串mu


這是您要獲取的PathParameter,它是一個字符串。這就是例外的原因。它無法轉(zhuǎn)換為模型。


在您的情況下,請將其作為單獨的路徑參數(shù)變量并在方法中使用它。


編輯1


我認為,用戶名是您從參數(shù)中唯一需要的項目。因此,最好將用戶名作為Path參數(shù)獲取。其他細節(jié),您正在從數(shù)據(jù)庫中獲取。


@GET

@Produces("application/text")

@Path("checkuser/{user}")

public String checkUser(@PathParam("user") String userName) throws SQLException, ClassNotFoundException {


StringBuilder query = new StringBuilder();


query.append("SELECT user, password, email,");

query.append(" telephone, creation_data, last_update_data ");

query.append("FROM user ");

query.append("WHERE user ='");

query.append(userName);

query.append("' ");


datamysql = new DataMySqlAccess();

Statement st = datamysql.getConnection().createStatement();

ResultSet rs = st.executeQuery(query.toString());




String result = "";


if(rs.next() == true){


    modelUserSend = new ModelUser(

            rs.getString("user"),

            rs.getString("password"),

            rs.getString("email"),

            rs.getString("telephone"),

            rs.getString("creation_data"),

            rs.getString("last_update_data")

    );


    if(!modelUserSend.getPassword().equals(modelUserGet.getPassword()))

        result = "INVALID_PASSWORD";

    else

        result = "OK";

} else 

    result = "INVALID_USER";



modelUserSend.setCheckUserReponse(result);


return gson.toJson(modelUserSend);

}


查看完整回答
反對 回復 2021-05-19
  • 2 回答
  • 0 關(guān)注
  • 432 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號