发表于: 2017-08-26 23:22:06

1 959


今天完成的事情:两个model类 Address  User  User里面包含Address 使用的是级联属性

public class Address {
private String province;
   private  String city;

   public String getProvince() {
return province;
   }

public class User {
private String username;
  private String email;
  private  String password;
  private   int  age;
   private Address address;

省略了他们的get set 方法 和重写toString方法

写了一个表单来提交数据     注意这里的age 

<form action="springmvc/testPojo" method="post">
    username:<input type="text" name="username"/>
    <br>
   password:<input type="password" name="password"/>
   <br>
   email:<input type="text" name="email"/>
   <br>
   age:<input type="text"  required="false"   name="age"/>
   <br>
   province:<input type="text" name="address.province"/>
   <br>
   city:<input type="text" name="Address.city"/>
   <br>
   <input type="submit" value="Submit"/>
   </form>
<br> <br>

controller


@RequestMapping("/springmvc")
@Controller
public class New {
private static final String SUCESS="sucess";
         @RequestMapping("/testPojo")
public  String testPojo(User user
){


System.out.println("testpojo"+user);
             return SUCESS;

   }


跑起来

然后输入数据 如果不输入age 点击submit

填上它 点击

然后连接数据库 这里换了一个表  jsp里面

<table>
<c:forEach items="${study}var="study" varStatus="st">
<tr>
       <td>
           <p>id:${study.id}</p>
           <p>name:${study.name}</p>
           <p>user_id:${study.userId}</p>
           <p>study_type:${study.studyType}</p>
           <p>qq:${study.qq}</p>
           <p>entry_data:${study.entryData}</p>
           <p>graduated:${study.graduated}</p>
           <p>url:${study.url}</p>
           <p>wish:${study.wish}</p>
           <p>know_from:${study.knowFrom}</p>
       </td>
   </tr>
</c:forEach>

来自动映射study类里面的属性

controller里面

@RequestMapping(value "/a/student/all",method = RequestMethod.GET)
public String all(HttpServletRequest requestHttpServletResponse response,Model model){
try {
loggerController.info("查询全部学生信息");
       List<Student> study = studyService.studentAll();
       loggerController.info("studylist : " + study);
       int i = study.size();
       loggerController.info("返回用户数量" + i);
       model.addAttribute("study",study);
   }catch(Exception e){
e.printStackTrace();
       loggerController.error("查询错误" + e.getMessage());
       return "common/errorJson";
   }
return "student/studentListJson";
}

这里有的地方还是要修改 

成功返回数据库数据

明天计划的事情:整理这几天的所学 整体上对springmvc有了完整 的梳理 和相关实现

                           总结这些知识点 把这些东西 再重新写一下

遇到的问题:开始时age总是出错 原来为空提交 直接报错

                    后来加上这个

required="false"  

这样非空不能提交了  会出现那个提示

然后再仔细研究思考了一下 把User类 里面的age 由int改成Integer

就可以为空提交 打印出来

        还有开始是写那两个类 没有在User里面写上Address的getset方法

(HttpServletRequest requestHttpServletResponse response,Model model)

这里知道这样用 但还是不是很理解 他这个默认的到底什么意思

我的收获:整体上更加深入的了解了springmvc 对于他的提交 拦截 以及controll等有了更好的认识

      controller是最重要的 负责整体的逻辑 

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


返回列表 返回列表
评论

    分享到