var app = new Vue({
el: '#app',
data: {
location: {
legal_name: 'Name',
address1: 'Address1',
pri_phone: 'Phone',
}
}
});
对于输入字符串:<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="app">
<h5>{{ location.legal_name }}</h5>
<p>{{ location.address1 }}</p>
<p v-if="location.address2">{{ location.address2 }}</p>
<p>{{ location.pri_phone }}</p>
</div>
我得到了SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
String selectQueryForPatient = "SELECT registration_id, dob FROM patient_registration WHERE registration_id IN(SELECT max(registration_id)FROM patient_registration)";
String insertQuery = "INSERT INTO patient_master_info(patient_id) VALUES (?);";
String id = null;
String dob = null;
int generatedID = 0;
try {
pst = con.prepareStatement(selectQueryForPatient);
rs = pst.executeQuery();
while(rs.next()){
id = Integer.toString(rs.getInt(1));
dob = rs.getString(2);
System.out.println("Id : "+id+" "+"DOB: "+dob);
Date dt = sdf.parse(dob);
dob = sdf.format(dt);
String result = id.concat(dob);
generatedID = Integer.parseInt(result);
}
pst = con.prepareStatement(insertQuery);
pst.setInt(1, generatedID);
pst.execute();
} catch(Exception e) {
e.printStackTrace();
}
。我该如何解决?
答案 0 :(得分:2)
我不知道您要做什么,但是您的问题是将日期附加到整数值的结果很容易超出整数范围。
例如,假设id
为“ 30”,而dob
(从数据库中读取)为“ 20190123”。 id.concat(dob)
的结果是“ 3020190123”,它大于int
的最大值“ 2147483647”。
您的样本值12919851203
更大(接近130亿,而Integer.MAX_VALUE约为20亿)。
如果该值必须像数字一样可排序(其中2 <10),则可以将数据类型更改为long
或BigInteger
。
如果排序无关紧要(即可以确定“ 2”大于“ 10”),那么您甚至可以将result
存储为String
(存储到VARCHAR
列中)。
或者您可以解释要解决的问题,以便我们找到解决问题的更好方法。
答案 1 :(得分:1)
此答案不是关于数字格式异常,而是关于您犯的日期格式错误。
目前,您正在将pointers.c:50:22: error: ‘*head’ is a pointer; did you mean to use ‘->’?
*head = *head->next;
解析为日期1986-03-01
,因为您的1985-12-03
包含String dob
。您需要两种不同的格式化程序来获得结果:
-
19850301
当然,有人会争辩说需要解析成SimpleDateFormat sdfIn = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat sdfOut = new SimpleDateFormat("yyyyMMdd");
String dob = "1985-03-01";
Date dt = sdfIn.parse(dob);
dob = sdfOut.format(dt);
System.out.println(dob);
只是为了获得一个“相似的” Date
,如果您确定数据是日期,则可以删除{ {1}}使用:
String
最后,您应该使用-
API。
dob = dob.replaceAll("-", "");