- 博客(38)
- 资源 (22)
- 收藏
- 关注
原创 Cookie设置HttpOnly,Secure,Expire属性
在Web工程上增加一个Filter对Cookie进行处理public class CookieFilter implements Filter { public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, Servl...
2018-03-30 17:47:38 554
转载 HTTP与HTTPS握手的那些事
在讲述这两个握手时候,有一些东西需要提前说明。HTTP与TCP/IP区别?TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据。WEB使用HTTP协议作应用层协议,以封装HTTP 文本信息,然后使用TCP/IP做传输层协议将它发到网络上。下面的图表试图显示不同的TCP/IP和其他的协议在最初OSI(Open System In...
2018-03-30 14:35:29 142
转载 XSS攻击及防御
XSS又称CSS,全称Cross SiteScript,跨站脚本攻击,是Web程序中常见的漏洞,XSS属于被动式且用于客户端的攻击方式,所以容易被忽略其危害性。其原理是攻击者向有XSS漏洞的网站中输入(传入)恶意的HTML代码,当其它用户浏览该网站时,这段HTML代码会自动执行,从而达到攻击的目的。如,盗取用户Cookie、破坏页面结构、重定向到其它网站等。XSS攻击 XSS攻击...
2018-03-30 13:51:51 228
转载 关于Cookie 的HttpOnly属性(java/web操作cookie+Tomcat操作jsessionid)
关于Cookie的其它只是不在累述、本文主要讲讲自己在项目中遇到的cookie的HttpOnly属性问题Cookie的HttpOnly属性说明cookie的两个新的属性secure和Httponly分别表示只能通过Http访问cookie 不能通过脚本访问Cookie、HttpOnly属性在一定程度上可以防止XSS攻击(XSS攻击类似sql注入,更多资料可以百度查阅)。在web...
2018-03-30 13:47:58 1963 1
原创 web.xml配置cookie
<cookie-config><http-only>true</http-only> <secure>true</secure> </cookie-config>这个的作用是让页面的js无法读取到cookie, 是一种保护措施。...
2018-03-30 12:34:01 5113
原创 网络编程案例之文件上传
/* * 文件上传 服务器端 * */publicclass TCPServer { publicstaticvoid main(String[] args) throwsIOException { //1,创建服务器,等待客户端连接 ServerSocket serverSocket = newServerSocket(8888); Socket ...
2018-03-25 10:01:26 243
原创 网络编程TCP和UDP介绍与使用
链路层:链路层是用于定义物理传输通道,通常是对某些网络连接设备的驱动协议,例如针对光纤、网线提供的驱动。网络层:网络层是整个TCP/IP协议的核心,它主要用于将传输的数据进行分组,将分组数据发送到目标计算机或者网络。传输层:主要使网络程序进行通信,在进行网络通信时,可以采用TCP协议,也可以采用UDP协议。应用层:主要负责应用程序的协议,例如HTTP协议、FTP协议等。InetAd...
2018-03-25 09:59:11 173
原创 常见数据库的操作
数据库操作:A: 创建数据库 create database 数据库名; create database 数据库名 character set 字符集;B: 查看数据库 查看数据库MySQL服务器中的所有的数据库: show databases; 查看某个数据库的定义的信息: show crea...
2018-03-25 08:41:16 792
原创 数据库索引、约束添加和删除
约束类型1.主键约束primay key Constraint:唯一性 非空性2.唯一约束Unique Constraint:唯一性 可以空 但只能有一个3.检查约束 Check Constraint:对该列数据的范围、格式的限制4.默认约束 Default Constraint:该数据的默认值5.外键约束 Foreign keyConstraint:需要建立两表之间...
2018-03-25 08:36:22 909
原创 数据表中的数据类型
MySQL中的我们常使用的数据类型如下 详细的数据类型如下(不建议详细阅读!) 分类 类型名称 说明 整数类型 tinyInt 很小的整数 smallint 小的整数 mediumint 中等大小的整数 ...
2018-03-25 08:29:27 1386
原创 System,Math,Arrays,BigInteger,BigDecimal,SimpleDateFormat,Calendar使用介绍
System类 成员方法 * public static void gc():调用垃圾回收 * public static void exit(int status):退出虚拟机 * public static long currentTimeMillis():获取毫秒值 * pubiic static void ar...
2018-03-23 23:22:25 147
原创 泛型的定义格式与extends 和super 的修饰范围
泛型类:定义格式: 修饰符 class 类名<代表泛型的变量>{}泛型的方法定义格式:修饰符 <代表泛型的变量> 返回值类型 方法名(参数){ }泛型的接口:修饰符 interface 接口名<代表泛型的变量>{}1.泛型类T,U类型参数可以用在: 1.属性类型 2.方法返回值 3.方法参数类型...
2018-03-23 23:22:17 347
原创 list,set,map的区别与比较
Collection: List(存取有序,有索引,可以重复) ArrayList 底层是数组实现的,线程不安全,查找和修改快,增和删比较慢 LinkedList 底层是链表实现的,线程不安全,增和删比较快,查找和修改比较慢 Vector ...
2018-03-23 23:22:09 173
原创 final、finally、finalize的区别?
final: 修饰类:类不能被继承 修饰方法:方法不能被重写 修饰变量:变量变成了常量。且只能被赋值一次 finally:是try-catch的一部分!被它修饰的代码一定会被执行到!除非在这之前退出了虚拟机 finalize:垃圾回收的方法...
2018-03-19 21:10:15 235
原创 异常介绍和throw与try...catch...finally的区别
异常的继承体系 Throwable: 它是所有错误与异常的超类(祖宗类) |- Error 错误 |- Exception 编译期异常,进行编译JAVA程序时出现的问题 |- RuntimeException 运行期异常, JAVA程序运行过程中出现的问题异常与错误的区别 * a:...
2018-03-19 21:10:09 303
原创 递归注意事项
A:递归概念和注意事项 * a: 递归概念 * 递归,指在当前方法内调用自己的这种现象 * 递归分为两种,直接递归和间接递归 * 直接递归称为方法自身调用自己。间接递归可以A方法调用B方法,B方法调用C方法,C方法调用A方法 * b: 注意事项 * 递归一定要有出口, 必须可以让程序...
2018-03-19 21:09:56 2305
原创 流的基本介绍和操作对象规律以及file文件对象
注意:流读取文件的路径必须是绝对路径流按操作类型分为两种: * 字节流 : 字节流可以操作任何数据,因为在计算机中任何数据都是以字节的形式存储的 * 字符流 : 字符流只能操作纯字符数据,比较方便。IO流常用父类 * 字节流的抽象父类: * InputStream...
2018-03-19 21:09:49 150
原创 序列化,打印流,Properties
对象的序列化与反序列化 * a: 基本概念 * 对象的序列化 * 对象中的数据,以流的形式,写入到文件中保存过程称为写出对象,对象的序列化 * ObjectOutputStream将对象写到文件中,实现序列化 * 对象的反序列化 * 在文件...
2018-03-19 21:09:29 138
原创 进程与线程和多线程的实现方式
进程:进程指正在运行的程序。确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且具有一定独立功能。线程:线程是进程中的一个执行单元(执行路径),负责当前进程中程序的执行, 一个进程中至少有一个线程。一个进程中是可以有多个线程的,这个应用程序也可以称之为多线程程序。创建新执行线程有两种方法。a:一种方法是将类声明为 Thread 的子类。该子类应重写 Th...
2018-03-19 21:09:19 145
原创 String,StringBuffer和StringBuilder
String:创建对象的数量比较 * String s3 = "abc"; * 在内存中只有一个对象。这个对象在字符串常量池中 * String s4 = new String("abc"); * 在内存中有两个对象。一个new的对象在堆中,一个字符串本身对象,在字符串常量池中...
2018-03-18 09:53:17 139
原创 eclipse快捷键
* A: Ctrl+T:查看所选中类的继承树 例如,在下面代码中,选中Teacher类名,然后按Ctrl+T,就会显示出Teacher类的继承关系 * B: 查看所选中方法的源代码 Ctrl+滑动鼠标点击方法名,或者选中方法名后,按F3键查看所选中方法的源代码。 * C:常用快捷键: * 多个名称一起重命名:alt + shift + r ...
2018-03-18 09:41:26 125
原创 权限修饰符的修饰范围和比较
public protected default private 同一类中 √ √ √ √ 同一包中(子类与无关类) √ √ ...
2018-03-18 09:19:55 374
原创 静态变量和成员变量的区别,成员变量和局部变量区别:
静态变量和成员变量的区别? 所属不同: 静态变量:属于类。也称为类变量 成员变量:属于对象。也称为对象变量 内存中不同: 静态变量:在方法区中的静态区 成员变量:在堆内存中 生命周期不同: 静态变量:随着类的加载而加载。随着类的消失而消失 ...
2018-03-18 09:18:30 151
原创 内部类介绍与使用
内部类分为成员内部类与局部内部类。 我们定义内部类时,就是一个正常定义类的过程,同样包含各种修饰符、继承与实现关系等。 在内部类中可以直接访问外部类的所有成员。但是在外部类中想访问内部类只能创建内部类对象才可以成员内部类,定义在外部类中的成员位置。与类中的成员变量相似,可通过外部类对象进行访问定义格式 class 外部类 { ...
2018-03-18 09:16:52 116
原创 多态成员变量和成员方法编译在编译与运行时期的区别
多态成员变量当子父类中出现同名的成员变量时,多态调用该变量时:编译时期:参考的是引用型变量所属的类中是否有被调用的成员变量。没有,编译失败。运行时期:也是调用引用型变量所属的类中的成员变量。简单记:编译和运行都参考等号的左边。编译运行看左边。 多态成员方法编译时期:参考引用变量所属的类,如果没有类中没有调用的方法,编译失败。运行时期:参考引用变量所指的对象所属的...
2018-03-10 20:04:41 285
原创 java this,final,static关键字
this关键字this关键字,本类对象的引用this是在方法中使用的,哪个对象调用了该方法,那么,this就代表调用该方法的对象引用this对象 当前调用对象 new出来的 new的是谁 this代表谁this什么时候存在的?当创建对象的时候,this存在的this的作用:用来区别同名的成员变量与局部变量(this.成员变量)instanceof我们可以通过in...
2018-03-10 19:37:48 98
原创 基本类型和引用类型作为参数传递
引用类型数据和基本类型数据作为参数传递有没有差别呢?我们用如下代码进行说明class Demo{ public static void main(String[] args) { int x = 4; show(x); System.out.println("x="+x); } public static void show(int...
2018-03-10 19:33:28 512
原创 java数组的定义格式和使用
数组的定义格式: 1.一维数组的定义格式: 数据类型[] 数组名=new 数据类型[数组的长度]; //数据类型前后保持一致 a.动态初始化:动:仅指定长度不指定具体元素值 int[] arr=new int[3];//定义了一个能存三个元素的数组容器 //数组的类型是 int[] 也是一个...
2018-03-10 18:43:43 903
原创 switch结构语句
Switch选择结构格式: a.格式: swtich(表达式){//()中的数据类型仅仅支持 //short int byte char //jdk1.5 enum jkd1.7 String case 常量1 : 要执行...
2018-03-10 18:42:24 5246
原创 java中if,for,while语句语法
if语句: a.第一种格式:(单身狗) if(布尔表达式) { 如果布尔表达式为true,才执行大括号中的内容 } b.第二种格式:(一夫一妻) if(布尔表达式) { 如果布尔表达式为true,执行此处代码 }else { 如果布尔表达式为false,执行此处代码 ...
2018-03-10 18:25:40 704
原创 高规格折半查找
public class MyUtil{ public static <T extends Comparable<T>> int binarySearch(T[] x ,T key){ return binarySearch(x,0,x.length-1,key); } public static <T> int bin...
2018-03-10 18:11:34 129
原创 高规格冒泡排序
public interface Sorter{ public <T extends Compareable<T> > void sort(T[] list); public <T> void sort(T[] list ,Compartor<T> comp);}public class BubbleSorter impleme...
2018-03-10 17:53:48 171
原创 数据库设计思想
四种高效数据库设计思想——提高查询效率:设计数据库表结构时,我们首先要按照数据库的三大范式进行建立数据。1. 1NF每列不可拆分2. 2NF确保每个表只做一件事情3. 3NF满足2NF,消除表中的依赖传递。三大范式的出现是在上世纪70年代,由于内存资源比较昂贵,所以严格按照三大范式进行数据库设计。而如今内存变得越来越廉价,在考虑效率和内存的基础上我们可以做出最优选择以达到最高效率。建立数据库先按照...
2018-03-10 14:53:14 422
原创 数据库结构优化
数据库结构优化:优化表结构::1:尽量将表字段定义为not null约束,因为MySQL中含空值得列很难查询优化2:对于只包含特定类型的字段,可以使用enum,set等3:数值型字段的比较比字符串比较效率高很多,字段类型尽量使用最小,最简单类型4:尽量使用TINYINT,SMALLINT,MEDIUM_INT作为整数5:varchar的长度只分配真正需要的空间6:尽量使用TIMESTAMP而非DA...
2018-03-04 09:42:03 196
原创 MySQL硬件优化
硬件优化:1:配置更大的内存,足够大的内存,是提高MySQL数据库性能的方法之一2:磁盘i/o相关:使用SSD或PCleSSD设备,购置阵列卡同时配置CACHE及BBU模块,尽可能选用RAID-10使用机械盘尽肯能选择高转速的3:配置CPU相关...
2018-03-04 09:28:23 414
原创 数据库存储引擎和优化
MyISAM、InnoDB区别l MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。l MyISAM表不支持外键,InnoDB支持l MyISAM锁的粒度是表级,而InnoDB支持行级锁定。l MyISAM支持全文类型索引,而InnoDB不支持全文索引。(mysql 5.6后innodb支持全文索引)MyISAM相对简单,所以在效率上要优于InnoDB,小型应用可以考虑使用MyIS...
2018-03-04 09:19:12 453
原创 MySQL慢查询日志和explain分析
慢查询日志:慢查询日志开启:在my.cfg或my.ini加入slow_query_log_file=/var/log/mysql_slow_querys.log指定慢日志文件存放位置,可以为空,系统会给一个缺省的文件host_name-slow.loglong_query_time=3 设定慢查询的阀值,超出次设定值的SQL即被记录到慢查询日志,单位为妙,缺省值为10s...
2018-03-04 08:54:04 155
原创 maven永久解决jdk
<!-- jdk1.7 --> <build> <plugins> <plugin> <groupId>org.apache....
2018-03-03 11:24:02 172
Spring Security、Spring Social 、Spring Security OAuth
2018-09-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人