- 博客(68)
- 收藏
- 关注
原创 请你说一说简单用户界面登陆过程都需要做哪些分析
一、功能测试1.输入正确的用户名和密码,点击提交按钮,验证是否能正确登录。2.输入错误的用户名或者密码,验证登录会失败,并且提示相应的错误信息。3.登录成功后能否能否跳转到正确的页面4.用户名和密码,如果太短或者太长,应该怎么处理5.用户名和密码,中有特殊字符(比如空格),和其他非英文的情况6.记住用户名的功能7.登陆失败后,不能记录密码的功能8.用户名和密码前后有空格的处理9....
2019-09-17 20:38:02
1031
原创 单例模式(饿汉模式、懒汉模式(线程安全和线程不安全))
饿汉模式public class Singleton { private static Singleton instance=new Singleton(); private Singleton(){} public static Singleton getInstance(){ return instance; }}这种方式在类加载时就完成...
2019-09-17 19:08:42
4077
1
原创 使用Statement类执行SQL语句时存在SQL注入漏洞(黑客攻击数据库常用手段),及预防注入的方法(PrepareStatement类)
什么是SQL注入SQL注入攻击通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,它目前是黑客对数据库进行攻击的最常用手段之一。SQL注入实例绕过登录(只需知道用户名、无需知道密码即可登录成功)实际userName=“zs”;password=“123”;//模拟用户输入userName和passwordSt...
2019-09-02 17:13:17
1026
原创 JDBC编程的执行流程(Connection类、DriverManger类、Statement类、释放资源调用close()方法)
JDBC编程步骤1.加载驱动/注册驱动 Class.forName("com.mysql.jdbc.Driver");//加载MySQL驱动类2.获取数据库连接DriverManager驱动管理类Connection连接抽象类Connection getConnection(String url, String user, String password)Connection con...
2019-09-02 16:18:49
874
原创 Java开发中用到的lombok是什么?内附lombok详解
在maven中添加lombok依赖<dependencies> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.6...
2019-09-02 12:37:34
490
原创 软件测试工程师经典面试题:请你说一说简单用户界面登陆过程都需要做哪些分析
请你说一说简单用户界面登陆过程都需要做哪些分析一、功能测试1.输入正确的用户名和密码,点击提交按钮,验证是否能正确登录。2.输入错误的用户名或者密码,验证登录会失败,并且提示相应的错误信息。3.登录成功后能否能否跳转到正确的页面4.用户名和密码,如果太短或者太长,应该怎么处理5.用户名和密码,中有特殊字符(比如空格),和其他非英文的情况6.记住用户名的功能7.登陆失败后,不能记录密...
2019-08-29 00:52:01
765
原创 LeetCode最小栈解法(java实现,单栈解法与双栈解法)
题目:https://leetcode-cn.com/problems/min-stack/1.双栈解法package www.bit.javase.OJ.Stack;import java.util.Stack;/**** @author mayanni* @date 2019-05-31 16:50*/class MinStack { //双栈解法 //存放...
2019-08-28 23:51:29
363
原创 计算机网络原理基础(简介OSI七层模型、TCP/IP五层模型、网络传输基本流程)
1.网络的发展背景1.1网络的发展I.独立模式:计算机之间相互独立;II.网络互联:多台计算机连接在一起,完成数据共享;III.局域网LAN:计算机数量更多了,通过交换机和路由器连接在一起;IV.广域网WAN:将远隔千里的计算机都连在一起1.2在网络中随着网络的覆盖范围不同,划分出了几种网络:局域网、城域网、广域网、因特网、互联网、以太网、令牌环网1.3 IP地址、端口号、协议I...
2019-08-27 22:54:34
645
原创 “嗨聊SPACE”项目测试:利用Selenium+Firefox自动化测试对用户注册、登录、上下线提示功能以及页面之间的跳转进行测试(python脚本编写)
测试登录功能# -*- coding: utf-8 -*-from selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.common.keys import Keysfrom selenium.webdriver.support.ui import Sele...
2019-08-26 20:32:40
391
原创 MySQL之用户管理(数据库授权,权限回收,修改用户密码)
用户1.用户信息MySQL中的用户都存储在系统数据库mysql的user表mysql> use mysql;Database changedmysql> select host,user,authentication_string from user;+-----------+---------------+---------------------------------...
2019-08-13 18:51:54
615
原创 MySQL之视图(视图的基本使用,使用规则)
视图视图是一张虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。视图的数据变化会影响到基表,基表的数据表花也会影响到视图基本使用创建视图create ciew 视图名 as select语句案例mysql> create view view_name as select ename,dname from emp,dept whe...
2019-08-13 15:41:29
996
原创 图解冒泡排序就这么简单(原理、代码实现及优化)
冒泡排序冒泡排序只会操作相邻位置的两个元素,每次冒泡操作都会对相邻位置的两个元素进行大小比较,看是否满足大小关系,如果不满足就交换位置。一次冒泡至少会让一个元素移动到最终位置。重复n次就完成了n个数据的排序工作。通过例子来看看冒泡排序的整个过程:要对一组数据{4,5,6,3,2,1}从小到大进行排序。可以看出,经过一次冒泡操作后,6这个元素已经存储在正确的位置上,想要完成所有数据的排序,就...
2019-08-11 18:31:46
449
原创 MySQL之事务(基本操作、ACID特性、隔离级别、脏读幻读不可重复读)
事务数据库事务(Database Transaction) :就是一组DML语句组成,这些语句在逻辑上存在相关性,这一组DML语句要么全部成功,要么全部失败,是一个整体。MySQL提供一种机制,保证我们可以达到这种效果,事务还规定不用的客户端看到的数据是不相同的。通过案例来理解事务:A同学像B同学转账1000元1)A同学余额被扣款1000元2)B同学余额增加1000元上面两个步骤,如...
2019-08-10 23:21:26
173
原创 MySQL之索引(索引作用与代价、分类、基本操作)
未使用索引查询mysql> select * from emp where empno=998877;+--------+--------+----------+------+---------------------+---------+--------+--------+| empno | ename | job | mgr | hiredate ...
2019-08-06 16:33:26
574
原创 MySQL之内外连接(如何使用及常见面试题:内外连接区别详解)
表的内连与外连1.内连接利用where子句对两种表形成的笛卡尔积进行筛选,内连接是使用最多的连接查询。语法:SELECT 字段 FROM 表1 INNER JOIN 表2 ON 连接条件 and 其它条件;显示SMITH的名字和部门名称--第一种写法(前面学习过程中一直采用的方法)select ename,dname from emp,deptwhere emp.deptno...
2019-08-05 18:07:23
605
原创 MySQL之复合查询(多表查询,单行、多行、多列子查询)
复合查询1.基本查询回顾查询工资高于500或岗位为MANAGER的雇员,同时还要满足他们的姓名首字母为大写的Jselect sal,job,ename from EMP where (sal>500 or job='MANAGER') and ename like 'J%'; 按照部门号升序而雇员的工资降序排序select ename deptno,sal from EM...
2019-08-05 14:59:31
3132
原创 MySQL之内置函数(日期函数、字符串函数、数学函数、加密函数等)
1.日期函数函数名称描述current_date()当前日期current_time()当前时间current_timestamp当前时间戳date(datetime)返回datetime参数的日期部分date_add(date,interval d_value_type)在date中添加日期或时间,interval后的数值单位可以是:yea...
2019-07-25 00:41:26
165
原创 MySQL之基本查询(二)(对结果排序order by子句、 表的更新、聚合函数)
2.3NULL的查询//查询student表mysql> select * from student;+-----+------+-----------+-------+| id | sn | name | qq |+-----+------+-----------+-------+| 100 | 1000 | 唐三藏 | NULL || 101 ...
2019-07-24 00:11:19
405
原创 MySQL之基本查询(一)(插入、查询全列、指定列、where子句条件)
插入1.insert语法:INSERT [INTO] table_name [(column [, column] ...)] VALUES (value_list) [, (value_list)] ... value_list: value, [, value] ...案例先创建一张学生表mysql> create table stude...
2019-07-22 00:13:33
820
原创 MySQL之表的约束(主键、外键、唯一键、自增长、列描述、默认值、空属性)
1.表的约束真正约束字段的是数据类型,但是数据类型约束很单一,需要一些格外的约束,更好的保证数据的合法性,比如有一个字段是身份证号,要求是唯一的。表的约束有很多,主要学习以下几种:null/not null;default;comment;zerofill;primary key;auto_increment;unique key;1.1空属性null/not null1)n...
2019-07-19 18:32:40
334
原创 MySQL之表的操作(删除表、修改表、创建表操作)
表操作1.创建表create table table_name( field1 datatype, field2 datatype, field3 datatype)character set 字符集 collate 校验规则 engine 存储引擎;说明:field表示列名datatype表示列的类型character set字符集,如果没有指定字符集,则以所...
2019-07-17 17:37:18
337
原创 MySQL之库的操作
1.库的操作1.1创建数据库CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, create_specification]...]create_specification:[DEFAULT] CHARACTER SET charset_name[DEFAULT] COLLATE collation_name...
2019-07-16 20:38:28
105
原创 MySQL数据库基础(MySQL数据库的架构、SQL分类、MySQL数据库存储引擎)
1.MySQL架构MySQL是一个可移植的数据库,几乎能在当前所有操作系统上运行,如Windows、Mac、Linux/Unix和Solaris。各种系统在底层实现方面各有不同,但是MySQL基本能保证在各个平台上的物理体系结构的一致性。引擎:I.MyISAM:检索速度快,快速读写操作,支持事务,插入数据快,空间和内存使用比较低;如果表主要是用于插入新记录和读出记录,那么选择MyISAM能实...
2019-06-05 17:25:32
177
原创 字符编码(常见的字符编码、乱发产生的原因)
字符编码1常见的编码:I.GBK、GBK2312:GBK包含简体与繁体中文,GBK2312只包含简体中文。II.UNICODE:java提供的16进制编码,可以描述世界上任意语言,但是编码进制数太高,编码体积较大。III.ISO-8859-1:国际通用编码,不支持中文,浏览器默认编码。IV.UTF编码:结合UNICODE与ISO-8859-1,最常采用的是UTF-8编码。2乱码...
2019-06-05 16:52:06
313
原创 字节流与字符流(流的操作流程、InputStream & OutputStream、Writer&Reader、转换流、实现文件拷贝)
2.字节流与字符流2.1流操作简介File类不支持文件内容处理,如果要处理文件内容,必须要通过流的操作模式来完成。流分为输入流和输出流。在java.io包中,流分为两种:字节流与字符流I.字节(byte)流:InputStream、OutputStream,可以处理文本文件、图像、音乐、视频等资源。II.字符(char)流:Reader、Writer,只能用于处理中文文本。字节流与字符...
2019-06-05 16:50:19
697
原创 javaIO中的File类(创建文件、对文件、目录的操作、获取文件信息的方法)
JavaIO-BIO(阻塞式IO)-基于抽象类学习IO需要核心掌握五个类(File,OutputStream,InputStream,Reader,Writer) 及一个接口(Serializable)1.File文件操作类——既可以描述具体文件也可以描述文件夹在java.io包之中,File类是唯一一个与文件本身操作(创建、删除、取得信息…)有关的程序类文件操作三步走:1.取得File...
2019-06-05 16:23:08
1069
原创 统计回文编程题: 花花非常喜欢这种拥有对称美的回文,生日的时候她得到两个礼物分别是字符串A和字符串B。现在她非常好奇有没有办法将字符串B插入字符串A使产生的字符串是一个回文串。
题目:“回文串”是一个正读和反读都一样的字符串,比如"level"或者“noon”等等就是回文串。花花非常喜欢这种拥有对称美的回文串,生日的时候她得到了两个礼物分别是字符串A和字符串B。现在她非常好奇有没有办法将字符串B插入字符串A使产生的字符串是一个回文串。你接受哗哗的请求,帮助她寻找有多少种插入办法可以使新串是一个回文串。如果字符串B插入的位置不同就考虑为不一样的办法。例如:A=“abc”...
2019-05-26 14:28:59
528
原创 ClassLoader类加载器、双亲委派模型
****** *1.ClassLoader 类加载器 *********1.1定义:类加载定义:通过一个类的全名称来获取此类的二进制字节流类加载器:实现类加载功能的代码模块1.2JDK内置的三大类加载器1.2.1BootStrapClassLoader(启动类加载器,c语言实现的加载器)I.使用C++语言实现,是JVM自身的一部分,独立于JVM外部,并且无法被java程序直接引用。I...
2019-05-26 10:19:37
110
原创 Java反射操作
一、反射的引出通常的正向处理:先有类,再根据类创建对象(根据包名.类名找到类)范例:import java.util.Date;public class ReflectTest { public static void main(String[] args) { Date date = new Date(); System.out.println(d...
2019-05-15 13:21:57
409
原创 新特性概述-枚举、注解、Lambda表达式、方法引用
1.枚举(实际上就是多例)java中枚举使用enum来定义,enum并不是一个新的结构,使用enum定义的枚举实际上默认继承Enum枚举类。因此enum定义的枚举结构实际上就是一个多例类。1.1Enum枚举类常用的三个方法:ordinal():返回枚举对象下标,默认第一个对象编号为0;name():返回枚举对象名称,默认与对象名称保持一致values():返回所有枚举对象范例:对...
2019-04-28 20:17:30
415
原创 包和异常
一、包的定义与使用1.1 包(package)的定义以后在进入源文件时先定义包名称。Java包的本质就是一个文件夹,避免类名重复的问题。在源文件首行使用package定义包名编译时加上-d参数javac -d 源文件所在路径-绝对路径(当前路径 .) 源文件名称javac -d . Test.java运行时使用类的全名称(包名.类名)java www.bit.java.Test...
2019-04-22 21:12:58
224
原创 JDK1.5新特性及泛型
JDK1.5的新特性1.方法的可变参数:实际上使用的是数组结构在方法中使用…表示可变参数public static int add(int ... data){//本身还是一个数组 int result=0; for (int i = 0; i <data.length ; i++) { result += data[i]; } return result...
2019-04-18 18:56:25
230
原创 Object类和包装类
Object类Object类是JDK默认提供的一个类,所有类默认继承Object类。Object类是所有类的父类,使用Object可以接收所有类的对象。1.取得对象信息toString()使用系统输出输出对象时,默认输出的是一个地址编码。而使用系统输出输出String常量时,输出的是字符串内容。本质原因就在于Object类提供的toString()有没有被类所覆写。系统输出(print/...
2019-04-15 18:41:18
276
原创 String类详解(二)
1.8字符串比较boolean equals():区分大小写的比较boolean equalsIgnoreCase():不区分大小写的比较int compareTo(String anotherString): 当碰到第一个不相等的字符时,终止比较,返回两个字符的ASCII码差值。其中:当>0时,表示当前字符串 > 目标字符串=0时,表示当前字符串 = 目标字符串<0...
2019-04-12 20:03:18
243
原创 String类详解(一)
1.String类详解1.1实例化方式1.1.1直接赋值(用到的最多)String str="hello";//String类直接赋值1.1.2通过构造方法赋值String str1=new String("hello");//通过构造方法赋值1.2 字符串相等比较"=="比较的两个操作符的值,对于基本类型而言比较的就是值的大小,对于引用类型而言,比较的是二者指向的堆内存地址是否...
2019-04-12 19:51:13
280
原创 判断一个字符串是否全部由数字组成?
代码实现如下public class StringClassTest { public static void main(String[] args) { String str="123b56c7"; if(isAllNumber(str)){ System.out.println("该字符串全都是由数字组成"); ...
2019-04-11 21:34:45
1770
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人