【目录】
【jstl】
JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能。
JSTL支持通用的、结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签。 除了这些,它还提供了一个框架来使用集成JSTL的自定义标签。
【修改步骤】
①添加jstl加包,pop.xml
1 <!-- https://mvnrepository.com/artifact/javax.servlet.jsp.jstl/jstl -->
2 <dependency>
3 <groupId>javax.servlet.jsp.jstl</groupId>
4 <artifactId>jstl-api</artifactId>
5 <version>1.2</version>
6 <exclusions>
7 <exclusion>
8 <groupId>javax.servlet</groupId>
9 <artifactId>servlet-api</artifactId>
10 </exclusion>
11 <exclusion>
12 <groupId>javax.servlet.jsp</groupId>
13 <artifactId>jsp-api</artifactId>
14 </exclusion>
15 </exclusions>
16 </dependency>
17 <dependency>
18 <groupId>org.glassfish.web</groupId>
19 <artifactId>jstl-impl</artifactId>
20 <version>1.2</version>
21 <exclusions>
22 <exclusion>
23 <groupId>javax.servlet</groupId>
24 <artifactId>servlet-api</artifactId>
25 </exclusion>
26 <exclusion>
27 <groupId>javax.servlet.jsp</groupId>
28 <artifactId>jsp-api</artifactId>
29 </exclusion>
30 <exclusion>
31 <groupId>javax.servlet.jsp.jstl</groupId>
32 <artifactId>jstl-api</artifactId>
33 </exclusion>
34 </exclusions>
35 </dependency>
②将SqlSession封装成工具类DBTools.java
1 package com.springdemo.tools; 2
3 import java.io.InputStream; 4 import java.io.Reader; 5
6 import org.apache.ibatis.io.Resources; 7 import org.apache.ibatis.session.SqlSession; 8 import org.apache.ibatis.session.SqlSessionFactory; 9 import org.apache.ibatis.session.SqlSessionFactoryBuilder; 10
11 public class DBTools { 12 public static SqlSessionFactory sessionFactory; 13 static{ 14 try { 15 //使用MyBatis提供的Resources类加载mybatis的配置文件
16 InputStream reader = Resources.getResourceAsStream("conf.xml"); 17 //构建sqlSession的工厂
18 sessionFactory = new SqlSessionFactoryBuilder().build(reader); 19 } catch (Exception e) { 20 e.printStackTrace(); 21 } 22 } 23 //创建能执行映射文件中sql的sqlSession
24 public static SqlSession getSession(){ 25 return sessionFactory.openSession(); 26 } 27
28 }
🌂修改DemoController.java
1 package com.springdemo.controller; 2 import java.util.List; 3
4 import javax.servlet.http.HttpServletRequest; 5 import javax.servlet.http.HttpServletResponse; 6
7 import org.springframework.stereotype.Controller; 8 import org.springframework.web.bind.annotation.RequestMapping; 9 import org.springframework.web.servlet.ModelAndView; 10
11 import com.springdemo.model.User; 12 import com.springdemo.tools.DBTools; 13
14 @Controller 15 @RequestMapping("/demo") 16 public class DemoController { 17
18 // @RequestMapping("/index") 19 // public String index(){ 20 // return "demo"; 21 // }
22
23 @RequestMapping("/index") 24 public ModelAndView listall(HttpServletRequest request,HttpServletResponse response){ 25
26 String stateselect = "com.springdemo.mapping.userMapper.selectUser"; 27 List<User> userList = DBTools.getSession().selectList(stateselect); 28
29 System.out.println("users"); 30 ModelAndView mav=new ModelAndView("demo"); 31 mav.addObject("users",userList); 32 return mav; 33 } 34 }
④修改demo.jsp
1 <%@ page language="java" contentType="text/html; charset=utf-8"
2 pageEncoding="utf-8"%>
3
4 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
5
6 <!DOCTYPE html>
7 <html>
8 <head>
9 <meta charset="utf-8">
10 <title>DomePage</title>
11 </head>
12 <body>
13
14 <h1>This is springMVC Demo Page</h1>
15
16 <c:forEach items="${users}" var="user">
17 用户名:${user.userName },用户密码:${user.userPwd }<br />
18 </c:forEach>
19
20 </body>
21 </html>
😭Tomcat部署结果