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,如需转载请自行联系原作者

相关文章
|
10天前
|
SQL Java
20:基于EL与JSTL的产品管理页-Java Web
20:基于EL与JSTL的产品管理页-Java Web
21 5
|
10天前
|
XML 存储 Java
11:Servlet中初始化参数的获取与应用-Java Web
11:Servlet中初始化参数的获取与应用-Java Web
25 3
|
3天前
|
SQL 缓存 Oracle
JavaWeb之JSP(下)
这篇文档是关于Java Web中JSP(Java Server Pages)技术的主要内容包括:JSP的常用命令使用,EL表达式的概念,和使用,JSTL表达式的概念和使用方式的总结.
|
3天前
|
开发框架 前端开发 Java
JavaWeb之JSP(上)
这篇文档是关于Java Web中JSP(Java Server Pages)技术的介绍。作者首先说明了内容来源于个人在CSDN的原创文章,并遵循CC 4.0 BY-SA版权协议。文档主要内容包括:JSP的基本概念,它是一种动态网页技术,用于将页面逻辑与设计分离,便于开发快速、跨平台的Web应用。接着,讨论了JSP出现的原因,即为了改进servlet展示信息的不便。文档还详细介绍了如何在JSP中嵌入Java代码,包括声明、表达式和程序代码标签的使用,以及page指令的示例。
|
4天前
|
前端开发 JavaScript Java
Java与Web开发的结合:JSP与Servlet
Java与Web开发的结合:JSP与Servlet
8 0
|
6天前
|
前端开发 JavaScript Java
Jsp在Javaweb中扮演什么角色?
Jsp在Javaweb中扮演什么角色?
13 1
|
10天前
|
设计模式 前端开发 Java
19:Web开发模式与MVC设计模式-Java Web
19:Web开发模式与MVC设计模式-Java Web
21 4
|
10天前
|
设计模式 存储 前端开发
18:JavaBean简介及其在表单处理与DAO设计模式中的应用-Java Web
18:JavaBean简介及其在表单处理与DAO设计模式中的应用-Java Web
25 4
|
10天前
|
SQL Java 数据库连接
17:数据库连接池与Servlet整合-Java Web
17:数据库连接池与Servlet整合-Java Web
22 3
|
10天前
|
存储 前端开发 搜索推荐
13:Session机制实现用户登录与注销功能-Java Web
13:Session机制实现用户登录与注销功能-Java Web
25 3