正则表达式
一种字符串匹配的模式,可用来检查一个字符串是否含有某种字串、将匹配的字串替换或从某个串中取出符合某个条件的字串等
正则验证表达式三步走(验证密码是否合法)
matches方法可以直接进行匹配验证
字符串的截取
将字母全部截取
字符串替换
流
对文件进行操作(文件和文件夹统称File)
字节流
添加流的关闭(异常时关闭流)
out流外部文件不存在时,先创建
对象序列化
运行一次后信息存入io.txt文件,之后输出信息从文件读出(反序列化)
反射
这玩意儿有点难,我没听懂
找到了一个帖子,可以康康 对反射的理解
- 根据类名创建实例(类名可以从配置文件读取,不用new,达到解耦)
- 用Method.invoke执行方法
getName
getReturnTypes
print和println的不同
一、功能不同
1、print:将信息显示在命令窗口中,输出光标定位在最后一个字符之后。
2、printf:将信息进行格式化显示在命令窗口中,输出光标定位在最后一个字符之后。
3、println:将信息显示在命令窗口中,输出光标换行定位在下一行开头。
二、语法不同
1、print:Print("\n “) = Println(” “)。
2、printf:System.out.println(” b");
3、println:System.out.print(" ASD\n"); = System.out.println(" ASD")。
session
会话session和请求的生命周期
//请求对象
String name = request.getParameter("name");//根据提交数据的名字,获得响应的值
request.setCharacterEncoding("utf8");//设定请求数据的字符集
request.setAttribute("val", "abc");//把键值(任意类型)对,存放到请求作用域中,
String val = (String)request.getAttribute("val");//从作用中获得键对应的值
HttpSession session = request.getSession();//得到会话对象
ServletContext ctx = request.getServletContext();//得到上下文对象
String headerValue = request.getHeader("headerName");//得到请求头的值
//响应对象
response.setCharacterEncoding("utf8");//设定响应内容的字符集
response.addHeader("headerName", "headerValue");//添加响应头
PrintWriter out = response.getWriter();//得到用来输出响应内容的out对象
out.print("<h1>hello</h1>");
//做登录(验证码)两次请求属于同一个会话
//会话session对象
session.setAttribute("key","值"); //进来挂名牌,每一个使用者都拥有一个独立的存储空间
session.getAttribute("key"); //出去摘名牌
session.getId(); //得到令牌的值,默认存在cookie的jsessionid键
//结束session 1-超时(浏览器窗口关闭) 2-手动关闭(使当前标记令牌失效)
session.invalidate();
//上下文对象(面对当前服务器)
ServletContext ctx = request.getServletContext(); //获取上下文对象
ctx.setAttribute("key","值");
ctx.getAttribute("key");
ctx.getRealPath("/path");//得到项目在容器(tomcat)中的根路径+参数所在路径(得到的是实际物理路径)
注解
自定义注解
JVM虚拟机
要命,我实在不想听注解的课了