課程
/后端開發
/Java
/JDBC之 “ 對岸的女孩看過來”
哪個大神能給個代碼。如果不更改該字段,則輸入null,應該怎么寫。
好亂阿感覺,
2016-05-29
源自:JDBC之 “ 對岸的女孩看過來” 2-9
正在回答
邏輯出錯了!我們仿寫前幾個模塊比如add最容易犯這個錯誤,但此處是update,應該先傳入id,根據id取出該條記錄,然后對此記錄進行修改。
god.setId(Integer.valueOf(in));?改為?god = (Goddess)action.get(Integer.valueOf(in));
一切ok!
空指針就是說 我們連要修改的對象都沒有取到啊,談何修改
wshyzx
我推測,你在聲明God對象的時候沒有實例化,導致沒有修改的情況下god為空。
修改之后數據庫是空的,有可能是因為你的update方法sql有問題
幫忙看一下,我這應該怎么修改。如果都不修改就報空指針異常,修改了數據庫就是空的
else if(OPERATION_UPDATE.equals(in.toUpperCase())
? ? ?||OPERATION_UPDATE.substring(0,1).equals(in.toUpperCase())
? ? ?||OPERATION_UPDATE.equals(prenious)){
? ? ?prenious=OPERATION_UPDATE;?
? ?
? ? if(1==step){
? ? System.out.println("請輸入要修改的男神編號:");
? ? }else if(2==step){
? ? god.setId(Integer.valueOf(in));
? ? System.out.println("[姓名](如果該字段不需更改,請輸入BQ)");
? ? }else if(3==step){
? ? if(!in.equals("bq")){
? ? god.setUser_name(in);
? ? System.out.println("[生日](如果該字段不需更改,請輸入BQ)");
? ? }else{
? ? }
? ? }else if(4==step){
? ? SimpleDateFormat sf=new SimpleDateFormat("YYYY-mm-dd");
? ? god.setBirthday(sf.parse(in));
? ? System.out.println("[年齡](如果該字段不需更改,請輸入BQ)");
? ? god.getBirthday();
? ? }else if(5==step){
? ? god.setAge(Integer.valueOf(in));
? ? System.out.println("[郵箱](如果該字段不需更改,請輸入BQ)");
? ? god.getAge();
? ? }else if(6==step){
? ? god.setEmail(in);
? ? System.out.println("[手機號](如果該字段不需更改,請輸入BQ)");
? ? god.getEmail();
? ? }else if(7==step){
? ? god.setMobile(in);
? ? try {
action.update(god);
System.out.println("修改成功1");
} catch (Exception e) {
e.printStackTrace();
System.out.println("修改失敗1");
}
? ? god.getMobile();
System.out.println("修改成功");
// TODO Auto-generated catch block
System.out.println("修改失敗");
? ? ?if(OPERATION_UPDATE.equals(prenious)){
? ? ?step++;
? ? ?}
舉報
一起領略JDBC的奧秘,為進一步學習集成框架打下良好的基礎
4 回答關于search 查詢女神信息代碼 問題
1 回答關于視圖層修改女神的實現問題?
2 回答修改女神屬性方法的While循環問題
5 回答怎么通過生日來查詢女神的信息?
1 回答視圖層修改信息 輸入null的問題
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-11-09
邏輯出錯了!我們仿寫前幾個模塊比如add最容易犯這個錯誤,但此處是update,應該先傳入id,根據id取出該條記錄,然后對此記錄進行修改。
god.setId(Integer.valueOf(in));?改為?god = (Goddess)action.get(Integer.valueOf(in));
一切ok!
空指針就是說 我們連要修改的對象都沒有取到啊,談何修改
2016-06-13
我推測,你在聲明God對象的時候沒有實例化,導致沒有修改的情況下god為空。
修改之后數據庫是空的,有可能是因為你的update方法sql有問題
2016-05-30
幫忙看一下,我這應該怎么修改。如果都不修改就報空指針異常,修改了數據庫就是空的
2016-05-30
else if(OPERATION_UPDATE.equals(in.toUpperCase())
? ? ?||OPERATION_UPDATE.substring(0,1).equals(in.toUpperCase())
? ? ?||OPERATION_UPDATE.equals(prenious)){
? ? ?prenious=OPERATION_UPDATE;?
? ?
? ? if(1==step){
? ? System.out.println("請輸入要修改的男神編號:");
? ? }else if(2==step){
? ?
? ? god.setId(Integer.valueOf(in));
? ? System.out.println("[姓名](如果該字段不需更改,請輸入BQ)");
? ?
? ?
? ? }else if(3==step){
? ? if(!in.equals("bq")){
? ? god.setUser_name(in);
? ? System.out.println("[生日](如果該字段不需更改,請輸入BQ)");
? ? }else{
? ?
? ? System.out.println("[生日](如果該字段不需更改,請輸入BQ)");
? ? }
? ?
? ? }else if(4==step){
? ? if(!in.equals("bq")){
? ? SimpleDateFormat sf=new SimpleDateFormat("YYYY-mm-dd");
? ? god.setBirthday(sf.parse(in));
? ? System.out.println("[年齡](如果該字段不需更改,請輸入BQ)");
? ? }else{
? ? god.getBirthday();
? ? System.out.println("[年齡](如果該字段不需更改,請輸入BQ)");
? ? }
? ? }else if(5==step){
? ? if(!in.equals("bq")){
? ? god.setAge(Integer.valueOf(in));
? ? System.out.println("[郵箱](如果該字段不需更改,請輸入BQ)");
? ? }else{
? ? god.getAge();
? ? System.out.println("[郵箱](如果該字段不需更改,請輸入BQ)");
? ? }
? ? }else if(6==step){
? ? if(!in.equals("bq")){
? ? god.setEmail(in);
? ? System.out.println("[手機號](如果該字段不需更改,請輸入BQ)");
? ? }else{
? ? god.getEmail();
? ? System.out.println("[手機號](如果該字段不需更改,請輸入BQ)");
? ? }
? ? }else if(7==step){
? ? if(!in.equals("bq")){
? ? god.setMobile(in);
? ? try {
action.update(god);
System.out.println("修改成功1");
} catch (Exception e) {
e.printStackTrace();
System.out.println("修改失敗1");
}
? ? }else{
? ? god.getMobile();
? ? try {
? ?
action.update(god);
System.out.println("修改成功");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("修改失敗");
}
? ? }
? ?
? ? }
? ?
? ?
? ? ?if(OPERATION_UPDATE.equals(prenious)){
? ? ?step++;
? ? ?}