在jsp中怎么知道这个语句是表达式还是要执行java代码?

图片说明

<% request.setCharacterEncoding("utf-8"); %>
<%=request.getParameter("username")%>
为什么<% request.setCharacterEncoding("utf-8"); %> 是执行java代码,而
<%=request.getParameter("username")%>却是实行表达式?

执行java代码的那个末尾有“;”(分号),执行表达式的那个前面有“=”(等于)号。

<%%>是一般代码
<%!%>是定义全局的变量
<%=%>是输出变量
out是jsp的内置对象,在jsp编译的时候成java时自动生成的,可以直接使用;
实质上都是Servlet代码,执行后,编译成class文件才执行的

  这个百分号是Java指令的标签,其实jsp本质上是会被编译成class文件的,这个是底层的处理,现阶段只需要熟悉jsp语法就可以了。

这是jsp的基本语法,<%=值%>这个是将值写到jsp页面,相当于out.print,<%表达式%>这个是单纯的执行表达式。记住就行