![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 84
一一三一
on the way
展开
-
内容网络
内容网络:将源站内容发布到最接近用户的边缘的节点,使得用户可就近取得所需内容,提高用户访问的响应速度和成功率。解决因为分布,带宽,服务器能力带来的访问延迟高问题,提供一系列加速解决方案。CDN的关键技术主要有内容路由技术、内容分发技术、内容存储技术、内容管理技术等。内容路由技术CDN负载均衡系统实现CDN的内容路由功能。它的作用是将用户的请求导向整个CDN网络中的最佳节点。...原创 2018-12-05 10:20:18 · 357 阅读 · 0 评论 -
Java编码问题
Tomcat8之前编码默认为ISO,8以及8之后,改为了utf-8.可以在Tomcat的cofig/server.xml中修改get响应编码。 URL编码解码问题:(Tomcat会自动解码)请求编码:修改get请求,Tomcat服务器乱码问题:请求编码:修改set请求服务器Tomcat中文乱码问题 ...原创 2018-12-05 10:19:54 · 94 阅读 · 0 评论 -
tomcat
servlet生命周期方法:destroy(), init(),service ()给servlet配置原创 2018-12-05 10:16:49 · 107 阅读 · 0 评论 -
cookie和session
cookie的使用cookie的属性创建cookie获取cookie session(服务器作用域)session原理和设置session的最大不活动时间:URL重写,当浏览器禁用cookie的时候,使用这个方法,可以在每一个页面加上response.encodeURL("/day/day11_3/Aservlet")这句话。 ...原创 2018-12-05 10:16:45 · 104 阅读 · 0 评论 -
servlet
servlet三大作用域作用域规定的是变量的有效期限。一. request作用域: 1.作用范围: 就是指从http请求发起,到服务器处理结束,返回响应的整个过程。在这个过程中可能使用forward的方式跳转了多个jsp页面,在这些页面里你都可以使用这个变量。 2.request对象的产生: request在每次请求到达服务器端时都会产生一个对象;...原创 2018-12-05 10:16:40 · 101 阅读 · 0 评论 -
登录验证码的生成、使用!
调用这个方法生成图片。使用上面这个类就可以制作图片,以下是调用方法:jsp代码! 换一张:jsp页面上的代码,写一个方法换一张: ...原创 2018-12-05 10:21:32 · 201 阅读 · 0 评论 -
el表达式
el表达式,EL11大内置对象:我们知道jsp有九个内置对象,而EL表达式有11个对象,这些内置对象无需创建可直接使用。今天我们就来学习EL表达式的11个内置对象。11个内置对象如下所示:pageScope requestScope sessionScope applicationScope param; paramValues; header; headerValues;...原创 2018-12-10 09:36:48 · 498 阅读 · 0 评论 -
Struts2_4
用户登录:1.登录-->登录的请求--->用户名、密码2.后台处理请求-->用户填写信息校验 1.true:首页 2.false:失败界面 2_1:在strust获取用户输入 1.通过action的属性获取 2.使用领域对象(封装成javabean对象) 3.使用Struts2中提供的拦截器将数据注入进来,act...原创 2018-11-27 14:10:06 · 138 阅读 · 0 评论 -
mybatis
1.mybatise—>orm框架–>持久层—>数据库打交道—>半自动的orm框架:程序员自己编写sql语句 学习成本较低2.掌握的知识点1.环境搭建2.持久化—>sqlSession对象3.mapper代理开发4.动态sql:程序在运行时可以根据条件来改变执行的sql语句的—>$DEBUG [main] - ==>原创 2018-11-27 14:09:55 · 126 阅读 · 0 评论 -
spring
Spring的两种事务定义方式一、声明式这种方法不需要对原有的业务做任何修改,通过在XML文件中定义需要拦截方法的匹配即可完成配置,要求是,业务处理中的方法的命名要有规律,比如setXxx,xxxUpdate等等。详细配置如下:[html] view plain copy在CODE上查看代码片派生到我的代码片<bean id="transactionManager" class="...原创 2018-11-27 14:09:40 · 154 阅读 · 0 评论 -
log4j2
文章目录log4j2maven依赖log4j2.xml配置文件详解Java代码使用log4j2maven依赖<dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version&g...原创 2018-11-17 13:20:10 · 112 阅读 · 0 评论 -
nio
通道channel和缓冲区Buffer的区别Java的nio的核心在于:通道和缓冲区。通道表示打开到io设备(文件、套接字)的链接。channel负责传输,buffer负责存储。 套接字包含了一个IP地址和一个端口号。缓冲区:在Java noi中负责数据的存取。缓冲区底层是数组。用于存储不同数据类型的数据。缓冲区一、缓冲区(Buffer):在 Java NIO 中负责数据的存...原创 2018-11-23 22:08:10 · 124 阅读 · 0 评论 -
多线程
线程的生命周期?线程的创建继承thread类 实现runnable 匿名内部类 带返回值的线程 定时器timer 线程池的实现 lambda表达式的实现 spring实现锁任何对象都可以作为锁,那么锁信息又存在对象的的什么地方呢?存在对象头中对象头信息mark word 线程的id epoch 对象的分代年龄信息 是否是偏向锁 锁标志位...原创 2018-11-23 22:08:27 · 143 阅读 · 0 评论 -
jvm基础
如果你这辈子只甘心做一个平庸的Java码农,那么你完全没有必要去学习JVM相关的知识,学习JVM对于一个Java程序员的好处大概可以概括为下几点:1)你能够明白为什么Java最早期被称为解释型语言,而后来为什么又被大家叫做解释与编译并存的语言(了解JVM中解释器以及即时编译器就可以回答这个问题); 2)你能够理解动态编译与静态编译的区别,以及动态编译相对于静态编译到底有什么好处(J...原创 2018-11-27 14:06:07 · 176 阅读 · 0 评论 -
类加载
类加载机制概述虚拟机把类的数据从Class文件加载到内存,并对数据进行校验,解析和初始化,最终形成可以被虚拟机直接使用的Java类型。Java虚拟机的类加载是一种懒加载机制。类的生命周期加载 ===》链接 ===》初始化 ===》使用 ===》卸载其中链接又分为3个阶段: 验证 准备 解析关于类什么时候初始化遇到new、getstatic、putstatic或者invo...原创 2018-11-27 14:06:25 · 97 阅读 · 0 评论 -
jvm工具介绍和性能调优
jvm工具https://docs.oracle.com/javase/8/docs/technotes/tools/unix/Jps Jstat Jinfo Jmap Jhat Jstack JConsoleJps (Java process status Java)进程状态 使用频率最高的 本地虚拟机唯一id lvmid local virtual machine ...原创 2018-11-27 14:08:41 · 292 阅读 · 0 评论 -
jvm中的对象和GC
对象的创建:给对象分配内存的方式指针碰撞(GC策略如具有压缩整理的功能,能够将堆内存划分为已使用和空闲的内存的时候可以使用指针碰撞,否则的话使用空闲列表)空闲列表()给对象分配内存线程安全性问题线程同步加锁(性能很低)本地线程分配缓冲(每一个线程分配一个缓冲内存,这样的话,就不会存在同步访问同一个资源的问题)初始化对象对象的结构: header(对象头) ...原创 2018-11-27 14:09:10 · 172 阅读 · 0 评论 -
class文件结构与jvm字节码指令
https://blog.csdn.net/luckydog1991/article/details/51654964这篇文章详细的介绍了class文件和字节码指令Class文件结构https://blog.csdn.net/tyrone1979/article/details/964560class文件是一组以8位字节为基础单位的二进制流;当遇到8位字节以上的空间的数据项时,则会...原创 2018-11-27 14:09:20 · 406 阅读 · 0 评论 -
ssh框架
课程安排:spring、struts2、hibernate、spring mvc、mybaits—&gt;开源的项目安全性框架:shiro、spring security----&gt;自定义的标签(jsp)servlet----&gt;spring mvcfiler------&gt;struts2listener—&gt;监听器1.mybatis:学习成本较低,sql语句,半自...原创 2018-11-27 14:09:31 · 177 阅读 · 0 评论 -
eclipse常用快捷键,打jar包,帮助文档
内容辅助键Alt+/起提示作用main+alt+/,sout+alt+/,给出其他提示常用快捷键格式化ctrl+shift+f导入包ctrl+shift+o注释:单行:ctrl+/;多行注释:ctrl+shift+/;多行取消注释:ctrl+shift+\;代码上下移动选中代码alt+上/下箭头查看源码选中类名(F3或者Ctrl...原创 2020-02-09 14:41:30 · 1049 阅读 · 0 评论 -
Java(PO,VO,DAO,BO,POJO)解释
一、PO:persistant object 持久对象,可以看成是与数据库中的表相映射的java对象。最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合。PO中应该不包含任何对数据库的操作。二、VO:value object值对象。通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据而已。但应是抽象出的业务对象,可以和表对应,也可以不,这根据业务的需要.个人觉得同DT...原创 2018-11-22 09:45:24 · 295 阅读 · 0 评论 -
常见网络安全问题及处理(xss和csrf)
强调内容## 1、XSS(Cross Site Script)把token存储在cookie中,同时设置httpOnly。2、CSRF(cross-site request forgery)2.1、判断reffer。系统改动最小,通过filter就可以完成。2.2、在参数中传token。2.3、通过header传递token。(推荐)关于xss和csrf带来原创 2018-02-05 23:55:42 · 2495 阅读 · 0 评论 -
JWT的Java使用 (JJWT)
相信网络上面讲解JWT是什么,由什么组成的文章已经很多了,本文主要讲解JWT在Java中的使用,为了初次看到JWT的同学不会一脸懵逼,还是会说一下什么是JWT. 本文主要从以下几个方面说什么是JWT和JWT的组成为什么要使用JWT在Java中如何使用JWT1.什么是JWT Json web token (JWT), 是为了在网络应用原创 2018-02-05 22:40:07 · 92218 阅读 · 33 评论 -
java.util.concurrent.TimeUnit
TimeUnit提供了可读性更好的线程暂停操作,通常用来替换Thread.sleep(),在很长一段时间里Thread的sleep()方法作为暂停线程的标准方式,几乎所有Java程序员都熟悉它,事实上sleep方法本身也很常用而且出现在很多面试中。如果你已经使用过Thread.sleep(),当然我确信你这样做过,那么你一定熟知它是一个静态方法,暂停线程时它不会释放锁,该方法会原创 2018-01-20 23:06:54 · 3004 阅读 · 0 评论 -
Date、Calendar、GregorianCalendar、DateFormat、SimpleDateFormat
1、 Date类Date类对象的创建:n 创建一个当前时间//默认是创建一个代表系统当前日期的Date对象 Date d = new Date();n 创建一个我们指定的时间的Date对象:下面是使用带参数的构造方法,可以构造指定日期的Date类对象,Date类中年份的参数应该是实际需要代表的年份减去1900,实际需要代原创 2018-01-20 22:42:49 · 202 阅读 · 0 评论 -
java.sql.Date、java.sql.Time、java.sql.Timestamp
java.lang.Object ....|__java.util.Date ..........|__java.sql.Date/java.sql.Timestamp /java.sql.Time....|__java.security.Timestampjava.sql.Date: 该类屏蔽了时间值,只返回年月日,如:yyyy-MM-dd,该类的主要作用是为了与数据库字原创 2018-01-20 22:35:31 · 359 阅读 · 0 评论 -
Java中的线程池
ThreadPoolExecutor核心构造方法(最终的构造方法都会调用这个方法): public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAl原创 2018-01-20 22:18:28 · 166 阅读 · 0 评论 -
数组,继承,重载,多态,抽象,接口,GUI,内部类
设计层面的六大原则:单一职责原则:一个类只做一件事情,一个方法只做一件事,降低代码冗余,提高代码复用性。不要把无关的事情放到方法中来完成。每个方法不要超过20行,10行为最佳。最少知道原则:尽量少公开方法或者属性,对外只公布接口。里氏替换原则:当基类被派生类替换时,功能不发生改变,所以在使用继承的时候,尽量不要发生重写。用基类定义,用派生类实例化,利用派生类的实例替...原创 2018-11-22 09:47:00 · 138 阅读 · 0 评论 -
javaAPI
API——运用程序本地接口Object类的成员方法 (Java.lang.object)public int hashCode() 返回对象的哈希码值。哈希值是根据哈希算法计算出来的一个值,这个值和地址有关,但不是实际地址。public final Class getClass() 返回一个class对象,可以根据这个class对象下面的publi...原创 2018-11-22 09:48:32 · 320 阅读 · 0 评论 -
java 集合框架
集合框架:数组和集合的区别:3个方面: 1长度 数组:不可变 集合:可变 2内容 数组:内容必须为同一数据类型; 3元素类型 数组:元素可以是基本数据类型,和引用数据类型。 集合:只能是引用数据类型。 Collection...原创 2018-11-22 10:02:36 · 103 阅读 · 0 评论 -
JDK的新特性
JDK5的新特性:自动拆装箱,泛型,增强for,静态导入,可变参数,枚举。自动拆装箱JDK1.5以后,简化了定义方式。(定义的基本数据类型会自动装箱,定义的包装类型会自动拆箱) Integer x = new Integer(4);可以直接写成 Integer x = 4;//自动装箱。 x = x + 5;//自动拆箱。通过intValue方法。 需要注意: 在使用时,In...原创 2018-11-22 09:57:38 · 104 阅读 · 0 评论 -
java 数据类型,运算符,进制转换,数据结构
Java数据类型对于java来说,我们将变量分为两个大类声明变量符合以下规则变量类型 变量名=初值;使用小驼峰命名;类级变量命名使用大驼峰;编码表:二进制和生活中文字的对应关系表。ASCII码表:美国统一二进制转换编码表。GB2312:信息交换用汉字编码字符集·基本集;Unicode:国际统一字集编码!1. 基本数据类型。(是关键字,全部是小写。...原创 2018-11-22 09:56:36 · 166 阅读 · 0 评论 -
java关键字,修饰符
this关键字:代表当前对象的引用,this所在函数所属对象的引用。可以用于在构造函数中调用其他构造函数。(注意:只能定义在构造函数的第一行,因为初始化动作要先执行。)super关键字: 代表父类存储空间的标识。(可以理解为父类的引用,通过这个东西可以访问父类的成员。) 子类的构造过程中必须调用其父类的构造方法。 如果子类的构造方法中没有显示调用父类的构造方法,则系统默认调...原创 2018-11-22 09:55:22 · 356 阅读 · 0 评论 -
网络编程
网络通信三要素 IP地址:InetAddress 网络中设备的标识,不易记忆,可用主机名 端口号 用于标识进程的逻辑地址,不同进程的标识 (各种软件)传输协议 通讯的规则 常见协议:TCP,UDP IP地址A:所谓IP地址就是给每个连接在Internet上的主机分配的一个32bit地址。按照TCP/IP规定,IP地址用二进制来表示,每个...原创 2018-11-22 09:53:02 · 122 阅读 · 0 评论 -
线程
Thread:jvm虚拟机的启动是单线程的还是多线程的?JVM启动至少启动了垃圾回收线程和主线程,所以是多线程的。 线程有两种调度模型: 分时调度模型 所有线程轮流使用 CPU 的使用权,平均分配每个线程占用 CPU 的时间片 抢占式调度模型 优先让优先级高的线程使用 CPU,如果线程的优先级相同,那么会随机选择一个,优先级高的线程获取的 CPU 时间片相...原创 2018-11-22 09:50:51 · 147 阅读 · 0 评论 -
JAVA多线程Thread和Runnable
Java中实现多线程有两种方法:继承Thread类;实现Runnable接口。Thread类的run()方法的制定了接口Runnable中的run();在Thread类中没有完全实现Runnable接口中的run()方法。Thread类是Runnable接口的子类,Thread类中的run()方法调用的是Runnable接口中的run()方法。public class Thread原创 2018-01-20 21:34:16 · 205 阅读 · 0 评论