FaradayZhangChina 2016-11-12 07:19 采纳率: 15.6%
浏览 2413
已采纳

springmvc的model返回值jsp为何取不到这个值

最近,在写一段用户的代码,要求使用springmvc, RowMapper,jdbcTemplate的技术,我的代码段如下:
jsp页面

users.jsp

 <%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<table>
  <c:if test="${not empty userlist}">
  <c:forEach var="s" items="${userlist}" varStatus="status">
     <thead>
        <tr><td>用户姓名</td><td>用户密码</td></tr>
     </thead>
     <tbody>
        <tr><td>${s.user_name}</td><td>${s.user_pwd}</td></tr>
     </tbody>
  </c:forEach>
  </c:if>
  </table> 
</body>
</html>

HelloController.java

 @RequestMapping("/howareyou.do")
    public String getUserbyUserId(Model model,HttpServletRequest req){

        Long userid=(long) Integer.parseInt(req.getParameter("user_id"));
        List<User> users = userService.findAllByUserId(userid);

        model.addAttribute("userlist",users);

        return "users";
    }

UserServiceImplement.java

 @Override
    public List<User> findAllByUserId(Long user_id) {
        // TODO Auto-generated method stub
        String sql = "select * from user where user_id = ?";  
        Object[] params = new Object[] {user_id}; 
        BeanPropertyRowMapper<User> UserRowMapper = new BeanPropertyRowMapper<User>(User.class);   
        List<User> users = null;  
        /** 
         * 使用接口实现类 
         */  
        users = jdbcTemplate.query(sql, params, UserRowMapper); 
        /** 
         * 使用匿名内部类 
         * 如果UserRowMapper类只使用一次,单独为其创建一个类多余,可以使用匿名类 
         * 省略了书写一个实现类 
         */  
        users = jdbcTemplate.query(sql, params,  
                new RowMapper<User>() {  
                    public User mapRow(ResultSet rs, int rowNum) throws SQLException {  
                        User user = new User();
                        /*user.setUser_id(Long.parseLong(String.valueOf(rs.getInt("user_id"))));*/
                        user.setUser_name(rs.getString(3)); 
                        user.setUser_pwd(rs.getString(2));  
                        System.out.println("user_name is"+user.getUser_name());
                        System.out.println("user_pwd is"+user.getUser_pwd());
                        System.out.println("user_id is"+user.getUser_id());
                        return user;  
                    }  
                });  
        return (users != null && users.size() > 0) ? users : null;


    }

我用断点进入,发现在serviceImplement层,users是有值的,分别取到一个用户user的username和user_pwd的2个属性,可是到了jsp层,为何出现的是com.frame.model.User@123456的输出结果?而且,页面没有输出值。请教,应该如何写才好?谢谢!

  • 写回答

3条回答 默认 最新

      报告相同问题?

      相关推荐 更多相似问题

      悬赏问题

      • ¥15 网页设计与开发html
      • ¥15 bin格式的程序文件烧录GD32F105芯片。起始地址填多少?
      • ¥15 python对txt文件的处理
      • ¥25 需要一个能在H5中实现扫码的插件
      • ¥50 ArcGIS或MATLAB实现批量计算整个tif图像的EVI
      • ¥20 两个板子之间CAN通信ID号怎么设置
      • ¥15 两个板子CAN通信的话ID号怎么设置
      • ¥15 vue使用element-ui的el-upload上传图片至服务器,服务端使用的是node.js,图片上传成功,但界面显示不出来,是跨域问题?
      • ¥15 ANSYS APDL循环结果输出
      • ¥15 ArcGIS处理MODIS 09数据,计算EVI 像元值大小问题