发表于: 2017-08-31 22:43:05

1 845


今天完成的事情:本来提交了任务二 但是师兄提出了很多问题 

        首先来说 代码冗余无用代码太多 注释掉的东西太多了 没有删掉

        写法混乱 不简洁 

       一些地方的逻辑判断有问题 比如增加 我是用model方法逐个字段增加

        返回的也不是增加的数据

        又因为是使用了表单 url等提交

       使用了jsp c标签 json等返回  整体风格很混乱

        rest风格也没有完整 加了很多混乱的东西

       所以今天又改了一天的代码 终于让自己的代码看上去优雅了一点 必须都贴上


@Controller
public class UserController {
//使用日志
   private static Logger log = Logger.getLogger(UserController.class);
   //注入service
   @Autowired
   UserService userService;

   //列表查询
   @RequestMapping(value = "/a/student/userall", method = RequestMethod.GET)
public String allCategory( Model model) {
try {
log.info("查找所有用户信息");
           List<User> userList = userService.list();
           int i = userList.size();
           log.info("当前用户数量为");
           System.out.println(i);
           model.addAttribute("user", userList);
           log.info("运行成功 " + userList);
       } catch (Exception e) {
e.printStackTrace();
           log.info("出现异常");
           return "common/errorJson";
       }

return "category/listJson";
   }

@RequestMapping(value = "/a/student/user", method = RequestMethod.GET)
public String detail1( Model model, Integer id) {
// 判断传入的id 是否为数据库中存在的
       if (userService.get(id) != null) {
try {
log.info("根据id查询信息");
               log.info("查询id是" + id);
               User user = userService.get(id);
               //将数据绑定到model上,可以传入jsp页面
               model.addAttribute("category", user);
               log.info("得到的信息为" + user);
           } catch (Exception e) {
e.printStackTrace();
               log.info("出现异常");
               return "common/errorJson";
           }
return "category/categoryDataliJson";
       } else {
log.info("数据库中没有此信息");
           return "common/errorParameterJson";
       }
}

//增加
   @RequestMapping(value = "/a/student/user", method = RequestMethod.POST)
public String save(Model model, User user) {
log.info("新增信息");
       //根据字段添加属性
       log.debug(user);
       userService.add(user);
       //再次查询 并且将其放入返回id的界面
       User user2 = userService.get(user.getId());
       //将数据绑定到model上,可以传入jsp页面
       model.addAttribute("category", user2);

       log.info("sucess");
       return "category/categoryDataliJson";
   }

//删除
   @ResponseBody
   @RequestMapping(value = "/a/student/user", method = RequestMethod.DELETE)
public String delete( int id) {
if (userService.get(id) != null) {
try {
userService.delete(id);
           } catch (Exception e) {
e.printStackTrace();
               return " error";
           }
return "sucess";
       } else {
log.info("数据库中没有此信息");
           return "error";
       }
}

//修改
   @RequestMapping(value = "/a/student/user", method = RequestMethod.PUT)
public @ResponseBody
   List<User> contrl2 (HttpServletRequest request, HttpServletResponse response, Model model, User user){
log.info("入参"+user);
    User user1 = new User();

    user1=userService.get(user.getId());
     // int i=this.userService.update(user);
       if(user.getName()!=null) {
user1.setName(user.getName());
       } if(user.getQq()!=null) {
user1.setQq(user.getQq());
       } if(user.getStyle()!=null) {
user1.setStyle(user.getStyle());
       } if(user.getEstimated_time()!=null) {
user1.setEstimated_time(user.getEstimated_time());
       } if(user.getGraduate_institutions()!=null) {
user1.setGraduate_institutions(user.getGraduate_institutions());
       }if(user.getOnline_id()!=null) {
user1.setOnline_id(user.getOnline_id());
       }if(user.getDaily_link()!=null) {
user1.setDaily_link(user.getDaily_link());
       }if(user.getPledge()!=null) {
user1.setPledge(user.getPledge());
       }if(user.getSenior_tutor()!=null) {
user1.setSenior_tutor(user.getSenior_tutor());
       }if(user.getSource()!=null) {
user1.setSource(user.getSource());
       }if(user.getCreate_at()!=null) {
user1.setCreate_at(user.getCreate_at());
       } if(user.getUpdata_at()!=null) {
user1.setUpdata_at(user.getUpdata_at());
       }
userService.update(user1);
       log.info("出参"+user1);
       List<User> list=new ArrayList<User>();
       list.add(user1);
       log.info("list"+list);
       return  list;
   }
}

怎么会自动顶格了啊 

完全按照了实际需求 来写 不过更新写的还是不够好 

使用postman测试完全成功 自己写的相关注释也没问题 相关跳转也没问题

IDEA出了问题 重装了一遍 回顾了一下他的基础设置

明天计划的事情:抓紧时间做任务三 任务二拖了太久
遇到的问题:更改了很多逻辑 发现了很多问题

      比如sql语句在xml里面是写死的

     更新的时候 如果只更新一个字段 其他字段默认变成了空值

      这个逻辑就研究了两个多小时 

    最后是先新增了一个类 根据id读取所有原有数据

    然后逐个字段判断是否为空

    原来判断为空 来执行 更新 打出来正确数据 数据库失败

   改成判断非空 更改相关字段到新增的那个类 然后更新 成功

收获:代码一定要简洁优雅 注释要写 一来出了问题自己可以看到问题在哪里

          二来自己理清相关的思路 三来让别人理解

           

禅道链接 :http://task.ptteng.com/zentao/my-task.html


返回列表 返回列表
评论

    分享到