当前位置: 首页 > news >正文

建网站都用什么字体设计师网络用语

建网站都用什么字体,设计师网络用语,保险公司早会新闻资讯,购门网站建设目录HTTPHTTP请求HTTP响应ServletServlet原理Mapping问题ServletContext获取ServletContext对象ServletContext应用HttpServletResponse下载文件验证码功能实现重定向HttpServletRequestCookie和Session会话CookieSession#xff08;重点#xff09;对比ServletContextJSPJSP… 目录HTTPHTTP请求HTTP响应ServletServlet原理Mapping问题ServletContext获取ServletContext对象ServletContext应用HttpServletResponse下载文件验证码功能实现重定向HttpServletRequestCookie和Session会话CookieSession重点对比ServletContextJSPJSP原理JSP基础语法JSP指令9大内置对象JSP标签、JSTL标签、EL表达式EL表达式 ${ }JSP标签JSTL表达式HTTP HTTP请求 客户端–发请求Request–服务器 百度 Request URL:https://www.baidu.com/ 请求地址 Request Method:GET get方法/post方法 Status Code:200 OK 状态码200 Remote远程 Address:14.215.177.39:443Accept:text/html Accept-Encoding:gzip, deflate, br Accept-Language:zh-CN,zh;q0.9 语言 Cache-Control:max-age0 Connection:keep-alive1、请求行 请求行中的请求方式GET 请求方式Get,Post,HEAD,DELETE,PUT,TRACT.… get请求能够携带的参数比较少大小有限制会在浏览器的URL地址栏显示数据内容不安全但高效post:请求能够携带的参数没有限制大小没有限制不会在浏览器的URL地址栏显示数据内容安全但不高效。 2、消息头 Accept告诉浏览器它所支持的数据类型 Accept-Encoding支持哪种编码格式 GBK UTF-8 GB2312 ISO8859-1 Accept-Language告诉浏览器它的语言环境 Cache-Control缓存控制 Connection告诉浏览器请求完成是断开还是保持连接 HOST主机..../.HTTP响应 服务器–响应…….客户端 百度 Cache-Control:private 缓存控制 Connection:Keep-Alive 连接 Content-Encoding:gzip 编码 Content-Type:text/html 类型 1、响应体 Accept告诉浏览器它所支持的数据类型 Accept-Encoding支持哪种编码格式 GBK UTF-8 GB2312 ISO8859-1 Accept-Language告诉浏览器它的语言环境 Cache-Control缓存控制 Connection告诉浏览器请求完成是断开还是保持连接 HOST主机..../. Refresh告诉客户端多久刷新一次 Location让网页重新定位2、响应状态码 200请求响应成功200 3xx:请求重定向·重定向你重新到我给你新位置去 4xx:找不到资源404·资源不存在 5xx:服务器代码错误 500 502:网关错误 Servlet Servlet就是sun公司开发动态web的一门技术. Sun在这些APi中提供一个接口叫做Servlet如果你想开发一个Servlet程序只需要完成两个小步骤 1.编写一个类实现Serlet接口 2.把开发好java类部署到web服务器中。 把实现了Servlet接口的Java程序叫做Servlet Servlet原理 Servlet是由Web服务器调用web服务器在收到浏览器请求之后会 Mapping问题 一个servlet可以指定一个映射路径 servlet-mappingservlet-namehello/servlet-nameurl-pattern/hello/url-pattern/servlet-mapping一个servlet可以指定多个映射路径 servlet-mappingservlet-namehello/servlet-nameurl-pattern/hello/url-pattern/servlet-mappingservlet-mappingservlet-namehello/servlet-nameurl-pattern/hello2/url-pattern/servlet-mappingservlet-mappingservlet-namehello/servlet-nameurl-pattern/hello3/url-pattern/servlet-mappingservlet-mappingservlet-namehello/servlet-nameurl-pattern/hello4/url-pattern/servlet-mappingservlet-mappingservlet-namehello/servlet-nameurl-pattern/hello5/url-pattern/servlet-mapping 一个servlet可以指定通用映射路径 servlet-mappingservlet-namehello/servlet-nameurl-pattern/hello/*/url-pattern/servlet-mapping 默认请求路径 !--默认请求路径--servlet-mappingservlet-namehello/servlet-nameurl-pattern/*/url-pattern/servlet-mapping 指定一些后缀或者前缀等等…比如后续一些框架会用*.do或者*.action之类的 !--可以自定义后缀实现请求映射注意点*前面不能加项目映射的路径hello/sajdlkajda.qinjiang--servlet-mappingservlet-namehello/servlet-nameurl-pattern*.qinjiang/url-pattern/servlet-mapping 优先级问题 指定了固有的映射路径优先级最高如果找不到就会走默认的处理请求 !--404--servletservlet-nameerror/servlet-nameservlet-classcom.kuang.servlet.ErrorServlet/servlet-class/servletservlet-mappingservlet-nameerror/servlet-nameurl-pattern/*/url-pattern/servlet-mapping ServletContext web容器在启动的时候它会为每个web程序都创建一个对应的ServletContext对象它代表了当前的web应用 获取ServletContext对象 共享数据以后一般用session或者request实现 我在这个Servlet中保存的数据可以在另外一个servlet中拿到 HelloServlet public class HelloServlet extends HttpServlet {Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//this.getInitParameter() 初始化参数//this.getServletConfig() Servlet配置//this.getServletContext() Servlet上下文ServletContext context this.getServletContext();String username 自行车; //数据context.setAttribute(username,username); //将一个数据保存在了ServletContext中名字为username 。值 username}} GetServlet public class GetServlet extends HttpServlet {Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {ServletContext context this.getServletContext();String username (String) context.getAttribute(username);resp.setContentType(text/html);resp.setCharacterEncoding(utf-8);resp.getWriter().print(名字username);}Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);} } web.xml映射 servletservlet-namehello/servlet-nameservlet-classcom.kuang.servlet.HelloServlet/servlet-class/servletservlet-mappingservlet-namehello/servlet-nameurl-pattern/hello/url-pattern/servlet-mappingservletservlet-namegetc/servlet-nameservlet-classcom.kuang.servlet.GetServlet/servlet-class/servletservlet-mappingservlet-namegetc/servlet-nameurl-pattern/getc/url-pattern/servlet-mapping ServletContext应用 获取初始化参数几乎不用了解即可 !--配置一些web应用初始化参数--context-paramparam-nameurl/param-nameparam-valuejdbc:mysql://localhost:3306/mybatis/param-value/context-paramprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {ServletContext context this.getServletContext();String url context.getInitParameter(url);resp.getWriter().print(url); }servletservlet-namegp/servlet-nameservlet-classcom.cheng.servlet.ServletDemo03/servlet-class/servletservlet-mappingservlet-namegp/servlet-nameurl-pattern/gp/url-pattern/servlet-mapping请求转发这个一般用request实现 Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {ServletContext context this.getServletContext();System.out.println(进入了ServletDemo04);//RequestDispatcher requestDispatcher context.getRequestDispatcher(/gp); //转发的请求路径//requestDispatcher.forward(req,resp); //调用forward实现请求转发context.getRequestDispatcher(/gp).forward(req,resp); }读取资源文件这个一般可以用类加载或反射去实现 Properties 在java目录下新建properties 在resources目录下新建properties 发现都被打包到了同一个路径下classes我们俗称这个路径为classpath: 思路需要一个文件流 usernameroot12312 passwordzxczxczxcpublic class ServletDemo05 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {InputStream is this.getServletContext().getResourceAsStream(/WEB-INF/classes/com/kuang/servlet/aa.properties);Properties prop new Properties();prop.load(is);String user prop.getProperty(username);String pwd prop.getProperty(password);resp.getWriter().print(user:pwd);}Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);} } HttpServletResponse web服务器接收到客户端的http请求针对这个请求分别创建代表请求的HttpServletRequest对象代表响应的一个HttpServletResponse 如果要获取客户端请求过来的参数找HttpServletRequest如果要给客户端响应一些信息找HttpServletResponse 负责向浏览器发送数据的方法 servletOutputstream getOutputstream() throws IOException;Printwriter getwriter() throws IOException;负责向浏览器发送响应头的方法 void setCharacterEncoding(String var1) void setContentLength(int var1) void setContentLengthLong(long var1); void setContentType(String var1) void setDateHeader(String varl,long var2) void addDateHeader(String var1,long var2) void setHeader(String var1,String var2); void addHeader(String var1,String var2) void setIntHeader(String var1,int var2); void addIntHeader(String varl,int var2);下载文件 要获取下载文件的路径下载的文件名是啥设置想办法让浏览器能够支持下载我们需要的东西获取下载文件的输入流创建缓冲区获取OutputStream对象将FileOutputStream流写入到bufer缓冲区使用OutputStream将缓冲区中的数据输出到客户端 Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// 1. 要获取下载文件的路径String realPath D:\Users\Administrator\IdeaProjects\kuangshen\javaweb-05-servlet\servlet3\src\img\天红.jpg;System.out.println(下载文件的路径realPath);// 2. 下载的文件名是啥String fileName realPath.substring(realPath.lastIndexOf(\\) 1);// 3. 设置想办法让浏览器能够支持(Content-Disposition)下载我们需要的东西,中文文件名URLEncoder.encode编码否则有可能乱码resp.setHeader(Content-Disposition,attachment;filenameURLEncoder.encode(fileName,UTF-8));// 4. 获取下载文件的输入流FileInputStream in new FileInputStream(realPath);// 5. 创建缓冲区int len 0;byte[] buffer new byte[1024];// 6. 获取OutputStream对象ServletOutputStream out resp.getOutputStream();// 7. 将FileOutputStream流写入到buffer缓冲区,使用OutputStream将缓冲区中的数据输出到客户端while ((lenin.read(buffer))0){out.write(buffer,0,len);}in.close();out.close(); } 验证码功能 验证怎么来的? 前端实现后端实现需要用到Java的图片类生成一个图片 public class ImageServlet extends HttpServlet {Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//让浏览器3秒自动刷新一次;resp.setHeader(refresh,3);//在内存中创建一个图片BufferedImage image new BufferedImage(80,20,BufferedImage.TYPE_INT_RGB);//得到图片Graphics2D g (Graphics2D) image.getGraphics(); //笔//设置图片的背景颜色g.setColor(Color.white);g.fillRect(0,0,80,20);//给图片写数据g.setColor(Color.BLUE);g.setFont(new Font(null,Font.BOLD,20));g.drawString(makeNum(),0,20);//告诉浏览器这个请求用图片的方式打开resp.setContentType(image/jpeg);//网站存在缓存不让浏览器缓存resp.setDateHeader(expires,-1);resp.setHeader(Cache-Control,no-cache);resp.setHeader(Pragma,no-cache);//把图片写给浏览器ImageIO.write(image,jpg, resp.getOutputStream());}//生成随机数private String makeNum(){Random random new Random();String num random.nextInt(9999999) ;StringBuffer sb new StringBuffer();for (int i 0; i 7-num.length() ; i) {sb.append(0);}num sb.toString() num;return num;}Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);} }实现重定向 void sendRedirect(String var1) throws IOException;重定向和请求转发的区别 相同点 页面都会实现跳转 不同点请求转发的时候URL地址栏不会产生变化状态码307重定向的时候URL地址栏会发生变化302 常见场景用户登录 index.jsp html body h2Hel1o World!/h2 % page contentTypetext/html; charsetUTF-8%%--这里超交的路径,需要寻找到项目的路径--% %--${pageContext. request, contextPath}代表当前的项目--% form action${pageContext.request.contextPath}/login methodget用户名: input typetext nameusername br密码: input typepassword namepassword brinput typesubmit /form/body /htmlRedirect.java public class Redirect extends HttpServlet {Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//处理方求String username req.getParameter( s: username);String password rea.getParameter( s: password);System.out.println(username:password);resp.sendRedirect(s: /success.jsp);} }HttpServletRequest HttpServletRequest代表客户端的请求用户通过Http协议访问服务器HTTP请求中的所有信息会被封装到HttpServletRequest通过这个HttpServletRequest的方法获得客户端的所有信息 获取参数请求转发 例子 index.jsp html body h2Hel1o World!/h2 % page contentTypetext/html; charsetUTF-8%%--这里提交的路径,需要寻找到项目的路径--% %--${pageContext. request, contextPath}代表当前的项目--% div styletext-align: centerform action${pageContext.request.contextPath}/login methodpost用户名: input typetext nameusername br密码: input typepassword namepassword br爱好input typecheckbox namehobbys value女孩女孩input typecheckbox namehobbys value代码代码input typecheckbox namehobbys valueokokbrinput typesubmit/form/div /body /htmlOverrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {req.setCharacterEncoding(utf-8);resp.setCharacterEncoding(utf-8);String username req.getParameter(username);String password req.getParameter(password);String[] hobbys req.getParameterValues(hobbys);System.out.println();//后台接收中文乱码问题System. out.println(username);System. out.println(password);System.out.println(Arrays.toString(hobbys));System. out.println();System. out.println(req.getContextPath());//通过请求转发//这里的/代表当前的web应用req.getRequestDispatcher(/success.jsp).forward(req,resp);}Cookie和Session 会话 会话 用户打开一个浏览器点击了很多超链接访问多个web资源关闭浏览器这个过程可以称之为会话 有状态会话 一个同学来过教室下次再来教室我们会知道这个同学曾经来过称之为有状态会话 你能怎么证明你是某培训班的学生 你客户端学校服务器 发票。学校给你发票学校登记。学校标记你来过了 一个网站怎么证明你来过 客户端 服务端 服务端给客户端一个 信件客户端下次访问服务端带上信件就可以了 cookie服务器登记你来过了下次你来的时候我来匹配你seesion 保存会话的两种技术 cookie 客户端技术 响应请求session 服务器技术利用这个技术可以保存用户的会话信息 我们可以把信息或者数据放在Session中 常见场景网站登录之后你下次不用再登录了第二次访问直接就上去了 Cookie 从请求中拿到cookie信息服务器响应给客户端cookie 常用方法 Cookie[] cookies req.getCookies(); //获得Cookie cookie.getName(); //获得cookie中的key cookie.getValue(); //获得cookie中的vlaue new Cookie(xxx(name), value); //新建一个cookie cookie.setMaxAge(x); //设置cookie的有效期 秒 resp.addCookie(cookie); //响应给客户端一个cookie 演示例子 public class CookieDemo01 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//例子服务器告诉你你来的时间把这个时间封装成一个信件你下次带来服务器就知道你来了//解决中文乱码req.setCharacterEncoding(utf-16);resp.setCharacterEncoding(utf-16);PrintWriter out resp.getWriter();// cookie,服务器从客户端中取得Cookie[] cookies req.getCookies(); //这里返回数组 说明cookie可能存在多个//判断cookie是否存在if(cookies!null){//如果存在out.write(你上次访问的时间是);for (Cookie cookie : cookies) {if (cookie.getName().equals(lastLoginTime)){//获取cookie中的值long lastLoginTime Long.parseLong(cookie.getValue());Date date new Date(lastLoginTime);out.write(date.toLocaleString());}}}else{out.write(这是你第一次访问本站);}//服务器给客户端响应一个cookieCookie cookie new Cookie(lastLoginTime, System.currentTimeMillis());resp.addCookie(cookie);}Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);} }删除Cookie方法 不设置有效期关闭浏览器自动失效 设置有效期时间为 0 public class CookieDemo02 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// 创建一个cookie名字必须要和要删除的名字一致Cookie cookie new Cookie(lastLoginTime, System.currentTimeMillis() );//将cookie有效期设置为0立马过期cookie.setMaxAge(0);resp.addCookie(cookie);}Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);} }如果要设置中文的cookie值要编码解码 URLEncoder.encode(你好,utf-8) URLDecoder.decode(cookie.getValue(),UTF-8)cookie一般会保存在本地的 用户目录下 appdata一个Cookie只能保存一个信息一个web站点可以给浏览器发送多个cookie最多存放20个cookieCookie大小有限制4kb300个cookie为浏览器上限 Session重点 什么是Session 服务器会给每一个用户浏览器创建一个Session对象一个Session独占一个浏览器只要浏览器没有关闭这个Session就存在用户登录之后整个网站它都可以访问– 保存用户的信息保存购物车的信息…… Session和Cookie的区别 Cookie是把用户的数据写给用户的浏览器浏览器保存 可以保存多个Session把用户的数据写到用户独占Session中服务器端保存 保存重要的信息减少服务器资源的浪费Session对象由服务创建 使用场景 保存一个登录用户的信息购物车信息在整个网站中经常会使用的数据我们将它保存在Session中 演示例子 public class SessionDemo01 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//解决乱码问题req.setCharacterEncoding(utf-8);resp.setCharacterEncoding(utf-8);resp.setContentType(text/html;charsetutf-8);//得到sessionHttpSession session req.getSession();//往session中存东西session.setAttribute(name,new Person(你好,1));//获取Session的IDString sessionId session.getId();//判断Session是不是新创建if (session.isNew()){resp.getWriter().write(session创建成功,ID:sessionId);}else {resp.getWriter().write(session已经在服务器中存在了,ID:sessionId);}//看看Session创建的时候做了什么事情Cookie cookie1 new Cookie(JSESSIONID,sessionId);resp.addCookie(cookie1);Cookie cookie2 new Cookie(test,sessionId);resp.addCookie(cookie2);}Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);} } 手动注销会话 session.invalidate();会话自动过期web.xml配置 !--设置Session默认的失效时间-- session-config!--15分钟后Session自动失效以分钟为单位--session-timeout15/session-timeout /session-config对比ServletContext JSP Java Server Pages Java服务器端页面也和Servlet一样用于动态Web技术 最大的特点 写JSP就像在写HTML 区别 HTML只给用户提供静态的数据 JSP页面中可以嵌入Java代码为用户提供动态数据 JSP原理 浏览器向服务器发送请求不管访问什么资源其实都是在访问Servlet JSP最终也会被转换成为一个Java类 JSP 本质上就是一个Servlet //初始化public void _jspInit() {} //销毁public void _jspDestroy() {} //JSPServicepublic void _jspService(.HttpServletRequest request,HttpServletResponse response) 内置的一些对象 final javax.servlet.jsp.PageContext pageContext; //页面上下文 javax.servlet.http.HttpSession session null; //session final javax.servlet.ServletContext application; //applicationContext final javax.servlet.ServletConfig config; //config javax.servlet.jsp.JspWriter out null; //out final java.lang.Object page this; //page当前 HttpServletRequest request //请求 HttpServletResponse response //响应输出页面前增加的代码 response.setContentType(text/html); //设置响应的页面类型 pageContext _jspxFactory.getPageContext(this, request, response,null, true, 8192, true); _jspx_page_context pageContext; application pageContext.getServletContext(); config pageContext.getServletConfig(); session pageContext.getSession(); out pageContext.getOut(); _jspx_out out;以上的这些个对象我们可以在JSP页面中直接使用 原理图 在JSP页面中 只要是 JAVA代码就会原封不动的输出 如果是HTML代码就会被转换为类似以下的 out.write(html\r\n);这样的格式输出到前端 JSP基础语法 任何语言都有自己的语法Java中也有。 JSP 作为Java技术的一种应用它拥有一些自己扩充的语法了解知道即可Java所有语法都支持 JSP表达式 %--JSP表达式作用用来将程序的输出输出到客户端% 变量或者表达式% 即% %里面可以直接写java代码--%% new java.util.Date()%JSP脚本片段 %--jsp脚本片段--%%int sum 0;for (int i 1; i 100 ; i) {sumi;}out.println(h1Sumsum/h1);%JSP声明 %!static {System.out.println(Loading Servlet!);}private int globalVar 0;public void method(){System.out.println(进入了方法method);}%JSP声明会被编译到JSP生成Java的类中其他的就会被生成到_jspService方法中 在JSP嵌入Java代码即可 %% %% %!%%--注释--%JSP的注释不会在客户端显示HTML就会 JSP指令 %page args.... % %-- 例如定制错误页面不同的错误要去不同的页面的话要去web.xml配置 --% %page errorPage... % %include file%%--include会将两个页面合二为一--%%include filecommon/header.jsp% h1网页主体/h1%include filecommon/footer.jsp%hr%--jSP标签jsp:include拼接页面本质还是三个--% jsp:include page/common/header.jsp/ h1网页主体/h1 jsp:include page/common/footer.jsp/ 输出 9大内置对象 PageContext 存东西Request 存东西ResponseSession 存东西Application 【SerlvetContext】 存东西config 【SerlvetConfig】outpage 不用了解exception % page languagejava contentTypetext/html; charsetutf-8pageEncodingutf-8% html body %--内置对象--% %pageContext.setAttribute(name1,1号); //保存的数据只在一个页面中有效作用域最低转发之后就消失request.setAttribute(name2,2号); //保存的数据只在一次请求中有效请求转发会携带这个数据session.setAttribute(name3,3号); //保存的数据只在一次会话中有效从打开浏览器到关闭浏览器application.setAttribute(name4,4号); //保存的数据在服务器中有效从打开服务器到关闭服务器作用域最高//或者可以 // pageContext.setAttribute(name1,1号, 3); // 跟session.setAttribute(name3,3号);等价// PAGE_SCOPE 1; // REQUEST_SCOPE 2; // SESSION_SCOPE 3; // APPLICATION_SCOPE 4; % %--脚本片段中的代码会被原封不动地生成到.jsp.java--% %--要求这里面的代码必须符合java语法的正确性--% %// 从pageContext中取出通过寻找的方式来获得// 作用域从底层到高层page request session application// 从低到高一层层找高层找到就用高层的即使地层有也不用低层的找不到就返回null// JVM双亲委派机制String name1 (String) pageContext.findAttribute(name1);String name2 (String) pageContext.findAttribute(name2);String name3 (String) pageContext.findAttribute(name3);String name4 (String) pageContext.findAttribute(name4);String name5 (String) pageContext.findAttribute(name5);// 不存在 %%--使用EL表达式 ${ } 输出--% h1输出的值为/h1 h3${name1}/h3 h3${name2}/h3 h3${name3}/h3 h3${name4}/h3h3${name5}/h3 %--对于不存在的使用EL表达式什么也不会输出在页面使用以下这个的话会在页面显示null影响体验--% h3%name5%/h3/body /html %pageContext.forward(/index.jsp); // 页面层面的转发request.getRequestDispatcher(/index.jsp).forward(request,response); // 后台层面的转发 %request 客户端向服务器发送请求产生的数据用户看完就没用了比如新闻用户看完没用的 session 客户端向服务器发送请求产生的数据用户用完一会还有用比如购物车 application 客户端向服务器发送请求产生的数据一个用户用完了其他用户还可能使用比如聊天数据 JSP标签、JSTL标签、EL表达式 !-- JSTL表达式的依赖 -- dependencygroupIdjavax.servlet.jsp.jstl/groupIdartifactIdjstl-api/artifactIdversion1.2/version /dependency !-- standard标签库 -- dependencygroupIdtaglibs/groupIdartifactIdstandard/artifactIdversion1.1.2/version /dependencyEL表达式 ${ } 获取数据执行运算获取web开发的常用对象 JSP标签 jsptag.jsp jsp:forward page/jsptag2.jspjsp:param namename valuecheng/jsp:paramjsp:param nameage value12/jsp:param /jsp:forward %-- http://localhost:8080/jsptag.jsp?namechengage12 --%jsptag2.jsp %request.getParameter(name)% %request.getParameter(age)%JSTL表达式 JSTL标签库的使用就是为了弥补HTML标签的不足它自定义许多标签可以供我们使用标签的功能和Java代码一样。 JSTL标签库种类 格式化标签 SQL标签 XML 标签 核心标签 掌握部分 JSTL标签库使用步骤 引入对应的 taglib有时候在Tomcat 也需要引入 jstl的包否则会报错JSTL解析错误 使用其中的方法 %--引入JSTL核心标签库 这样才能使用JSTL核心标签--% % taglib prefixc urihttp://java.sun.com/jsp/jstl/core %c:if form actioncoreif.jsp methodgetinput typetext nameusername value${param.username}input typesubmit value登录%-- 判断如果登录的是admin则登录成功--%c:if test${param.usernameadmin} varisAdminc:out value管理员欢迎您//c:if%--自闭合标签--%c:out value${isAdmin}//formc:choose和c:when %--定义一个变量score值为85--% c:set varscore value85/c:choosec:when test${score90}你的成绩为优秀/c:whenc:when test${score80}你的成绩为一般/c:whenc:when test${score70}你的成绩为良好/c:whenc:when test${score60}你的成绩为不及格/c:when /c:choosec:forEach %ArrayListString people new ArrayList();people.add(0,张三);people.add(1,李四);people.add(2,王五);people.add(3,赵六);people.add(4,田六);request.setAttribute(list,people); %%-- var , 每一次遍历出来的变量 items, 要遍历的对象 begin, 哪里开始 end, 到哪里 step, 步长 --% c:forEach varpeople items${list}c:out value${people}/ br /c:forEachhrc:forEach varpeople items${list} begin1 end3 step1 c:out value${people}/ br /c:forEach 输出 张三 李四 王五 赵六 田六 --------- 李四 王五 赵六
http://wiki.neutronadmin.com/news/331583/

