JavaWeb与JSP初识

简介:

JavaWeb执行过程

422101-20170113223321338-2083262704.png

目录结构

  1. Web程序部署在Tomcat的/webapps下面。
  2. 一个webapps文件夹可以部署多个不同的Web应用,webapps/web1,webapps/web2。

  3. 如果不适用上下文路径,Web程序需放到webapps/ROOT下面。ROOT文件下的程序使用http://localhost:8080访问。

JSP的特点

HTMl代码与Java程序共同存在。

<%--
  Created by IntelliJ IDEA.
  User: e550
  Date: 2017/1/9
  Time: 23:24
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" import="java.util.*" language="java" %>
<%
    Locale locale = request.getLocale();
    Calendar calendar = Calendar.getInstance(locale); // 获取用户所在地的时间
    int hour = calendar.get(Calendar.HOUR_OF_DAY); // 获取小时
    String greeting = "";
    if (hour <= 6) {
        greeting = "凌晨好,您该睡觉了。良好的睡眠是美好一天的开始。";
    } else if (hour <=9 ) {
        greeting = "早上好,早餐要有营养。";
    } else if (hour <= 12) {
        greeting = "上午好,工作注意保护眼睛。";
    } else if (hour <=18) {
        greeting = "下午好,小心工作打瞌睡。";
    } else if (hour <= 24) {
        greeting = "晚上好,注意休息,睡觉不要太晚哦~";
    }
%>
<html>
  <head>
    <title>来自智能管家的问候</title>
  </head>
  <body>
  <%= greeting%>
  </body>
</html>

422101-20170114004422322-1584071941.png

JSP脚本

JSP脚本必须使用"<%"与"%>"括起来,否则会被视为模板数据。

<%--
  Created by IntelliJ IDEA.
  User: e550
  Date: 2017/1/9
  Time: 23:24
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" import="java.util.*" language="java" %>
<%
    int num = 10;
    int result = 1;
    for (int i=1;i<=num;i++) {
        result *= i;
    }
    out.println("数字" + num + "的阶乘为:"+result);
%>
<html>
  <head>
    <title>jsp测试</title>
  </head>
  <body>
  </body>
</html>

结果:数字10的阶乘为:3628800

JSP输出

<%= 
    // something
%>
<%--
  Created by IntelliJ IDEA.
  User: e550
  Date: 2017/1/9
  Time: 23:24
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" import="java.util.*" language="java" %>
<%
    int num = 10;
    int result = 1;
    for (int i=1;i<=num;i++) {
        result *= i;
    }

%>
<html>
  <head>
    <title>jsp测试</title>
  </head>
  <body>
   数字 <%= num%>的阶乘为:<%= result%>
  </body>
</html>

JSP注释

<%--
    这是JSP注释,可以添加多行注释
--%>

JSP方法使用

<%!
    // 方法
%>

out.println()输出到客户端。
在out.println()中,out是response的实例,是以response为对象进行流输出的,即将内容输出到客户端。

System.out.println()打印在控制台当中。
System.out.println()用的是标准输出流,这个是输出在控制台上的,而JSP不是控制台程序。不管是在JSP还是在JAVA程序中,System.out.println()都是打印在控制台上。 如果想打印在页面,简单点的方法是:
out.print( "要打印的内容" );

<%--
  Created by IntelliJ IDEA.
  User: e550
  Date: 2017/1/9
  Time: 23:24
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" import="java.util.*" language="java" %>
<%!
   String t = "";
   public void test() {
       t = "JSP方法测试";
   }
%>
<html>
  <head>
    <title>jsp测试</title>
  </head>
  <body>
   <%
       test();
   %>
   <%= t%>
  </body>
</html>

JSP 中if语句的使用

<%--
  Created by IntelliJ IDEA.
  User: e550
  Date: 2017/1/9
  Time: 23:24
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" import="java.util.*" language="java" %>

