一。idea F8不能使用,断点无法切换
解决方法:Fn+Esc 后解决。
如果是Ctrl+Shift+F失效,那就是可能跟搜狗输入法的快捷键冲突了,打开搜狗输入法设置修改快捷键
二。$.getJSON语法格式
$.getJSON({
url:,
type:“get”,
content:"add.html?参数1=A&参数2=B”
}).done(function(result){

})

在这里插入图片描述
三。count(1) count() count(字段)
count(1) 会统计表中的所有的记录数,包含字段为null 的记录。
count(字段) 会统计该字段在表中出现的次数,忽略字段为null 的情况。即不统计字段为null 的记录。
count(
) 包括了所有的列,相当于行数,在统计结果的时候,不会忽略为NULL的值。
四。新增的表结构,添加xml文件,添加class类
添加model类
新增数据库,选择表,右键
在这里插入图片描述

在这里插入图片描述
地址选择源代码对应的存放地址。
五。spring-boot学习
参考http://c.biancheng.net/spring_boot/yaml.html
六。YAML 常用写法
YAML 支持以下三种数据结构:
对象:键值对的集合
数组:一组按次序排列的值
字面量:单个的、不可拆分的值
不能用TAB,可以用空格。
想要使用 YAML 作为属性配置文件(以 .yml 或 .yaml 结尾),需要将 SnakeYAML 库添加到 classpath 下,pom文件中也要引用

七。mybatis生成mapper,xml,model ,双击执行mybatis-generator:generate
有jar包。配置jeneratorConfig.xm;文件,包含jar包地址,数据库连接,生成的model xml mapper 文件。
mapper接口文件中的方法名与xml文件中要有对应。
mapper接口文件生成后,要在接口上方加入@Mapper和@Repository
@Repository 注解修饰哪个类,则表明这个类具有对对象进行CRUD(增删改查)的功能
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
八。StringUtils.isNotBlank例“ ”为false
isNotEmpty()方法会将空字符进行判断,有空字符也会判断为不空“ ”-true

==和equals()最大的区别是:一个是运算符,一个是方法
Maven插件之mybatis-generator(mybatis自动生成实体代码的插件)

Bean的含义是可重复使用的Java组件。所谓组件就是一个由可以自行进行内部管理的一个或几个类所组成、外界不了解其内部信息和运行方式的群体。使用它的对象只能通过接口来操作。写法:
必须有一个无参数构造
属性必须私有化
必须有对应的get/set方法

定义四个类(说明四种情况):
类Person1 自己不手动添加任何无参或有参数构造方法 (实例化对象时:编译通过)
类Person2 自己添加无参的构造方法 (实例化对象时:编译通过)
类Person3 有参数的构造方法 (实例化对象时:不通过)
类Person4 自己添加无参的构造方法,和有参数的构造方法 (实例化对象时:编译通过)
子类继承父类 extends
子类要调用父类的有参方法

group by是分组函数,partition by是分区函数,像sum()等是聚合函数

prefix:在trim标签内sql语句加上前缀
suffix:在trim标签内sql语句加上后缀。
suffixOverrides:指定去除多余的后缀内容,如:suffixOverrides=“,”,去除trim标签内sql语句多余的后缀","。
prefixOverrides:指定去除多余的前缀内容

是否为 null
是否为 “”
是否为空字符串(引号中间有空格) 如: " "。
制表符、换行符、换页符和回车
StringUtils的isBlank()方法可以一次性校验这三种情况,返回值都是true,否则为false

–查询临时表空间文件,file_id
select * from dba_temp_files
–修改临时表空间自增长
alter database tempfile 1 autoextend on next 500M maxsize 3G;

修改表空间自增
select * from dba_data_files
alter database datafile ‘E:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\OCS.DBF’ autoextend on

class="form-group"将同一个form组的内容放在一起
[]有两个用途,一是声明数组时使用,表示数组的长度,例如int a = new int[5],声明了长度为5的数组。
二是在正则表达式中,表示一个范围,例如:[a-z]表示取值在小写a到小写z之间
{}是一个语句体,他是一段程序的边界,
例如:(1)class A{} 这里的{}表示类实体,凡是在{}中的内容均是类的变量(属性)或方法(函zd数)
(2)public void a(){} 这里的{}表示方法体,凡是在{}中的内容均是方法的实体。
【注意】我们可以在程序的任何合法语句两侧加{},例如:{int a = 0;},这个等价于int a = 0;
也就入上所说,他是程序的一个“边界”,并没有实际的运行意义,只是把程序分隔成模块,是一种固定的写法。

#{}和KaTeX parse error: Expected 'EOF', got '#' at position 11: {}的区别是什么? #̲{}是预编译的处理,MyBat…{}是字符串替换 (2)mybatis在处理#{}时候,会将sql中的#{}替代成?号,调用PreparedStatement的set赋值 (3)mybatis在处理时,就是把{}时,就是把时,就是把{}替换成变量的值,通过 ${ } 接收参数,将参数的内容不加任何修饰拼接在 SQL 中,以字符串替换方式 ${ } 替换成变量的值,可能存在 SQL 注入的安全隐患。在用于传入数据库对象,例如传入表名和列名,还有排序时使用 order by 动态参数时可以使用 ${ } 。

