• Spring 使用JSTL标签显示后台数据


    1. 先上项目结构图,其中config包下的代码文件参见前一篇博客   http://www.cnblogs.com/njust-ycc/p/6123505.html

                                                                       

       引包:

                                                   

    2. 主要代码

     (1)User类

    package web.entity;
    
    
    /**
     *@author 作者  Yu chenchen
     *@version 创建时间:2016年12月2日 下午4:53:00 
     *类说明:
     */
    /**
     * @author YU
     *
     */
    public class User {
    
        public String name;
        public String password;
        public String date;
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public String getPassword() {
            return password;
        }
    
        public void setPassword(String password) {
            this.password = password;
        }
    
        public String getDate() {
            return date;
        }
    
        public void setDate(String date) {
            this.date = date;
        }
    
    }

    (2)UserInter接口

    package web.inter;
    
    import java.util.List;
    import web.entity.User;
    
    /**
     *@author 作者  Yu chenchen
     *@version 创建时间:2016年12月2日 下午4:54:45 
     *类说明:
     */
    public interface UserInter {
        //获取用户信息接口
        public List<User> getUserInfo();
    }

    (3)UserImp类,实现UserInter接口

    package web.imp;
    
    import java.util.ArrayList;
    import java.util.List;
    import org.springframework.stereotype.Component;
    import web.entity.User;
    import web.inter.UserInter;
    import web.utils.DateUtil;
    
    /**
     *@author 作者  Yu chenchen
     *@version 创建时间:2016年12月2日 下午4:56:37 
     *类说明:
     */
    
    @Component
    public class UserImp implements UserInter {
    
        //模拟从数据库中获取数据
        @Override
        public List<User> getUserInfo() {
            List<User> list=new ArrayList<User>();
            for(int i=0;i<20;i++)
            {
              User user=new User();
              user.setName("ycc_"+i);
              user.setPassword("123_"+i);
              user.setDate(DateUtil.getCurrentTime());
              list.add(user);
            }
            return list;
        }
    
    }

    (4)UserController控制器

    package web.controller;
    
    import java.util.Map;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Controller;
    import org.springframework.ui.Model;
    import org.springframework.web.bind.annotation.RequestMapping;
    import static org.springframework.web.bind.annotation.RequestMethod.*;
    import web.inter.UserInter;
    
    /**
     *@author 作者  Yu chenchen
     *@version 创建时间:2016年12月2日 下午5:06:20 
     *类说明:
     */
    @Controller
    @RequestMapping("/user")
    public class UserController {
        public UserInter userInter;
    
        //自动注入userInter接口实例
        @Autowired
        public UserController(UserInter userInter) {
            this.userInter = userInter;
        }
        
        //使用Spring的Model
       @RequestMapping(value="/userInfo",method=GET)
        public String showUserInfo(Model model){
             model.addAttribute("userList",userInter.getUserInfo());
            return "userInfo";//返回视图名称
        }
       
       //使用java.util.Map类型
       @RequestMapping(value="/userInfo2",method=GET)
       public String showUserInfo2(Map model){
           model.put("userList", userInter.getUserInfo());        
           return "userInfo";//返回视图名称
       }
    }

      Model和Map其实都是以键值对的形式存储对象,这里的存储的userList将会传到前台页面。

    (5)userInfo.jsp 

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    <!-- 屏蔽tomcat 自带的 EL表达式 -->
    <%@ page isELIgnored="false" %>
    <!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>用户列表</title>
    </head>
    <body>
          
          <table cellspacing="10px" cellpadding="10px" align="center" style="background-color: silver;">
            <c:forEach items="${userList}" var="user">
               <tr><td><c:out value="${user.name}"/></td><td><c:out value="${user.password}"/></td><td><c:out value="${user.date}"/></td></tr>      
            </c:forEach>
          </table>
          
    </body>
    </html>

    启用JSTL:

    <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

    这里注意要屏蔽tomcat自带的EL表达式,否则JSTL不起作用

    3. 测试

        

  • 相关阅读:
    mycat主要参数
    Linux上通过docker方式安装mysql
    Docker镜像拉取慢的解决方法
    mysql关联、子查询索引优化
    Mysql优化单表查询
    Mysql如何快速插入100万条记录?
    git连接到github
    git分支操作2
    git基本操作1
    git简介及安装(win10)
  • 原文地址:https://www.cnblogs.com/njust-ycc/p/6127157.html
Copyright © 2020-2023  润新知