- 博客(64)
- 收藏
- 关注
原创 会话跟踪技术
文章目录会话跟踪技术CookieCookie原理Cookie使用细节SessionSession原理会话跟踪技术CookieCookie原理Cookie使用细节SessionSession原理
2023-06-01 21:53:08 91
原创 JSP~~
这里的域指的是Servlet域,通过setAttribute和getAttribute进行存和取。JSP本质上就是一个Servlet。test属性里面填写逻辑表达式。
2023-05-31 21:33:04 93
原创 Request&Response
若使用的是post请求,可以使用setCharacterEncoding()来设置字符输入流的编码(post请求底层是使用字符输入流的方式来获取请求)如果是字节数据(如图片),就使用字节输入流。写入中文时要先设置留的编码,如下(设置响应的数据格式和字符集)使用commons-io的工具类可以快速完成流的拷贝。解决方法:不管怎么样数据底层的二进制数据都是一样的。获取请求参数要分为是GET请求还是POST请求。通过头的名称可以请求头对应的值。请求行 请求头 请求体。请求体是通过IO流的方式获取。
2023-05-29 14:52:41 544
原创 Servlet
web服务器会自动创建Servlet对象,并执行Servlet方法。在init方法里面接收ServletConfig对象,赋给成员变量。Servlet是java提供的一门动态web资源开发技术。对象的生命周期指一个对象从被创建到被销毁的整个过程。
2023-05-26 21:31:58 649
原创 Tomcat
文章目录TomcatWeb服务器安装基本使用部署项目IDEA中创建Maven Web项目IDEA使用TomcatTomcatWeb服务器安装https://tomcat.apache.org/基本使用部署项目IDEA中创建Maven Web项目Web项目结构(两种):可以通过maven选择使用骨架或者不使用骨架来创建项目IDEA使用Tomcat
2023-05-25 21:39:11 46
原创 JavaScript
JS是一种脚本语言,不需要编译,只需要被浏览器解释运行confirm方法会根据点击的是取消还是确定,返回true或者false。
2023-05-23 15:59:11 390
原创 MyBatisX
批量删除时,使用的是动态sql语句,使用foreach标签遍历ids数组里面的传入的参数。就是通过注解的方式,将本该写在配置文件中的sql语句直接写在对应的抽象抽象方法上。当传入多个参数时,Mybatis将多个参数封装成一个map集合。可以使用@Param注解,替换Map集合中默认的arg键名。使用1=1的恒等式来解决where和and连接的问题,主键返回:是主键数据制动添加到传入的对象的属性中去。POJO类型:直接使用,属性名 和 参数占位名一致。Map类型:直接使用,键名 和 参数占位名一致。
2023-05-21 22:42:47 417
原创 JDBC~
在mysql5之后的驱动jar包中,不需要 Class.forName(“com.mysql.jdbc.Driver”)来注册驱动。SQL注入:SQL注入是通过操作输入来修改事先定义好的SQL语句,用以达到执行代码对服务器进行攻击的方法。ResultSet:结果集对象,封装了DQL查询语句的结果 (就是将查询到的表给封装起来)在mysql提供的Driver的驱动类中,静态代码块里会加载注册驱动。驱动管理类: 注册驱动,获取数据库连接。作用:获取执行SQL的对象,管理事务。
2023-05-15 16:13:36 683
原创 多表查询~
笛卡尔积:有A,B两个集合 取A,B所有的组合情况。要想查询某一章表的某个字段,可用 表名.字段名表示。查询嵌套信息,称嵌套查询为子查询。隐式内连接INNER可省略。外连接分左外连接和右外连接。通过中间虚拟表来实现。
2023-05-11 22:01:51 106
原创 反射~~~
获得类的构造器对象后可以调用Constructor类的方法进行创建对象。parametTypes为参数的类对象。若权限不够可以暴力反射创建对象。
2023-05-05 15:02:44 43
原创 线程安全~
多个线程同时操作同一个共享资源的时候可以会出现业务安全问题,称为线程安全问题出现原因:1.存在多线程并发 2.同时访问共享资源 3.存在修改共享资源共同账户取钱问题(存在线程安全问题)//共同账户 Account account = new Account();return i;} else {System . out . println("余额不足");
2023-04-27 15:27:12 112
原创 打印流~~
作用:打印流可以实现方便、高效的打印数据到文件中去。打印流一般是指:PrintStream,PrintWriter两个类。可以实现打印什么数据就是什么数据,例如打印整数97写出去就是97,打印boolean的true,写出去就是true。System.SetOu(PrintSream p)把系统打印流改成自己的打印流。System.out的底层就是一个PrintStream。属于打印流的一种应用,可以把输出语句的打印位置改到文件。只能在new低级管道时指定追加操作。
2023-04-25 15:11:07 380
原创 序列化对象
作用: 以内存为基准,把存储到磁盘文件中去的对象数据恢复成内存中的对象,称为对象反序列化。作用:以内存为基准,把内存中的对象存储到磁盘文件中去,称为对象序列化。使用到的流是对象字节输出流:ObjectOutputStream。使用到的流是对象字节输入流: ObjectInputStream。transient修饰符,修饰的成员变量不参与序列化。
2023-04-24 18:17:09 37
原创 IO流~~
兼容ASCII码表,也包含了几万个汉字,并支持繁体汉字以及部分日韩文字。O表示output,是内存程序 的数据从内存到写出硬盘文件的过程,称之输出,负责写。ASCII使用一个字节存储一个字符,一个字节是8位,共可表示128个字符信息。两种方法:1.让byte数组直接等于文件大小;I表示input,是数据从硬盘文件读入到内存的过程,称为输入,负责读。IO流也称为输入、输出流,就是用来读写数据的。在释放资源之前要进行非空校验,防止空指针异常。因为finally是否出现异常都会被执行。读取中文使用字符流更合适。
2023-04-22 15:18:21 45
原创 递归~~!
方法直接调用自己或者间接调用自己的形式称为方法递归间接递归:就是方法调用其他方法,其他方法又回调方法自己**递归如果没有控制好终止,会出现递归死循环,导致栈内存溢出现象 **一个简简单单的n的阶乘int a = 10;return 1;} }
2023-04-21 10:14:35 31
原创 File类
File类在包java.io.File下 、代表操作系统的文件对象(文件、文件夹)注意:若文件本身就不存在,则isFile和isDirectory都为false。**File创建对象,支持绝对路径也支持相对路径 **同时File也可以创建文件夹对象。浅浅的看一下它的层级。
2023-04-20 16:38:11 39
原创 Stream流
中间方法也称为非终结方法,调用完成后返回新的Stream流可以继续使用,支持链式编程。Map集合是本身没有直接获取Stream的方法,只能单独获得键流、值流和键值对流。收集Stream流就是把Stream流操作后的结果数据转回到集合或者数组中去。R代表加工后的返回值类型,T表示Stream创建时的泛型。数组获取Stream流是通过Ararrys中的静态方法。把Stream流想象成一个传送带。或者Stream类中的静态方法。要注意不同类型的流合并的情况。
2023-04-19 15:50:45 40
原创 Map集合
依赖于hashCode方法和equals方法保证键的唯一,如果键要存储自定义对象,需重写equals和hashCode方法。先把Map集合转换成Set集合,Set集合中每个元素都是键值对实体类型。元素按照键是无序,不重复,无索引,值不做要求(与Map体系一致)** Map集合的键:无序,不重复的 值可重复**元素按照键是排序,不重复,无索引的,值不做要求。元素按照键是有序,不重复,无索引,值不做要求。遍历键的Set集合,然后通过键提取对应值。先获取Map集合的全部键的Set集合。
2023-04-19 10:18:52 34
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人