Bootstrap table 是一款基于 Bootstrap 的 jQuery 表格插件,提供异步获取数据功能
column列属性 visible:可见的;invisible:不可见,但占空间;gone:不可见,也不占空间,控件从布局上消失了

基本类与包装类的转换,则是装包与拆包
  自动装包/拆包大大方便了基本类型数据和它们包装类地使用。
  自动装包:基本类型自动转为包装类.(int >> Integer)
  自动拆包:包装类自动转为基本类型.(Integer >> int)
int 是基本类型,直接存储数值
  Integer是对象类,new一个对象时用一个引用指向这个对象
  例如: Integer j = new Integr(5);  ----对象是在堆内存中,而j(引用变量)是在栈内存中
参考地址:https://www.cnblogs.com/vilionzhan/p/8552067.html
创建Integer对象的时候,如果数值在[-128,127]之间,便返回指向IntegerCache.cache中已经存在的对象的引用;否则创建一个新的Integer对象。
注意,Integer、Short、Byte、Character、Long这几个类的valueOf方法的实现是类似的
Double、Float的valueOf方法的实现是类似的。
在某个范围内的整型数值的个数是有限的,而浮点数却不是
例如:double i1=1.8 double i2=1.8 system.out.println(i1=i2) false

非 new 生成的 Integer 变量与 new Integer() 生成的变量比较,结果为 false,这是因为非 new 生成的 Integer 变量指向的是 java 常量池中的对象,而 new Integer() 生成的变量指向堆中新建的对象,两者在内存中的地址不同。所以输出为 false。

重写:是子类在继承父类的基础上进行的,

instanceof 是java的保留关键字。他的作用就是测试左边的对象是不是右边类的实例,是的话就返回true。类的实例包括本身的实例,以及所有直接或间接子类的实例
左边的对象实例不能是基础数据类型(也就是八种基本数据类型,String 可以)

编译后的文件.class文件。

SSH:
SSM:spring springMVC mybatis
类:类就是一类对象的统称。。
对象:对象就是这一类具体化的一个实例。一个类,可以产生无数的对象
实例:用类 类型创建对象的过程,称为类的实例化。类的方法需要通过类的实例化对象调用。
实例都是对象,而对象不全是实例。

@RestController=@Controller +@ResponseBody
@Controller 将当前修饰的类注入SpringBoot IOC容器,使得从该类所在的项目跑起来的过程中,这个类就被实例化。当然也有语义化的作用,即表示该类是充当Controller的作用
@ResponseBody 它的作用简短截说就是指该类中所有的API接口返回的数据,不管你对应方法返回Map或是其他Object,它会以Json字符串的形式返回给客户端,但如果返回的是String类型,则仍然是String。

封装:
继承:extends子类继承父类
多态:
方法重写:子类继承父类基础上,对其非private的方法体进行修改的操作称为方法的重写,参数和返回类型要一致。方法上要加@Override
方法重载:在同一个类中,方法的参数不同,方法名称一致。可以使用在构造器、方法中,例如: 类 returnVO下的returnVO方法。
String:String 字符串常量。String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变内容的字符串最好不要用 String ,因为每次生成对象都会对系统性能产生影响,特别当内存中无引用对象多了以后, JVM 的 GC 就会开始工作,那速度是一定会相当慢的。
StringBuffer:StringBuffer 字符串变量(线程安全)每次都会对 StringBuffer 对象本身进行操作,而不是生成新的对象,再改变对象引用。StringBuffer 上的主要操作是 append 和 insert 方法,可重载这些方法,以接受任意类型的数据。StringBuffer使用示例:
如果 z 引用一个当前内容是“start”的字符串缓冲区对象,则此方法调用 z.append(“le”) 会使字符串缓冲区包含“startle”,而 z.insert(4, “le”) 将更改字符串缓冲区,使之包含“starlet”。使用synchronized做了修饰。用synchronized修饰的方法都必须同步访问。单线程。
StringBuilder:StringBuilder 字符串变量(非线程安全)没有使用synchronized做了修饰。多线程访问。
ArrayList:
LinkedList:
HashMap:
Hashtable:
java socket通信:应用程序比如浏览器、电子邮件、文件传输服务器等产生的数据,会通过传输层协议进行传输,而应用程序是不会和传输层直接建立联系的,而是有一个能够连接应用层和传输层之间的套件,这个套件就是 Socket。

构造方法:(1)构造器的方法必须与类同名;
(2)构造器只能用四个权限修饰符修饰,不能用static等其它修饰符修饰;
(3)构造器没有返回值,不是返回值为空,不能加void;
(4)当我们不书写构造方法时,系统会默认提供一个无参的构造方法;
(5)当我们书写构造方法时,系统将不再提供构造方法;
(6)构造方法可重载

