jsp页面中引入标签: <%@ taglib uri="/struts-tags" prefix="s"%> 常用标签知识点总结: <s:fielderrors/>取出错误消息<s:form/>生成一个表单<s:textfield/>生成一个单行文本框,错误消息显示,智能回显.<s:password/>生成一个单行密码框<s:submit/>生成一个提交命令按钮<s:property/&g…
一.OGNL常用符号(接上一篇文章): 1.#号 1)<s:property value="#request.username"/> 作用于struts2的域对象,而不是普通域对象 2)<s:property value="#user.username"/>作用于JavaBean对象 3)<s:property value="#username"/>作用于普通字符串,如果value只是一个字符串的话,不是Jav…
目录 <Java从入门到精通>学习记录 3 基础的基础部分: 3 一. 常量与变量 3 1. 掌握: 3 (1) .常量与变量的声明方式: 3 (2) .变量的命名规则: 3 (3) .变量的作用范围: 3 A. 按作用范围:成员变量:类中定义,作用整个类. 3 二. 数据类型 3 1. 掌握: 4 (1) .整数类型的分布: 4 (2) .浮点数据类型的分布: 4 (3) .字符型类数据: 4 (4) .布尔类型数据: 4 2. 熟悉: 4 (1) .基本数据类型默认值的意义和使用方法: 4…
一.国际化的概念 1.不同国家的人访问同一个网站,显示的语言不同. 2.对JSP页面进行国际化 属性(properties)文件命名规则:基名---语言--国家如, message_zh_CN.properties >>>使用标签获取相对应的值,如: <s:textfield key="login.username" name="username"/> <s:submit key="login.submit"/…
实例1:实现客户端IP地址和访问方式输出到浏览器. IpAction.java package com.amos.web.action; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionSup…
本文内容: 前言:本文讲述的内容包括几类常用标签,以及这些标签的一些常用属性(有一些属性由于已经有CSS样式来代替,所以对于一些不重要的这里选择不讲) 排版标签 段落标签:p div span 标题标签 水平线标签:hr 换行标签:br 输入框标签 单行文本框:input 标记标签:label 表单:form 多行文本框:textarea 下拉选单标签:select 超链接标签:a 图片标签:img 表格标签:table 列表标签 无序列表:ul 有序列表:ol 自定义列表:dl 常用标准属性…
什么是HTML 常用标签 标题标签 段落标签 粗体标签+斜体 超链接标签 图片标签 列表标签 无序标签 有序标签 自定义列表 div标签 特殊符号 表格 表单 HTML 什么是 HTML?   HTML 是用来描述网页的一种语言.   HTML 指的是超文本标记语言 (Hyper Text Markup Language)   HTML 不是一种编程语言,而是一种标记语言 (markup language)   标记语言是一套标记标签 (markup tag)   HTML 使用标记标签来描述网…
摘要 本文是struts2入门,配置教程.如何在IntelJ Idea中进行手动配置.在使用idea新建struts2web项目的时候,在下载jar包的过程中,下载失败,没办法就直接手动进行下载jar包. 步骤 从官网下载jar包,这里下载的是struts-2.3.34.zip,下载之后,解压 在struts-2.3.34\apps下找到 struts2-blank.war 文件,通过修改扩展名,改为struts2-blank.zip,解压,找到lib下的所有jar包,如下图所示: 将其,拷贝到…
一.知识点学习 1.struts2中包含以下6种对象,requestMap,sessionMap,applicationMap,paramtersMap,attr,valueStack; 1)requestMap用来存放包含当前HttpServletRequest的属性(attribute)的Map,简单来说就是request域中的值; 2)sessionMap用来存放包含当前HttpSession的属性(attribute)的Map 3)applicationMap用来存放包含当前应用的Ser…
一.拦截器,拦截器栈 1.拦截器的作用 拦截器本质上和servlet的过滤器是一样的.在struts2中,拦截器能够对Action前后进行拦截,拦截器是一个可插拨的,你可以选择使用拦截器,也可以卸载拦截器. 2.拦截器执行顺序 在struts.xml文件中,<intercepto-ref/>中先引用的先执行,后引用的后执行.如果某个拦截器出错或不允许通过,那么下一个拦截器是不允许执行的. 需要拦截哪个Action,就在哪个Action对应的<action>标签中配置即可. 在部署w…
一.知识点总结 后台验证有两种实现方式: 1 手工验证顺序:validateXxx(针对Action中某个业务方法验证)--> validate(针对Action中所有的业务方法验证) 2 声明式验证 validate()===>"Action的类名-validation.xml"===>必须放置在Action类的同目录下 validateXxx()===>"Action的类名-<action>标签中的name属性值-validation.…
一.文件上传快速入门 1).关于上传表单三要素 >>尽量以POST请求方式上传,因为GET支持文件大小是有限制的. >>必须要加上enctype="multipart/form-data"表示上传的文件,以随着请求体经过特殊编码后,一同传入服务器 >>每个表单项,必须取一个名字(name),因为服务器端便于通过名字(name)收集信息.  2).fileUpload拦截器文件上传拦截器,自动注入三个参数,如下所示: private String up…
一.知识点回顾 防止表单重复提交核心思想: 客户端和服务器端和写一个token,比较两个token的值相同,则非重复提交;不同,则是重复提交. 1.getSession三种方式比较: request.getSession() request.getSession(true);//无论如何都要得到新的Session request.getSession(false);//只能得到旧有的Session 2.>>struts2框架提供了token拦截器,主要用于防止表单重复提交 >>默认…
自定义类型转换器的作用就是将struts无法识别的类型转换成自己所需要的. 比如输入:广东-东莞-虎门,对应的输出时能输出:广东省 东莞市 虎门(镇/区) 这里涉及到的知识点即是将String转换为任意的JavaBean类型. 一.实现代码 程序配置入口:struts.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Softwar…
一.struts2对异常的处理 1.自定义局部异常: <action> <exception-mapping result="sonException" exception="java.lang.ArithmeticException"></exception-mapping> </action> 2.自定义全局异常: <!-- 配置全局异常处理 --> <global-exception-mappi…
一.需求 利用struts2实现中文验证并对错误消息的抽离. 详细需求:用户登录-->不填写用户名-->页面跳转到用户登录页面,提示用户名必填(以英文和中文两种方式提示)-->填写英文用户名-->页面提示用户名必须填写为英文--->填写中文用户名--->页面跳转到登录成功页面. 二.效果图 1.英文提示 2.中文提示 三.代码分析 result.jsp <%@ page language="java" contentType="tex…
一.错误提示信息配置 昨天说到更改默认错误配置信息,我测试很多遍,一直都不对.下面贴出来,待以后有好方法了再补充吧. 首先新建一个properties文件,这里命名为testupload.properties,内容为: struts.messages.error.file.too.large=\u6587\u4EF6\u592A\u5927{0} "{1}" "{2}" {3} struts.messages.error.content.type.not.allow…
一.为什么要进行验证? 验证几乎是注册登录的必须前提,验证的主要作用有两点: 1.安全性 2.对用户提供差异化服务. 二.如何验证? ActionSupport类中有一个validate()方法,这是为开发者使用struts提供的一个接口,初始时是没有任何验证的.所以要使用此方法首先要进行重写该方法. 举注册为例,调用顺序为setUsername()方法-->validate()方法--->register()方法.所以一旦验证不过那么将无法执行后续方法,即后面的功能将被隔离! 三.实例: U…
需求: 1.用户注册(user_register.jsp)-->注册成功(UserRegister.action)-->显示注册信息(register_success.jsp)2.用户登录(user_login.jsp)-->登录成功(UserLogin.action)-->显示用户名(login_success.jsp) 分析: 这里主要涉及struts2中对于多个类似的业务操作方法的封装. 效果: 针对需求1,用户注册: 针对需求2,用户登录: 实现: user_registe…
 一.用户注册示例 register.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/…
