zoukankan      html  css  js  c++  java
  • 吴裕雄--天生自然轻量级JAVA EE企业应用开发Struts2Sping4Hibernate整合开发学习笔记:JSP2特性

    <%--
    网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
    author  yeeku.H.lee kongyeeku@163.com
    version  1.0
    Copyright (C), 2001-2016, yeeku.H.Lee
    This program is protected by copyright laws.
    Program Name:
    Date: 
    --%>
    
    <%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title> 表达式语言 - 算术运算符 </title>
        <meta name="website" content="http://www.crazyit.org" />
    </head>
    <body>
        <h2>表达式语言 - 算术运算符</h2><hr/>
        <table border="1" bgcolor="#aaaadd">
            <tr>
                <td><b>表达式语言</b></td>
                <td><b>计算结果</b></td>
            </tr>
            <!-- 直接输出常量 -->
            <tr>
                <td>${1}</td>
                <td>${1}</td>
            </tr>
            <!-- 计算加法 -->
            <tr>
                <td>${1.2 + 2.3}</td>
                <td>${1.2 + 2.3}</td>
            </tr>
            <!-- 计算加法 -->
            <tr>
                <td>${1.2E4 + 1.4}</td>
                <td>${1.2E4 + 1.4}</td>
            </tr>
            <!-- 计算减法 -->
            <tr>
                <td>${-4 - 2}</td>
                <td>${-4 - 2}</td>
            </tr>
            <!-- 计算乘法 -->
            <tr>
                <td>${21 * 2}</td>
                <td>${21 * 2}</td>
            </tr>
            <!-- 计算除法 -->
            <tr>
                <td>${3/4}</td>
                <td>${3/4}</td>
            </tr>
            <!-- 计算除法 -->
            <tr>
                <td>${3 div 4}</td>
                <td>${3 div 4}</td>
            </tr>
            <!-- 计算除法 -->
            <tr>
                <td>${3/0}</td>
                <td>${3/0}</td>
            </tr>
            <!-- 计算求余 -->
            <tr>
                <td>${10%4}</td>
                <td>${10%4}</td>
            </tr>
            <!-- 计算求余 -->
            <tr>
                <td>${10 mod 4}</td>
                <td>${10 mod 4}</td>
            </tr>
            <!-- 计算三目运算符 -->
            <tr>
                <td>${(1==2) ? 3 : 4}</td>
                <td>${(1==2) ? 3 : 4}</td>
            </tr>
        </table>
    </body>
    </html>
    <%--
    网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
    author  yeeku.H.lee kongyeeku@163.com
    version  1.0
    Copyright (C), 2001-2016, yeeku.H.Lee
    This program is protected by copyright laws.
    Program Name:
    Date: 
    --%>
    
    <%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title> 表达式语言 - 内置对象 </title>
        <meta name="website" content="http://www.crazyit.org" />
    </head>
    <body>
        <h2>表达式语言 - 内置对象</h2>
        请输入你的名字:
        <!-- 通过表单提交请求参数 -->
        <form action="implicit-objects.jsp" method="post">
            <!-- 通过${param['name']} 获取请求参数 -->
            你的名字 = <input type="text" name="name" value="${param['name']}"/>
            <input type="submit" value='提交'/>
        </form><br/>
        <% session.setAttribute("user" , "abc");
        // 下面三行代码添加Cookie
        Cookie c = new Cookie("name" , "yeeku");
        c.setMaxAge(24 * 3600);
        response.addCookie(c);
        %>
        <table border="1" width="660" bgcolor="#aaaadd">
            <tr>
                <td width="170"><b>功能</b></td>
                <td width="200"><b>表达式语言</b></td>
                <td width="300"><b>计算结果</b></td>
            <tr>
                <!-- 使用两种方式获取请求参数值 -->
                <td>取得请求参数值</td>
                <td>${param.name}</td>
                <td>${param.name}&nbsp;</td>
            </tr>
            <tr>
                <td>取得请求参数值</td>
                <td>${param["name"]}</td>
                <td>${param["name"]}&nbsp;</td>
            </tr>
            <tr>
                <!-- 使用两种方式获取指定请求头信息 -->
                <td>取得请求头的值</td>
                <td>${header.host}</td>
                <td>${header.host}</td>
            </tr>
            <tr>
                <td>取得请求头的值</td>
                <td>${header["accept"]}</td>
                <td>${header["accept"]}</td>
            </tr>
            <!-- 获取Web应用的初始化参数值 -->
            <tr>
                <td>取得初始化参数值</td>
                <td>${initParam["author"]}</td>
                <td>${initParam["author"]}</td>
            </tr>
            <!-- 获取session返回的属性值 -->
            <tr>
                <td>取得session的属性值</td>
                <td>${sessionScope["user"]}</td>
                <td>${sessionScope["user"]}</td>
            </tr>
            <!-- 获取指定Cookie的值 -->
            <tr>
                <td>取得指定Cookie的值</td>
                <td>${cookie["name"].value}</td>
                <td>${cookie["name"].value}</td>
            </tr>
        </table>
    </body>
    </html>
    <%--
    网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
    author  yeeku.H.lee kongyeeku@163.com
    version  1.0
    Copyright (C), 2001-2016, yeeku.H.Lee
    This program is protected by copyright laws.
    Program Name:
    Date: 
    --%>
    
    <%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title> 表达式语言 - 逻辑运算符 </title>
        <meta name="website" content="http://www.crazyit.org" />
    </head>
    <body>
        <h2>表达式语言 - 逻辑运算符</h2><hr/>
        数字之间的比较:
        <table border="1" bgcolor="#aaaadd">
            <tr>
                <td><b>表达式语言</b></td>
                <td><b>计算结果</b></td>
            </tr>
            <!-- 直接比较两个数字 -->
            <tr>
                <td>${1 &lt; 2}</td>
                <td>${1 < 2}</td>
            </tr>
            <!-- 使用lt比较运算符 -->
            <tr>
                <td>${1 lt 2}</td>
                <td>${1 lt 2}</td>
            </tr>
            <!-- 使用>比较运算符 -->
            <tr>
                <td>${1 &gt; (4/2)}</td>
                <td>${1 > (4/2)}</td>
            </tr>
            <!-- 使用gt比较运算符 -->
            <tr>
                <td>${1 gt (4/2)}</td>
                <td>${1 gt (4/2)}</td>
            </tr>
            <!-- 使用>=比较运算符 -->
            <tr>
                <td>${4.0 &gt= 3}</td>
                <td>${4.0 >= 3}</td>
            </tr>
            <!-- 使用ge比较运算符 -->
            <tr>
                <td>${4.0 ge 3}</td>
                <td>${4.0 ge 3}</td>
            </tr>
            <!-- 使用<=比较运算符 -->
            <tr>
                <td>${4 &lt;= 3}</td>
                <td>${4 <= 3}</td>
            </tr>
            <!-- 使用le比较运算符 -->
            <tr>
                <td>${4 le 3}</td>
                <td>${4 le 3}</td>
            </tr>
            <!-- 使用==比较运算符 -->
            <tr>
                <td>${100.0 == 100}</td>
                <td>${100.0 == 100}</td>
            </tr>
            <!-- 使用eq比较运算符 -->
            <tr>
                <td>${100.0 eq 100}</td>
                <td>${100.0 eq 100}</td>
            </tr>
            <!-- 使用!=比较运算符 -->
            <tr>
                <td>${(10*10) != 100}</td>
                <td>${(10*10) != 100}</td>
            </tr>
            <!--  先执行运算,再进行比较运算,使用ne比较运算符-->
            <tr>
                <td>${(10*10) ne 100}</td>
                <td>${(10*10) ne 100}</td>
            </tr>
        </table>
        字符之间的比较:
        <table border="1" bgcolor="#aaaadd">
            <tr>
                <td><b>表达式语言</b></td>
                <td><b>计算结果</b></td>
            </tr>
            <tr>
                <td>${'a' &lt; 'b'}</td>
                <td>${'a' < 'b'}</td>
            </tr>
            <tr>
                <td>${'hip' &gt; 'hit'}</td>
                <td>${'hip' > 'hit'}</td>
            </tr>
            <tr>
                <td>${'4' &gt; 3}</td>
                <td>${'4' > 3}</td>
            </tr>
        </table>
    </body>
    </html>
    <%--
    网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
    author  yeeku.H.lee kongyeeku@163.com
    version  1.0
    Copyright (C), 2001-2016, yeeku.H.Lee
    This program is protected by copyright laws.
    Program Name:
    Date: 
    --%>
    
    <%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title> 页面配置2 </title>
        <meta name="website" content="http://www.crazyit.org" />
    </head>
    <body>
        <h2>页面配置2</h2>
        下面是表达式语言输出:<br/>
        ${1 + 2}<br/>
        下面是小脚本输出:<br/>
        <%out.println("hello Java");%>
    </body>
    </html>
    <%--
    网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
    author  yeeku.H.lee kongyeeku@163.com
    version  1.0
    Copyright (C), 2001-2016, yeeku.H.Lee
    This program is protected by copyright laws.
    Program Name:
    Date: 
    --%>
    
    <%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>
    <%@ taglib prefix="crazyit" uri="http://www.crazyit.org/tags"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title> new document </title>
        <meta name="website" content="http://www.crazyit.org" />
    </head>
    <body>
        <h2>表达式语言 - 自定义函数</h2><hr/>
        请输入一个字符串:
        <form action="useFunctions.jsp" method="post">
            字符串 = <input type="text" name="name" value="${param['name']}">
            <input type="submit"  value="提交">
        </form>
        <table border="1" bgcolor="aaaadd">
            <tr>
            <td><b>表达式语言</b></td>
            <td><b>计算结果</b></td>
            <tr>
            <tr>
                <td>${param["name"]}</td>
                <td>${param["name"]}&nbsp;</td>
            </tr>
            <!--  使用reverse函数-->
            <tr>
                <td>${crazyit:reverse(param["name"])}</td>
                <td>${crazyit:reverse(param["name"])}&nbsp;</td>
            </tr>
            <tr>
                <td>${crazyit:reverse(crazyit:reverse(param["name"]))}</td>
                <td>${crazyit:reverse(crazyit:reverse(param["name"]))}&nbsp;</td>
            </tr>
            <!-- 使用countChar函数 -->
            <tr>
                <td>${crazyit:countChar(param["name"])}</td>
                <td>${crazyit:countChar(param["name"])}&nbsp;</td>
            </tr>
        </table>
    </body>
    </html>
    <%--
    网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
    author  yeeku.H.lee kongyeeku@163.com
    version  1.0
    Copyright (C), 2001-2016, yeeku.H.Lee
    This program is protected by copyright laws.
    Program Name:
    Date: 
    --%>
    
    <%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>
    <%@ page import="java.util.*" %>
    <%@ taglib prefix="tags" tagdir="/WEB-INF/tags" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>迭代器tag file</title>
        <meta name="website" content="http://www.crazyit.org" />
    </head>
    <body>
        <h2>迭代器tag file</h2>
        <%
        // 创建集合对象,用于测试Tag File所定义的标签
        List<String> a = new ArrayList<String>();
        a.add("疯狂Java讲义");
        a.add("轻量级Java EE企业应用实战");
        a.add("疯狂Ajax讲义");
        // 将集合对象放入页面范围
        request.setAttribute("a" , a);
        %>
        <h3>使用自定义标签</h3>
        <tags:iterator bgColor="#99dd99" cellColor="#9999cc"
            title="迭代器标签" bean="a" />
    </body>
    </html>
    <div style="background-color:#dddddd;font-size:10pt">
    <font color="blue">Copyright &copyright; 2001-2016.
    <a href="http://www.crazyit.org">疯狂Java联盟</a></font>
    </div>
    <div style="background-color:#dddddd;font-size:12pt">
    <font color="red">隐式导入的页面头</font>
    </div>
    <%--
    网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
    author  yeeku.H.lee kongyeeku@163.com
    version  1.0
    Copyright (C), 2001-2016, yeeku.H.Lee
    This program is protected by copyright laws.
    Program Name:
    Date: 
    --%>
    
    <%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title> 页面配置1 </title>
        <meta name="website" content="http://www.crazyit.org" />
    </head>
    <body>
    <h2>页面配置1</h2>
    下面是表达式语言输出:<br/>
    ${1 + 2}
    </body>
    </html>
    <?xml version="1.0" encoding="GBK"?>
    <!-- 定义生成文件的project根元素,默认的target为空 -->
    <project name="web" basedir="." default="">
        <!-- 定义三个简单属性 -->
        <property name="src" value="src"/>
        <property name="classes" value="classes"/>
        <!-- 定义一组文件和目录集 -->
        <path id="classpath">
            <fileset dir="lib">
                <include name="**/*.jar"/>
            </fileset>
            <pathelement path="${classes}"/>
        </path>
        <!-- 定义compile target,用于编译Java源文件 -->
        <target name="compile" description="编译Java源文件">
            <!-- 先删除classes属性所代表的文件夹 -->
            <delete dir="${classes}"/>
            <!-- 创建classes属性所代表的文件夹 -->
            <mkdir dir="${classes}"/>
            <copy todir="${classes}">
                <fileset dir="${src}">
                    <exclude name="**/*.java"/>
                </fileset>
            </copy>
            <!-- 编译Java文件,编译后的class文件放到classes属性所代表的文件夹内 -->
            <javac destdir="${classes}" debug="true" includeantruntime="yes"
                deprecation="false" optimize="false" failonerror="true">
                <!-- 指定需要编译的Java文件所在的位置 -->
                <src path="${src}"/>
                <!-- 指定编译Java文件所需要第三方类库所在的位置 -->
                <classpath refid="classpath"/>
            </javac>
        </target>
    </project>
    <?xml version="1.0" encoding="GBK"?>
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
        http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
        version="3.1">
        <!-- 关于JSP的配置信息 -->
        <jsp-config>
            <jsp-property-group>
                <!-- 对哪些文件应用配置 -->
                <url-pattern>/noscript/*</url-pattern>
                <!-- 忽略表达式语言 -->
                <el-ignored>true</el-ignored>
                <!-- 页面编码的字符集 -->
                <page-encoding>GBK</page-encoding>
                <!-- 不允许使用Java脚本 -->
                <scripting-invalid>true</scripting-invalid>
                <!-- 隐式导入页面头  -->
                <include-prelude>/inc/top.jspf</include-prelude>
                <!-- 隐式导入页面尾 -->
                <include-coda>/inc/bottom.jspf</include-coda>
            </jsp-property-group>
            <jsp-property-group>
                <!-- 对哪些文件应用配置 -->
                <url-pattern>*.jsp</url-pattern>
                <el-ignored>false</el-ignored>
                <!-- 页面编码字符集 -->
                <page-encoding>GBK</page-encoding>
                <!-- 允许使用Java脚本 -->
                <scripting-invalid>false</scripting-invalid>
            </jsp-property-group>
            <jsp-property-group>
                <!-- 对哪些文件应用配置 -->
                <url-pattern>/inc/*</url-pattern>
                <el-ignored>false</el-ignored>
                <!-- 页面编码字符集 -->
                <page-encoding>GBK</page-encoding>
                <!-- 不允许使用Java脚本 -->
                <scripting-invalid>true</scripting-invalid>
            </jsp-property-group>
        </jsp-config>
    
        <context-param>
            <param-name>author</param-name>
            <param-value>yeeku</param-value>
        </context-param>
    
    </web-app>
    <?xml version="1.0" encoding="GBK"?>
    <taglib xmlns="http://java.sun.com/xml/ns/j2ee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
        web-jsptaglibrary_2_0.xsd" version="2.0">
        <tlib-version>1.0</tlib-version>
        <short-name>crazyit</short-name>
        <!-- 定义该标签库的URI -->
        <uri>http://www.crazyit.org/tags</uri>
        <!-- 定义第一个函数 -->
        <function>
            <!-- 定义函数名:reverse -->
            <name>reverse</name>
            <!-- 定义函数的处理类 -->
            <function-class>lee.Functions</function-class>
            <!-- 定义函数的实现方法-->
            <function-signature>
                java.lang.String reverse(java.lang.String)</function-signature>
        </function>
        <!-- 定义第二个函数: countChar -->
        <function>
            <!-- 定义函数名:countChar -->
            <name>countChar</name>
            <!-- 定义函数的处理类 -->
            <function-class>lee.Functions</function-class>
            <!-- 定义函数的实现方法-->
            <function-signature>int countChar(java.lang.String)
                </function-signature>
        </function>
    </taglib>
    package lee;
    /**
     * Description:
     * <br/>网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
     * <br/>Copyright (C), 2001-2016, Yeeku.H.Lee
     * <br/>This program is protected by copyright laws.
     * <br/>Program Name:
     * <br/>Date:
     * @author  Yeeku.H.Lee kongyeeku@163.com
     * @version  1.0
     */
    public class Functions
    {
        // 对字符串进行反转
        public static String reverse( String text )
        {
            return new StringBuffer( text ).reverse().toString();
        }
        // 统计字符串的个数
        public static int countChar( String text )
        {
            return text.length();
        }
    }
    <%@ tag pageEncoding="GBK" import="java.util.List"%>
    <!-- 定义了四个标签属性 -->
    <%@ attribute name="bgColor" %>
    <%@ attribute name="cellColor" %>
    <%@ attribute name="title" %>
    <%@ attribute name="bean" %>
    <table border="1" bgcolor="${bgColor}">
    <tr>
        <td><b>${title}</b></td>
    </tr>
    <%List<String> list = (List<String>)
        request.getAttribute("a");
    // 遍历输出list集合的元素
    for (Object ele : list){%>
        <tr>
            <td bgcolor="${cellColor}">
            <%=ele%>
            </td>
        </tr>
    <%}%>
    </table>
  • 相关阅读:
    【微信开发】【Asp.net MVC】-- 微信分享功能
    利用JS-SDK微信分享接口调用(后端.NET)
    C# ThreadPool类(线程池)
    C#多线程--线程池(ThreadPool)
    MongoDB允许其它IP地址访问
    解决ASP.Net第一次访问慢的处理(IIS8)
    GitLab版本管理
    基于句子嵌入的无监督文本摘要(附代码实现)zt
    简约机器学习复习笔记/速查手册(缺点是2018年1月的旧了)
    CRF学习的文章
  • 原文地址:https://www.cnblogs.com/tszr/p/12364046.html
Copyright © 2011-2022 走看看