相关文章:

  • 做直播网站需要学什么软件什么是h5设计
  • 济南网站建设vashine去哪里投诉百度公司
  • 企业营销网站建设系统关于建设设计院公司网站的建议
  • 网站自然排名往后掉手机首页
  • 网站被取消备案2018做技术分享网站有前景吗
  • 大型网站设计方案如何在网站上做网盘
  • 云南房产网站建设网络营销方法有什么
  • 上海建网站方案怎样优化关键词到首页
  • 广州网站建设设计哪家好电商网站建设与运营方向
  • 怎么知道网站的ftp简易的建筑人才网
  • 单页网站的制作营销外贸网站建设案例
  • 临沂网站建设技术支持免费的排版软件
  • 网站建站东莞安阳论坛最新消息
  • 工业企业网络推广方案seo要点
  • 怎么查网站空间广州网站建设怎么做
  • 做调查问卷网站云南交投集团公路建设有限公司网站
  • 怎么注册17做网站漯河做网站优化
  • 两学一做注册网站吗怎么查看网站用什么做的
  • 河南网站建设制作价格图片展示网页设计
  • 网站挂马个人问题还是服务商顺的网站建设报价
  • 哪个网站可以做任务郑州市住建局官网
  • 网站建设客户需求表 文库小程序开发文档api
  • 微信公众号转入公司网站建设南宁本地有几家网站开发
  • html5 后台网站模板做商业网站
  • 做企业公司网站深圳市龙华区房价
  • 烟台做网站推广的公司灰大设计导航
  • 网站建设丨金手指谷哥14怎么制作公众号推文
  • 建站行业已死制作网页需要的技术
  • 网站联系方式修改织梦最佳外贸建站平台
  • 微信小程序可以做音乐网站吗竞价网站做招商加盟可以不备案吗