一.关于文件下载: 文件下载的核心思想即是将文件从一个地方拷贝到另一个地方. 1.传统方式: 在Action中加入大量servlet api 操作.优点是好理解,缺点是耦合度高. 2.stream方式: 使用struts2中的stream拦截器进行操作 二.实例: 我这里用的是maven,贴出pom.xml: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2…
spring的Java配置 1.创建maven项目 使用idea创建maven项目,这里顺便提一下,idea真的比eclipse好用,早点熟悉吧.然后就是maven是java项目管理最主流的工具,自己先配置一个试试,很好上手. 2.导入依赖 编辑pom文件 1.首先配置一下jdk版本和编码,两种方式,按道理任意一种都可以,出问题的话两种都加上吧,如下 <build>        <finalName>spring-learn</finalName>        &l…
<code class="language-java">import java.util.Scanner; import java.util.Properties; import java.awt.SystemColor; import java.util.Arrays; import java.util.Random; import java.text.DecimalFormat; import java.math.BigInteger; public class Tsa…
目录 03 Java语言基础 基本数据类型 变量与常量 运算符 类型转换 代码规范 标识符命名规范 常用输入输出 04 流程控制 条件语句 循环语句 循环控制 练习 05 字符串 创建字符串 连接字符串 获取字符串信息 字符串操作 格式化字符串 使用正则表达式 字符串生成器 练习 06 数组 数组的创建与使用 数组的基本操作 数组排序算法 07 类和对象 类 类的构造方法 静态变量.常量和方法 类的主方法 对象 08 包装类 java.lang包 Integer Boolean Byte Cha…
1. 3种构成重载的条件: 参数类型不同.参数个数不同.参数顺序不同 只有返回值类型不同并不足以区分两个方法的重载. 2. import关键字除了导入包之外,还可以导入静态成员,这是JDK 5.0以上版本提供的新功能.导入静态成员可以使程序员编程更加方便 package com.lzw; import static java.lang.Math.max; import static java.lang.System.out; public class ImportTest { public st…
1. 在JAVA语言中对静态方法有两点规定: 在静态方法中不可以使用this关键字 在静态方法中不可以直接调用非静态方法 2. 不能将方法体内的局部变量声明为static的 3. 引用只是存放一个对象的内存地址,并非存放一个对象 4. 虽然垃圾回收器已经很完善,但垃圾回收器只能回收那些由new操作符创建的对象.如果某些对象不是通过new操作符在内存中获取一块内存区域,这种对象不能被垃圾回收机制所识别,所以在Java中提供了一个finalize()方法. 5. 由于垃圾回收不受人为控制,不保证一定…
1. Java既是编译型语音,也是解释型语言:先将源代码编译成Java字节码,然后Java虚拟机对Java字节码进行解释运行 2. 使用命令行编译Java源代码时,如果代码中有中文,在编译时需要指定编码方式:javac -encoding utf-8 xx.java 3. Eclipse4.10版本没有支持32位操作系统,4.10以下是支持的 4. 当定义的final变量属于“成员变量”时,必须在定义时就设定它的初值,否则将会产生编译错误. 5. 在JDK1.7中,开始支持字符串类型的switc…
Redis简介 Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库. Redis 与其他 key - value 缓存产品有以下三个特点: Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用. Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储. Redis支持数据的备份,即master-slave模式的数据备份. 下载安装Redis5.0.X 以Ub…
1. 程序运行期间,大部分数据都在内存中进行操作,当程序结束时,这些数据将消失. 如果需要将数据永久保存,可使用文件输入流 / 文件输出流与指定的文件建立连接,将需要的数据永久保存到文件中. FileInputStream类与FileOutputStream类 FileReader类与FileWriter类 2. 可以在类中定义枚举类型,相当于内部类: public class EnumTest { enum Constants2 { Constants_A, Constants_B } pub…
在jsp页面开发过程中,经常需要使用JSTL(Java Server Pages Standard Tag Library)标签开开发页面,是看起来更加的规整舒服. JSTL主要提供了5大类标签库: . 核心标签库: 为日常任务提供通用支持,如显示和设置变量,重复使用一组项目,测试条件以及其他操作(如导入和重定向web页面等). . 国际化(I18N)标签库: 支持多种语言的引用程序. . SQL标签库: 对访问和修改数据库提供标准化支持. . XML标签库: 对XML文件处理和操作提供支持,包…