发表于: 2018-04-06 23:51:45

1 641



一。先搞会了如何把前端的值传输到后端

@RequestMapping(value="/test1",method=RequestMethod.GET)

public String test1(){

return"one";

}

在页面输入/test之后,就会跳转到one.jsp页面

里面应该这样写

<form action="${pageContext.request.contextPath}/test2 " ,method = "get" >

<input  type = "text" name="name">

<input type = "text" name="qq">

<input type = "text" name="major">

<input type="submit" value="传输">

</form>

展示页面后,页面上会有三个框框,输入数据,点击传输按钮。然后控制器里就要把数据展示在控制台上。

控制器里面还要继续写一个方法

@RequestMapping(value="/test2",method="get")

public void test2(String name,String qq,String major){

String space = name + qq + major

log.info(space);

}

刚才是手写的,现在看看IDEA里面写的

//确定要传值的页面
@RequestMapping(value = "/front/back", method = RequestMethod.GET)
public String frontBack() {
return "fb";
}

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
   <title>Title</title>
</head>
<body>
<form action="${pageContext.request.contextPath}/back" method="get">
   <br>姓名<input type="text" name="name">
   <br>QQ<input type="text" name="qq">
   <br>主业<input type="text" name="major">
   <input type="submit" value="传值">
</form>
</body>
</html>

//要处理传进来的值的程序
@RequestMapping(value = "/back", method = RequestMethod.GET)

public void backTo(String name, String qq, String major) {
String speace = name + qq + major;
  log.info(speace);
}


经过实际检测,这样是能把三个数据都能传进来,如果携程System.out.pritln(name+qq+major);也能把所有的数据传进来

但是,如果携程log.info(name,qq,major)的话,只能在控制台显示name。不知何故,但是三个参数都传进来了,就是显示不出来而已。


二。复习一下后端传输到前端,从现在开始,十分钟之内,在IDEA做出来

@RequestMapping(value = "/test20180407",method = RequestMethod.GET)
public String test2(Model model){
Student student = new Student();
       student.setName("鹿晗");
       student.setQq("9999");
       student.setMajor("PM");
       student.setId(111111);
       model.addAttribute("str",student);
       return "four";
}

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
   <title>Title</title>
</head>
<body>
${str}
</body>
</html>

运行之后,在前台页面输出了鹿晗什么的

三。复习一下从前端输入ID,然后从前端查出

@RequestMapping(value ="/student/f",method = RequestMethod.GET)
public String select2(){
return"five";
}

@RequestMapping(value = "/test20180407002" ,method = RequestMethod.GET)
public String select3(int id,Model model){
Student student= studentService.selectById(id);
       model.addAttribute("show",student);
       return "six";

  }
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
   <title>Title</title>
</head>
<body>
<form action="${pageContext.request.contextPath}/test20180407002" method="get">
   <input type="text" name="id">
   <input type="submit" value="查询">
</form>
</body>
</html>

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
   <title>Title</title>
</head>
<body>
<%--<form action="${pageContext.request.contextPath}/student" method="get">--%>
   <%--<input type="text" name="name" value="${student.name}">--%>
   <%--<input type="text" name="qq" value="${student.qq}">--%>
   <%--<input type="text" name="major" value="${student.major}">--%>
<%--</form>--%>
<th>${show.qq}</th>
<th>${show.name}</th>
<th>${show.major}</th>

</body>
</html>

总结:一开始,脑子糊涂了,老想着数据传输到前端,怎么显示出来,完全忘了刚刚做过的把数据从后端传输到前端的EL表达式,说明,第一个不理解,第二个不熟练。输错的地方,我已经注释掉了,运行之后,成功根据id查出数据。


四。很重要的一点,把URL用restful写出来

比如查询/student/1 GET  也就是method=RequestMrthod.GET

增加POST

删除DELETE

修改PUT


五。做了json,页面显示:

@RequestMapping(value = "/json", method = RequestMethod.GET)
public String json(Model model) 
List<Student> studentList = studentService.list();
   model.addAttribute("student1", studentList);
   return "jsonList";
}

<json:object escapeXml="false">
<json:array name="学员信息" var="student" items="${student1}">
<json:object>
<json:property name="id" value="${student.id}"></json:property>
<json:property name="姓名" value="${student.name}"></json:property>
<json:property name="QQ" value="${student.qq}"></json:property>
<json:property name="major" value="${student.major}"></json:property>
</json:object>
</json:array>
</json:object>

写json控制器方法的时候,还是卡了一下壳。看来还是应该多写几遍


明天的计划:提交任务二

遇到的问题:暂无

今天的收获:学会后端值传到前端了,

java任务二开始时间:2018.01.25

预计demo时间:2018.02.12

可能有延期风险,原因是:json看不懂,控制器的逻辑看不懂,所以又回看了java语法

禅道链接地址:http://task.ptteng.com/zentao/project-task-501.html 


返回列表 返回列表
评论

    分享到