Skip to content

六、JSP

一、坐标

xml
<dependency>
    <groupId>javax.servlet.jsp</groupId>
    <artifactId>jsp-api</artifactId>
    <version>2.2</version>
    <scope>provided</scope>
</dependency>

二、脚本

1、分类

  1. <%...%>:内容会直接放到_jspService()方法之中
  2. <%=...%>:内容会放到out.print()中,作为out.print()的参数
  3. <%!...%>:内容会放到_jspService()方法之外,被类直接包含

三、语法

1、导包

html
<%@ page import="org.example.pojo.Brand" %>

2、循环

html
<% 
	for (int i =0; i < brands.size(); i++){
        Brand brand = brands.get(i);
%>	
		<tr>
			<td><%= brand.getId() %></td>
             <td><%= brand.getBrandName() %></td>
             <td><%= brand.getCompanyName() %></td>
             <td><%= brand.getOrdered() %></td>
             <td><%= brand.getDescription() %></td>
             <td><%= brand.getStatus() %></td>
		</tr>
<%
    }
%>

3、条件分支

html
<%
	if(xxx){		
%>
		<div><%= 123 %></div>
<%
	}else{
%>      
		<div><%= 456 %></div>
<%
    }
%>

四、EL表达式

语法

html
${users}

案例代码:https://www.123pan.com/s/QvTuVv-gJjw.html

java->web下UserDemo

java
@WebServlet("/user")
public class UserDemo extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        SqlSessionFactory sqlSessionFactory = SqlSessionFactoryUtils.getSqlSessionFactory();
        SqlSession sqlSession = sqlSessionFactory.openSession();

        List<User> users = sqlSession.getMapper(UserMapper.class).selectAll();

        req.setAttribute("users", users);

        req.getRequestDispatcher("/user.jsp").forward(req, resp);


    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        this.doGet(req, resp);
    }
}

weapp->web下user.jsp

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

五、JSTL

1、坐标

xml
<dependency>
    <groupId>jstl</groupId>
    <artifactId>jstl</artifactId>
    <version>1.2</version>
</dependency>

<dependency>
    <groupId>taglibs</groupId>
    <artifactId>standard</artifactId>
    <version>1.1.2</version>
</dependency>

2、引入

在jsp页面引入JSTL标签库

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

3、使用