原创
mayanni_blogs
这个作者很懒,什么都没留下…
展开
-
使用Statement类执行SQL语句时存在SQL注入漏洞(黑客攻击数据库常用手段),及预防注入的方法(PrepareStatement类)
什么是SQL注入SQL注入攻击通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,它目前是黑客对数据库进行攻击的最常用手段之一。SQL注入实例绕过登录(只需知道用户名、无需知道密码即可登录成功)实际userName=“zs”;password=“123”;//模拟用户输入userName和passwordSt...原创 2019-09-02 17:13:17 · 992 阅读 · 0 评论 -
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 · 147 阅读 · 0 评论 -
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 · 312 阅读 · 0 评论 -
MySQL之基本查询(二)(对结果排序order by子句、 表的更新、聚合函数)
2.3NULL的查询//查询student表mysql> select * from student;+-----+------+-----------+-------+| id | sn | name | qq |+-----+------+-----------+-------+| 100 | 1000 | 唐三藏 | NULL || 101 ...原创 2019-07-24 00:11:19 · 371 阅读 · 0 评论 -
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 · 92 阅读 · 0 评论 -
MySQL数据库基础(MySQL数据库的架构、SQL分类、MySQL数据库存储引擎)
1.MySQL架构MySQL是一个可移植的数据库,几乎能在当前所有操作系统上运行,如Windows、Mac、Linux/Unix和Solaris。各种系统在底层实现方面各有不同,但是MySQL基本能保证在各个平台上的物理体系结构的一致性。引擎:I.MyISAM:检索速度快,快速读写操作,支持事务,插入数据快,空间和内存使用比较低;如果表主要是用于插入新记录和读出记录,那么选择MyISAM能实...原创 2019-06-05 17:25:32 · 154 阅读 · 0 评论 -
字符编码(常见的字符编码、乱发产生的原因)
字符编码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 · 293 阅读 · 0 评论 -
字节流与字符流(流的操作流程、InputStream & OutputStream、Writer&Reader、转换流、实现文件拷贝)
2.字节流与字符流2.1流操作简介File类不支持文件内容处理,如果要处理文件内容,必须要通过流的操作模式来完成。流分为输入流和输出流。在java.io包中,流分为两种:字节流与字符流I.字节(byte)流:InputStream、OutputStream,可以处理文本文件、图像、音乐、视频等资源。II.字符(char)流:Reader、Writer,只能用于处理中文文本。字节流与字符...原创 2019-06-05 16:50:19 · 661 阅读 · 0 评论 -
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 · 1031 阅读 · 0 评论 -
统计回文编程题: 花花非常喜欢这种拥有对称美的回文,生日的时候她得到两个礼物分别是字符串A和字符串B。现在她非常好奇有没有办法将字符串B插入字符串A使产生的字符串是一个回文串。
题目:“回文串”是一个正读和反读都一样的字符串,比如"level"或者“noon”等等就是回文串。花花非常喜欢这种拥有对称美的回文串,生日的时候她得到了两个礼物分别是字符串A和字符串B。现在她非常好奇有没有办法将字符串B插入字符串A使产生的字符串是一个回文串。你接受哗哗的请求,帮助她寻找有多少种插入办法可以使新串是一个回文串。如果字符串B插入的位置不同就考虑为不一样的办法。例如:A=“abc”...原创 2019-05-26 14:28:59 · 501 阅读 · 0 评论 -
ClassLoader类加载器、双亲委派模型
****** *1.ClassLoader 类加载器 *********1.1定义:类加载定义:通过一个类的全名称来获取此类的二进制字节流类加载器:实现类加载功能的代码模块1.2JDK内置的三大类加载器1.2.1BootStrapClassLoader(启动类加载器,c语言实现的加载器)I.使用C++语言实现,是JVM自身的一部分,独立于JVM外部,并且无法被java程序直接引用。I...原创 2019-05-26 10:19:37 · 97 阅读 · 0 评论 -
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 · 381 阅读 · 0 评论 -
新特性概述-枚举、注解、Lambda表达式、方法引用
1.枚举(实际上就是多例)java中枚举使用enum来定义,enum并不是一个新的结构,使用enum定义的枚举实际上默认继承Enum枚举类。因此enum定义的枚举结构实际上就是一个多例类。1.1Enum枚举类常用的三个方法:ordinal():返回枚举对象下标,默认第一个对象编号为0;name():返回枚举对象名称,默认与对象名称保持一致values():返回所有枚举对象范例:对...原创 2019-04-28 20:17:30 · 398 阅读 · 0 评论 -
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 · 206 阅读 · 0 评论 -
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 · 292 阅读 · 0 评论 -
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 · 801 阅读 · 0 评论 -
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 · 843 阅读 · 0 评论 -
Java开发中用到的lombok是什么?内附lombok详解
在maven中添加lombok依赖<dependencies> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.6...原创 2019-09-02 12:37:34 · 456 阅读 · 0 评论 -
Linux下常用基本指令(Linux环境下安装软件工具必备命令)
原创 2019-08-26 22:48:15 · 196 阅读 · 0 评论 -
“嗨聊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 · 365 阅读 · 0 评论 -
软件测试经典面试题:如何对QQ表情包收藏进行测试?最全测试用例,欢迎拓展
原创 2019-08-26 14:14:00 · 798 阅读 · 0 评论 -
软件测试经典面试题:如何对QQ登录进行测试?
原创 2019-08-23 13:23:13 · 1072 阅读 · 0 评论 -
图解冒泡排序就这么简单(原理、代码实现及优化)
冒泡排序冒泡排序只会操作相邻位置的两个元素,每次冒泡操作都会对相邻位置的两个元素进行大小比较,看是否满足大小关系,如果不满足就交换位置。一次冒泡至少会让一个元素移动到最终位置。重复n次就完成了n个数据的排序工作。通过例子来看看冒泡排序的整个过程:要对一组数据{4,5,6,3,2,1}从小到大进行排序。可以看出,经过一次冒泡操作后,6这个元素已经存储在正确的位置上,想要完成所有数据的排序,就...原创 2019-08-11 18:31:46 · 414 阅读 · 0 评论 -
MySQL之事务(基本操作、ACID特性、隔离级别、脏读幻读不可重复读)
事务数据库事务(Database Transaction) :就是一组DML语句组成,这些语句在逻辑上存在相关性,这一组DML语句要么全部成功,要么全部失败,是一个整体。MySQL提供一种机制,保证我们可以达到这种效果,事务还规定不用的客户端看到的数据是不相同的。通过案例来理解事务:A同学像B同学转账1000元1)A同学余额被扣款1000元2)B同学余额增加1000元上面两个步骤,如...原创 2019-08-10 23:21:26 · 157 阅读 · 0 评论 -
MySQL之用户管理(数据库授权,权限回收,修改用户密码)
用户1.用户信息MySQL中的用户都存储在系统数据库mysql的user表mysql> use mysql;Database changedmysql> select host,user,authentication_string from user;+-----------+---------------+---------------------------------...原创 2019-08-13 18:51:54 · 589 阅读 · 0 评论 -
MySQL之索引(索引作用与代价、分类、基本操作)
未使用索引查询mysql> select * from emp where empno=998877;+--------+--------+----------+------+---------------------+---------+--------+--------+| empno | ename | job | mgr | hiredate ...原创 2019-08-06 16:33:26 · 509 阅读 · 0 评论 -
MySQL之视图(视图的基本使用,使用规则)
视图视图是一张虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。视图的数据变化会影响到基表,基表的数据表花也会影响到视图基本使用创建视图create ciew 视图名 as select语句案例mysql> create view view_name as select ename,dname from emp,dept whe...原创 2019-08-13 15:41:29 · 969 阅读 · 0 评论 -
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 · 565 阅读 · 0 评论 -
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 · 3061 阅读 · 0 评论 -
包和异常
一、包的定义与使用1.1 包(package)的定义以后在进入源文件时先定义包名称。Java包的本质就是一个文件夹,避免类名重复的问题。在源文件首行使用package定义包名编译时加上-d参数javac -d 源文件所在路径-绝对路径(当前路径 .) 源文件名称javac -d . Test.java运行时使用类的全名称(包名.类名)java www.bit.java.Test...原创 2019-04-22 21:12:58 · 208 阅读 · 0 评论 -
String类详解(二)
1.8字符串比较boolean equals():区分大小写的比较boolean equalsIgnoreCase():不区分大小写的比较int compareTo(String anotherString): 当碰到第一个不相等的字符时,终止比较,返回两个字符的ASCII码差值。其中:当>0时,表示当前字符串 > 目标字符串=0时,表示当前字符串 = 目标字符串<0...原创 2019-04-12 20:03:18 · 224 阅读 · 0 评论 -
代码块
1.代码块(考点)定义:使用{ }定义的一段代码根据代码块定义的位置以及关键字,分为以下四种代码块1.1普通代码块(了解)定义在方法中的代码块:解决方法中变量重名的场景*1.2构造块定义在类中的代码块(不加任何修饰符)构造块优先于构造方法执行,每当有对象产生就执行一次构造块,完成类中普通属性初始化操作*1.3 静态代码块使用static修饰并定义在类中的代码块1.3.1定义在非...原创 2018-12-25 16:18:52 · 75 阅读 · 0 评论 -
this关键字和static关键字
1.this关键字1.1 this 调用本类属性以后在类中调用本类属性时请加上this关键字1.2 this调用本类方法a.this 调用构造方法(1.)this() 表示调用类中的无参构造,this(构造方法参数)表示调用类中的构造方法(2.)this 调用构造方法必须放在构造方法首行(3.)this调用方法不能成环,必须是线性结构b.this 调用普通方法this.方法名(方...原创 2018-12-23 16:51:43 · 138 阅读 · 0 评论 -
super关键字 final关键字
super关键字(使用场景:有继承存在)调用父类的成员1.super调用构造方法a)当调用子类无参构造时,系统会自动在子类无参构造前加上super( );表示先调用父类的无参构造。(表示可以省略super关键字),此时子类可以使用this调用构造方法。b)当父类不存在无参构造时,必须在子类构造方法中使用super(参数)明确指定调用父类中的哪个有参构造。此时的super不能省略。此时子类不...原创 2018-12-17 22:53:56 · 132 阅读 · 0 评论 -
面向想对象编程-类与对象(上)
1.面向对象(OO或double O)三大特征(封装、继承、多态)最大特征:可以进行现实生活的抽象(1)封装:将客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或 对象操作,对不可信的进行隐藏。内部操作对外部而言不可见。(保护性)eg.银行卡取款,从C语言角度而言,只要知道取款过程就可以任意取款。(2)继承(可重用):可以使用现有类的所有功能,并且在无需重新编写原有类的基础...原创 2018-12-11 19:43:34 · 160 阅读 · 0 评论 -
反斗棋小游戏
在这里插入代码片package Shixi3;import java.awt.Color;import java.awt.GridLayout;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import javax.swing.JButton;import javax.swing.JFrame...原创 2018-12-27 17:44:08 · 177 阅读 · 0 评论 -
用Java实现一个记事本
package Shixi1;import java.awt.BorderLayout;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.swing.JMenuItem;import javax...原创 2018-12-26 23:09:50 · 1696 阅读 · 3 评论 -
内部类
内部类1.内部类:就是在类的内部进行其他类结构的嵌套定义内部类后造成类结构复杂,最大的优点内部类可以直接访问外部类私有域1.1定义类的原因a.内部类可以访问外部类所有数据,包含被private封装的数据b.内部类可以对外部类之外的类进行隐藏,使用内部类也是封装的一种。(人和心脏,汽车和发动机)c.使用内部类可以实现多继承概念2.内部类与外部类关系a.对于非静态内部类(成员内部类),...原创 2018-12-26 20:40:10 · 102 阅读 · 0 评论 -
干货来了!!简单操作让你的GitHub格子重新绿起来
自从得知了GitHub这个网站,我就开始把自己的代码每天提交上去,看着小绿格子慢慢的特别有成就感。“事故”发生了,就在上周一之后我的小绿格子突然不变色了,我一直以为是学校网太差,一周过去了总觉得不对劲,专门找时间查了一下,经过在网上搜索,我的小绿格子回来了,现在把解决方案给大家整理一下:第一步:首先打开网页版的GitHub,查看自己的邮箱第二步:在自己下载的Git中打开Git-bash,打开...原创 2018-12-09 21:58:33 · 4002 阅读 · 1 评论 -
C语言实现扫雷
text.c文件中的代码如下#define _CRT_SECURE_NO_WARNINGS 1#include "game.h"//测试扫雷游戏void menu(){ printf("************************\n"); printf("* 1.play 0.exit *\n"); printf("********************...原创 2018-12-14 23:25:52 · 134 阅读 · 0 评论