<html>
  <head>
    <title>jsp测试</title>
  </head>
  <body>
   <%
       String param = request.getParameter("param");
       if ("1".equals(param)) {
   %>
   Java
   <%
       }
       else if ("2".equals(param)) {
   %>
   PHP
   <%
       }
   %>

  </body>
</html>

422101-20170114003454791-1236495342.png

for循环

<%--
  Created by IntelliJ IDEA.
  User: e550
  Date: 2017/1/9
  Time: 23:24
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" import="java.util.*" language="java" %>

<html>
  <head>
    <title>jsp测试</title>
  </head>
  <body>
   <%
       for(int i=1;i<=10;i++) {
   %>
   <div>
       <%out.print("hello world!"+i);%>
   </div>
   <%
       }
   %>

  </body>
</html>

422101-20170114004042119-153497894.png

方法论:感觉很像php。




本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/6284505.html,如需转载请自行联系原作者

相关文章
|
19天前
|
监控 JavaScript 前端开发
《理解 WebSocket:Java Web 开发的实时通信技术》
【4月更文挑战第4天】WebSocket是Java Web实时通信的关键技术,提供双向持久连接,实现低延迟、高效率的实时交互。适用于聊天应用、在线游戏、数据监控和即时通知。开发涉及服务器端实现、客户端连接及数据协议定义,注意安全、错误处理、性能和兼容性。随着实时应用需求增加,WebSocket在Java Web开发中的地位将更加重要。
|
8天前
|
Web App开发 Java 应用服务中间件
【Java Web】在 IDEA 中部署 Tomcat
【Java Web】在 IDEA 中部署 Tomcat
20 0
|
17天前
|
安全 前端开发 Java
Java Web开发知识点学习总结
Java Web开发涉及Java基础、Servlet、JSP、数据库操作(SQL+JDBC)、MVC设计模式、Spring框架、Hibernate ORM、Web服务(SOAP&RESTful)、安全认证(HTTP Basic/Digest/OAuth)及性能优化(缓存、异步、负载均衡)。
16 3
|
20天前
|
XML JSON JavaScript
使用JSON和XML:数据交换格式在Java Web开发中的应用
【4月更文挑战第3天】本文比较了JSON和XML在Java Web开发中的应用。JSON是一种轻量级、易读的数据交换格式,适合快速解析和节省空间,常用于API和Web服务。XML则提供更强的灵活性和数据描述能力,适合复杂数据结构。Java有Jackson和Gson等库处理JSON,JAXB和DOM/SAX处理XML。选择格式需根据应用场景和需求。
|
20天前
|
前端开发 安全 Java
使用Java Web框架:Spring MVC的全面指南
【4月更文挑战第3天】Spring MVC是Spring框架的一部分,用于构建高效、模块化的Web应用。它基于MVC模式,支持多种视图技术。核心概念包括DispatcherServlet(前端控制器)、HandlerMapping(请求映射)、Controller(处理请求)、ViewResolver(视图解析)和ModelAndView(模型和视图容器)。开发流程涉及配置DispatcherServlet、定义Controller、创建View、处理数据、绑定模型和异常处理。
使用Java Web框架:Spring MVC的全面指南
|
22天前
|
Java
销售业务管理系统【Web系统】(Java课设)
销售业务管理系统【Web系统】(Java课设)
13 5
|
1月前
|
Java Maven
Maven【2】( Web 工程依赖 Java 工程)(命令行操作)
Maven【2】( Web 工程依赖 Java 工程)(命令行操作)
20 0
|
1月前
|
Java 数据库连接 数据库
JAVA Web项目开发SSM框架搭建(第一天)
JAVA Web项目开发SSM框架搭建(第一天)
|
1月前
|
Java Maven Android开发
JAVA Web项目开发创建Web项目(第一天)
JAVA Web项目开发创建Web项目(第一天)
|
1月前
|
Java 关系型数据库 应用服务中间件
JAVA Web项目开发eclipse工具包配置(第一天)
JAVA Web项目开发eclipse工具包配置(第一天)