1\annotation 写法
package com.gyarmy.testannotation;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@Retention(RetentionPolicy.RUNTIME)
public @interface DbInfo {
String driverClass();
String username();
String password();
Stri...
自定义Java注释类时,我们使用方式如下:
@Retention(RetentionPolicy.RUNTIME) @Target(ElementType.METHOD) class @interface Author{ publicString name(); publicString company(); }
这次我们重点讨论修饰注解的注解,也就是我们说的元注解。
@Retention
注解@Retention可以用来修饰注解,是注解的注解,称为...
[该文章已设置加密,请点击标题输入密码访问]
直接上代码,项目中可以直接使用的
package com.gyarmy.upload;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Arrays;
import java.util.List;
import java.util.UUID;
import javax.servlet.Servlet...
package com.gyarmy.upload;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax....
package com.itheima.filter;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.util.zip.GZIPOutputStream;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
...
package com.gyarmy.demo4;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.zip.GZIPOutputStream;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
impor...
1\使用HttpServletRequestWrapper 包装类
2\重写getParameter \ getParameterValues \ getParameterMap 三个函数
3\ 配置 web.xml
核心过滤器代码
package com.gyarmy.demo4;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.Map;
import ja...
分析清楚逻辑结构
cookie + session + filter 技术运用
防止伪造cookie
需要改进的地方: cookie加密技术
package com.gyarmy.demo4;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletExce...
1\了解过滤器的声明周期
2\过滤器的web.xml文件的配置
<filter>
<filter-name>EncodingFilter</filter-name>
<filter-class>com.gyarmy.demo1.EncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>u...
[该文章已设置加密,请点击标题输入密码访问]
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<he...
factory.java文件实现
package com.itheim.customers.dao.factory;
import java.util.ResourceBundle;
import com.itheim.customers.dao.CustomerDao;
/*
* 这是 用于创建 dao的工厂 类 ,
*
* 工厂类 很多时候 会被 弄成单例的
*
*
*/
public class DaoFactory {
private DaoFactory(){};
//创建一个...
token生成代码:
<%
//生成一个唯一的串
String token = UUID.randomUUID().toString();
// 将这个唯一的串 存到 session 域对象中去
session.setAttribute("token_session", token);
%>
验证token代码
<%@page import="java.util.UUID"%>
<%@ page language="java" contentType="text/...
两个文件
1\ JdbcUtils.java 的源代码
package com.gyarmy.dbutils;
import java.sql.SQLException;
import java.util.List;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanListHandler;
import org.junit.Test;
import com.gyarmy.domain.*;
im...