<%! int a=10;%>这是一个首页
<%--一段注释
--%><% String[] strs = { "qqq","www","eee"}; for(String s:strs){ out.print(s+""); } out.print(a);%>
<%! int a =10;%>
<%=a %>
<% out.print(a);%>
<% ArrayListarr = new ArrayList (); arr.add("qqq"); arr.add("www"); arr.add("vvv"); arr.add("xxx"); for(String s:arr){ System.out.println(s); };%>
--------------jsp篇
jsp, java server page jsp页面是在服务器上运行的一个页面动态网页
与后台有数据交互的页面与其他语言的区别:
jsp 使用java语言进行开发, 安全性高, 适合大型项目, 企业级的文本应用 分布式项目, 服务器集群, hadoop, spark asp.net 使用c#, .Net平台, 简单易用, 因为不开源, 所以安全性低, 并且不能跨平台 使用.Net开发项目, 最好使用windows系统和sqlserver数据库 php 简单 高效 成本低 开发周期短, 适合中小型企业的web应用开发 php的黄金搭档---(LAMP: linux, Apache, Mysql, PHP)Tomcat介绍
conf---Tomcat的所有配置 webapps---需要部署的项目 work---Tomcat运行之后编译的文件 lib运行Tomcat服务器所需要的 jar 文件运行项目的虚拟路径
右键点击项目 --> properties --> web project settings --> context root 更改这个名字就可以修改项目的虚拟路径 改完以后要重新部署项目并且重新启动Tomcatjsp的组成元素;
1, 指令 page指令 <%@ page ..........%> language---当前页面使用的语言:java import---当前页面引入的类库, 默认是啥也不引入 contentType---text/html; charset='字符集' iso-8859-1是字符集的默认值, 纯英文的字符集 isErrorPage---定义当前页面是否是一个错误提醒页面 errorPage---定义当当前页面出错时跳转的页面 include指令 taglib指令---标准标签库 2, 表达式 <%=变量名%> 3, 脚本 <% 代码内容 %> 4, 声明 <%! 代码声明 %> 5, 注释 可见<!-- --> 不可见<%-- --%> 脚本中使用的注释 /**/, // 6, 一些静态内容jsp九大内置对象(面试80%会问):
内置对象/作用域(每一种作用域的生命周期是不一样的): 1, application 全局作用域 2, session 会话作用域 3, request 请求作用域 4, pageContext 页面作用域 内置对象 5, response 响应对象 6, out 输出流对象 7, page 当前页面对象的实例 8, exception 异常 9, config ServletConfig/FilterConfig对象优先级(按照生命周期的长短):
application > session > request > pageContext 页面中的form表单提交方式: post: 提交内容不可见, 没有长度限制 get: 有长度限制, 提交内容在地址栏可见 request对象: request对象是HttpServletRequest这个类的实例 常用方法: String getParameter(String name)---返回name指定的参数的值 String[] getParameterValues(String name)---返回一个数组, 是包含那个参数名的所有的人 void setAttribute(String, Object)---设置某个作用域中的属性 Object getAttribute(String name)---获取某个作用域中的属性 String getRealPath(String path)---返回传入的这个路径的物理路径 String getContextPath()---返回上下文路径 String getServerName()---返回请求服务器的主机名 String getContentType()---返回请求体的MIME类型 String getprotocol()---返回请求用的协议类型和版本号 int getServerPort()---获取服务器的端口号 int getContentLength()---返回请求体的长度(单位是字节) String getRemoteAddr()---返回发送此请求的客户端的IP地址index<%@ include file="nva.jsp" %>
<% out.print(5/0);%>
error出现错误的提醒页面
<%=exception.getMessage() %>
menu4 <%/*session.setAttribute("user","admin123");*/%><%=request.getAttribute("rep") %>这是菜单4的页面
<%@ include file="nva.jsp" %>
<%request.setAttribute("req",123); %> <%=request.getRealPath("/") %> <%=request.getContextPath() %> <%=request.getServerName() %> <%=request.getContentType() %> <%=request.getProtocol() %> <%=request.getServerPort() %> <%=request.getContentLength() %> <%=request.getRemoteAddr() %>
menu2这是菜单2的页面
<%@ include file="nva.jsp" %>
<%=request.getAttribute("rep") %><%/* Object o=session.getAttribute("user"); if(o!=null){ out.print(o); }else{ out.print("session没有user属性!"); }*/ String username=request.getParameter("username"); String password=request.getParameter("password"); String[] cts = request.getParameterValues("ct"); out.print("接收到的参数:"+username); out.print("接收到的参数:"+password); for(String s:cts){ out.print("复选框的值:"+s+""); }%>