协议栈其实是位于操作系统中的一些协议的堆叠。通常某个协议的设计都是为了解决某些问题,比如 TCP 的设计就负责安全可靠的传输数据,UDP 设计就是报文小,传输效率高,ARP 的设计是能够通过 IP 地址查询物理(Mac)地址,ICMP 的设计目的是返回错误报文给主机,IP 设计的目的是为了实现大规模主机的互联互通。

oracle取随机数: SELECT dbms_random.value(0,20) from dual
取大小写字母和数字混合数:SELECT dbms_random.string(‘x’,30) from dual

NVL()函数的功能是实现空值的转换.例如NVL(string1,replace_with)中:
当第一个参数(string1)为空时,返回第二个参数(replace_with);
当第一个参数(string1)不为空时,则返回第一个参数(string1)。
NVL()函数的第一个参数和第二个参数类型必须相同,或者可以由隐式转换得到

使用decode判断字符串是否一样
DECODE(value,if1,then1,if2,then2,if3,then3,…,else)
sign()函数根据某个值是0、正数还是负数,分别返回0、1、-1
例如:decode(sign(9-8),1,90,80)
如果sign(9-8)等于1 返回90 ,如果返回不为1 返回80。

“int的取值范围为:-2^31 ---- 2^31-1 ,即:-2147483648 - 2147483647” 占用4字节
byte 1字节
short 2字节
char 2字节
long 8字节
float 4字节
double 8字节
boolean 1字节

正则表达式:是否为中文 String _regex = “[\u4e00-\u9fa5]”;

@RestController 是@controller和@ResponseBody 的结合
@Controller 将当前修饰的类注入SpringBoot IOC容器,使得从该类所在的项目跑起来的过程中,这个类就被实例化。
@ResponseBody 它的作用简短截说就是指该类中所有的API接口返回的数据,甭管你对应的方法返回Map或是其他Object,它会以Json字符串的形式返回给客户端

注意:页面调用类–方法不成功,检查类有没有加@RestController
注意:第一次查询,不想带出查询结果,赋予参数一个不可能实现的数据,注意xml文件里的where添加,

过滤器和拦截器:
过滤器:1.如果存在多个拦截器,@Order类上方的@Order决定执行的拦截器优先级,
值越小级别越高越先执行。2.是在请求进入容器后,但在进入servlet之前进行预处理,请求结束是在servlet处理完以后。过滤器Filter 的使用要依赖于Tomcat等容器,导致它只能在web程序中使用。3、是基于函数回调的。例@Order(1)或@Order(Ordered.HIGHEST_PRECEDENCE)
拦截器:1、拦截器默认的执行顺序,就是它的注册顺序,也可以通过Order手动设置控制,值越小越先执行。2、拦截器 Interceptor 是在请求进入servlet后,在进入Controller之前进行预处理的,Controller 中渲染了对应的视图之后请求结束。3、 是基于Java的反射机制(动态代理)实现的。
在这里插入图片描述过滤器Filter是在请求进入容器后,但在进入servlet之前进行预处理,请求结束是在servlet处理完以后。
拦截器 Interceptor 是在请求进入servlet后,在进入Controller之前进行预处理的,Controller 中渲染了对应的视图之后请求结束。

@RequestMapping 注解用于将特定 HTTP 请求方法映射到处理相应请求的控制器中的特定类或者方法。此注解可应用于两个级别。一是类级别,表示映射请求的URL地址;二是方法级别,表示映射请求的URL地址以及对应的HTTP请求
@RequestMapping属性1、用于指定请求的 URL, value和path的作用都一样 ; 2、method:method:用于指定请求的方式。method=RequestMethod.get; 3、params:用于指定限制请求参数的条件。它支持简单的表达式。要求请求参数的key和value必须配置的一模一样。例:params={‘username’:‘hh’}表示传入的参数只能是username,参数数据只能是‘hh’。以上四个属性只要出现 2 个或以上时,他们的关系是与的关系

一般非web层为jar包,web层为war包

http长连接,短连接
长连接:连接–传输数据–保持连接–传输数据–保持连接。。。面对传输层
短连接:连接–传输数据—关闭连接。是指三次握手建立连接之后,client向server发送消息,然后server回复client消息,一次读取。面对应用层,每次开始http短连接都会去调长连接来完成传输层的传递,主要用于socket通讯编程。

进入项目需要配置maven,不然项目没法导入你需要的jar包
点击 file=>setting,就会看到如下图,填上相应的内容即可
在这里插入图片描述

charAt() 方法用于返回指定索引处的字符。索引范围为从 0 到 length() - 1。

聚集索引:聚集索引一个表只能有一个。存储记录是物理上连续存在。
非聚集索引:一个表可以存在多个。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