自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(96)
  • 资源 (29)
  • 问答 (2)
  • 收藏
  • 关注

原创 JVM从入门到精通(持续更新中)

JVM大神进阶篇

2022-09-06 10:12:13 204 1

原创 Java-JUC入门

***一、线程池提供了一个线程队列,队列中保存着所有等待状态的线程。避免了创建与销毁额外开销,提高了响应的速度。**二、线程池的体系结构负责线程的使用与调度的根接口*|--**ExecutorService子接口线程池的主要接口*|--ThreadPoolExecutor线程池的实现类*|--ScheduledExecutorService子接口负责线程的调度。...

2022-07-27 16:53:14 194

原创 enterprise architect绘画ER图

ER图的实体(entity)即数据模型中的数据对象,例如人、学生、音乐都可以作为一个数据对象,用长方体来表示,每个实体都有自己的实体成员(entity member)或者说实体对象(entity instance),例如学生实体里包括张三、李四等,实体成员(entity member)/实体实例(entity instance) 不需要出现在ER图中。ER图的属性(attribute)即数据对象所具有的属性,例如学生具有姓名、学号、年级等属性,用椭圆形表示,属性分为唯一属性( unique attrib

2021-12-15 14:53:03 3999 1

原创 什么是缓存雪崩、缓存击穿、缓存穿透,三者解决方案

1.缓存雪崩:redis缓存数据库中,同一时刻大量缓存key失效,造成,大量用户请求,直接访问数据库(DB),造成数据库无法支撑(如图1)缓存雪崩解决方案:1.设置缓存时间,不要再同一时间失效,随机初始化过期时间2.redis热点的key 分别在不同节点上3.不设置过期时间(比较暴力)4.写个定时任务刷新缓存,3小时过期,在key失效前,更新key5.使用布隆过滤器或布谷鸟过滤器(推荐)2.缓存穿透:恶意用户或黑客,使用数据库或redis数据库中没有字段进行查询,造成redis中..

2021-11-05 16:08:02 1444

原创 java最强图片弱化源码&&详细注释-----从此告别单身

package com.sirius.utils;import javax.imageio.ImageIO;import java.awt.*;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileOutputStream;/** * className:MyFontImage * Description:图片弱化 * * @author:yanmh */public class.

2020-06-06 17:00:23 302

原创 Java的基础类型Double三个基础常量

/** * className:HelloWorld * Description:Java的基础类型Double三个基础常量 * * @author:yanmh */public class HelloWorld { public static void main(String[] args) { System.out.println(":::::"); /** * A constant holding the positive in.

2020-05-14 09:37:26 1123

原创 Java_遍历 HashMap 集合的 5 种方法

package com.sirius.aggregate;import javax.xml.transform.Source;import java.util.HashMap;import java.util.Iterator;import java.util.Map;/*** className:hashMapErgodic* Descript...

2020-04-02 09:05:48 206

原创 高可用数据库主从复制延时的解决

MySQL主从复制的延时一直是业界困扰已久的问题。延时的出现会降低主从读写分离的价值,不利于数据实时性较高的业务使用MySQL。UDB是UCloud推出的云数据库服务,上线已达六年,运营了数以万计的UDB MySQL实例。除了提供高可用、高性能、便捷易用的产品特性,团队还平均每天帮助用户解决2-3起MySQL实例主从复制延时的问题。从大量实践中我们总结了主从复制延时的各种成因和解决方法,...

2019-05-12 17:30:07 335

原创 RabbitMQ和Kafka到底怎么选

前言前一篇文章《RabbitMQ和Kafka到底怎么选?》,我们在吞吐量方面比较了Kafka和RabbitMQ,知道了Kafka的吞吐量要高于RabbitMQ。本文从可靠性方面继续探讨两个队列的差异。RabbitMQ可靠性我们通过前文知道,RabbitMQ的队列分为master queue和mirror queue,mirror queue 在master queue宕机之...

2019-05-12 17:28:09 328

原创 06_Hibernate-----二级缓存

第6章 二级缓存Hibernate缓存Hibernate维护了两个级别的缓存,一个是线程级别的一级缓存,一个是进程级别的二级缓存。其中一级缓存是由Session对象维护的,二级缓存是由SessionFactory维护的。Web应用中的进程和线程在Web应用中Servlet容器也就是服务器的运行对应一个大的进程,而具体每一个请求的处理则是由线程执行的。所以线程级别的一级缓存只能...

2019-05-12 17:07:49 267

原创 05_Hibernate ------检索方式

第5章 检索方式概述Hibernate提供了以下几种检索对象的方式●OID检索方式:按照对象的OID来检索对象get/load●对象图导航检索方式:根据已经加载的对象导航到其他对象 order.getCustomer().getCustomerName();●HQL检索方式:使用面向对象的HQL(Hibernate Query Language)查询语言...

2019-05-12 17:05:55 154

原创 Mybatis----------逆向工程

1.概念①正向工程:Java类→数据库表 MyBatis不支持②逆向工程:数据库表→Java类2.操作步骤①创建一个专门的工程用于生成Java文件③创建generatorConfig.xml 说明信息参见:mybatis-generator-core-1.3.2的官方文档 ④简单版context标签设置:targetRuntime="MyBatis3Simple" default...

2019-05-12 17:03:08 363

原创 04_Hibernate----ORM映射:单向多对一

第04章 ORM映射:单向多对一映射关系总览 ①单类→单表②单向n对1③双向1对n④1对1基于外键⑤1对1基于主键⑥单向多对多⑦双向多对多概念 多对一 生活中有很多数据直接是多对一的关联关系,例如:多个Order对应一个Customer。 关联的方向 关联是有方向的。如果从Order对象中能够获取到Customer对象,而从Custo...

2019-05-12 17:01:47 184

原创 03_Hibernate------单表映射

第03章 单表映射单类→单表的映射①映射主键②映射日期类型③数据类型映射对照表Hibernate中主键生成方式 hilo ①由Hibernate根据high/low算法生成主键②hilo标识符生成器在生成标识符时,需要读取并修改HI_TABLE表中的NEXT_VALUE值③完全不依赖于任何数据库系统④OID必须为long、int或short类型,如果为by...

2019-05-12 16:59:48 227

原创 02_Hibernate-----Session

第02章 SessionSession概述 Session接口是Hibernate向应用程序提供的操纵数据库的最主要的接口,它提供了基本的保存、更新、删除和加载Java对象的方法。每一个Session对象都在内存中维护了一个缓存,位于缓存中的对象称为持久化对象,它和数据库表中的相关记录保持着一种对应关系。通过Session缓存,Hibernate最大限度的减少了应用程序访问数据库...

2019-05-12 16:57:11 157

原创 01_Hibernate-----概述

第01章 HibernateHibernate名片Hibernate是一款工作在持久化层的大型、开源、免费的ORM框架。持久化①狭义:将数据从“不可掉电”设备保存到“可以掉电”的设备上②广义:指与数据库相关的一切操作。[1]保存:对应标准SQL中的INSERT语句。[2]删除:对应标准SQL中的DELETE语句。[3]更新:对应标准SQL中的UPDATE语句。...

2019-05-12 16:54:56 163

原创 Mysql优化

MySQL优化.. 11. 我们可以且应该优化什么?.. 22. 优化硬件.. 23. 优化磁盘.. 24. 优化操作系统.. 35. 选择应用编程接口.. 36. 优化应用.. 37. 应该使用可移植的应用.. 48. 如果你需要更快的速度.. 49. 优化MySQLD. 410. 编译...

2019-05-12 16:46:48 145

原创 Mybatis---------整合Spring

1.Spring整合持久化层框架惯例①引入外部属性文件②配置数据源③将数据源装配给SqlSessionFactory④配置声明式事务2.Spring整合MyBatis时的特殊设置①专门jar包 mybatis-spring-1.2.2.jar http://www.mybatis.org/spring/zh/index.html 插件说明文档 ②org.mybatis.sp...

2019-05-11 15:40:35 256

原创 Mybatis-----查询缓存

1.MyBatis默认提供了SqlSession级别的一级缓存。同样的数据查询得到后会被缓存起来,下次再次访问时不必重新查询数据库2.一级缓存测试①有效的一级缓存测试②失败的一级缓存测试 ※面试相关[1]SQL语句或查询条件不同[2]分属不同SqlSession对象[3]查询前执行clearCache()[4]提交事务3.配置MyBatis自带二级缓存①entity必须实现Ser...

2019-05-11 15:39:23 161

原创 Mybatis-----关联关系

1.对一①使用association和javaType配合起来,查询Order对象的同时查询关联的Customer对象②使用association和select配合起来,分两条SQL语句先查询Order再查询Customer需要在CustomerMapper中创建一个根据cust_id查询Customer对象的专门方法2.延迟加载①效果说明:查询Order时先不查询关联的Customer...

2019-05-11 15:36:42 155

原创 Mybatis----动态Sql

1.概述One of the most powerful features of MyBatis has always been its Dynamic SQL capabilities. If you have any experience with JDBC or any similar framework, you understand how painful it is to condi...

2019-05-11 15:35:23 153

原创 Mybatis--------mapper配置文件介绍

1.获取自增主键①MySQL:以自增的方式生成主键<insert id="saveCustomer" parameterType="Customer" useGeneratedKeys="true" keyProperty="custId"> INSERT INTO tbl_cust (cust_name, cust_age) VALUES (#{custName}, #{c...

2019-05-11 15:30:08 228

原创 Mybatis----config配置文件介绍

1.简要说明The MyBatis configuration contains settings and properties that have a dramatic effect on how MyBatis behaves.MyBatis的XML配置文件包含了影响MyBatis行为甚深的设置和属性信息。2.properties<properties resource="jdb...

2019-05-11 15:25:53 275

原创 Mybatis-----实验小结

1 第一个入门case的小结① XXXMapper.xml文件中,namespace必须是接口全路径② XXXMapper.xml中的id必须是接口里面的方法名 ,两者一致③ XXXMapper.xml中的parameterType类型必须和对应方法的形参一致④ XXXMapper.xml中的resultType类型必须和对应方法的返回值类型一致⑤ 每个线程都应该有它自己的SqlSess...

2019-05-11 15:20:55 3344

原创 Mybatis-------环境搭建

1.导入jar包 asm-3.3.1.jar c3p0-0.9.1.2.jar cglib-2.2.2.jar commons-logging-1.1.1.jar ehcache-core-2.6.8.jar javassist-3.17.1-GA.jar log4j-1.2.17.jar log4j-api-2.0.2.jar log4j-core-2.0.2.jar ...

2019-05-11 15:19:32 323

原创 MyBatis-----------概述

1.Why? 为什么要使用MyBatis? 已经有Hibernate了,为什么还要使用MyBatis? MyBatis到底有什么优势呢? 2.What? ①MyBatis前身:iBatis——"Internet"和"abatis"的组合,是一个基于Java的持久化层框架。 ②iBatis最早是由Apache负责维护的,后来迁移到了Google Co...

2019-05-11 15:14:16 159

原创 SpringMVC------------RESTRUL_CRUD

RESTRUL_CRUDRESTRUL_CRUD_需求显示所有员工信息URI:emps 请求方式:GET 显示效果添加员工信息显示添加页面: URI:emp 请求方式:GET 显示效果添加员工信息: URI:emp 请求方式:POST 显示效果:完成添加,重定向到 list 页面。删除操作URL:emp/{id} 请求方式:DELETE 删...

2019-05-11 15:04:50 167

原创 c3p0连接池配置

<!-- c3p0连接池配置 --><bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <property name="user" value="${username}"/> <property name="password" value="${pass...

2019-05-03 16:47:53 343

原创 SpringMVC--------拦截器

拦截器自定义拦截器概述Spring MVC也可以使用拦截器对请求进行拦截处理,用户可以自定义拦截器来实现特定的功能,自定义的拦截器必须实现HandlerInterceptor接口 preHandle():这个方法在业务处理器处理请求之前被调用,在该方法中对用户请求 request 进行处理。如果程序员决定该拦截器对请求进行拦截处理后还要调用其他的拦截器,或者是业务处理器去进行处理,则...

2019-05-03 16:45:00 170

原创 SpringMVC运行流程图解

SpringMVC运行流程图解流程图 Spring工作流程描述用户向服务器发送请求,请求被SpringMVC 前端控制器 DispatcherServlet捕获; DispatcherServlet对请求URL进行解析,得到请求资源标识符(URI):判断请求URI对应的映射 不存在: 再判断是否配置了mvc:default-servlet-handler: ...

2019-05-03 16:40:42 342

原创 Spring整合SpringMVC_提出问题

Spring整合SpringMVC_提出问题Spring 与SpringMVC的整合问题:需要进行 Spring 整合 SpringMVC 吗 ? 还是否需要再加入 Spring 的 IOC 容器 ? 是否需要在web.xml 文件中配置启动 Spring IOC 容器的 ContextLoaderListener ?需要: 通常情况下, 类似于数据源, 事务, 整合其他框架都是...

2019-05-03 16:39:09 127

原创 SpringMVC----- @ModelAttribute注解

@ModelAttribute注解@ModelAttribute注解之使用场景 @ModelAttribute注解之示例代码在方法定义上使用 @ModelAttribute 注解:Spring MVC 在调用目标处理方法前,会先逐个调用在方法级上标注了 @ModelAttribute 的方法。 在方法的入参前使用 @ModelAttribute 注解:可以从隐含对象中获取...

2019-05-03 16:18:02 313

原创 SpringMVC-----------响应数据传出

响应数据传出SpringMVC 输出模型数据概述提供了以下几种途径输出模型数据:ModelAndView: 处理方法返回值类型为 ModelAndView 时, 方法体即可通过该对象添加模型数据 Map 及 Model: 入参为 org.springframework.ui.Model、org.springframework.ui.ModelMap 或 java.uti.Map 时,...

2019-05-03 16:16:12 255

原创 SpringMVC--------请求数据传入

请求数据传入请求处理方法签名Spring MVC 通过分析处理方法的签名,HTTP请求信息绑定到处理方法的相应人参中。 Spring MVC 对控制器处理方法签名的限制是很宽松的,几乎可以按喜欢的任何方式对方法进行签名。 必要时可以对方法及方法入参标注相应的注解( @PathVariable 、@RequestParam、@RequestHeader 等)、 Spring MVC 框架...

2019-05-03 16:10:48 172

原创 SpringMVC-------------HiddenHttpMethodFilter (REST)

HiddenHttpMethodFilter (REST) REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。 它是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。 目前在三种主流的Web服务实现方案中,...

2019-05-03 16:09:27 306

原创 SpringMVC 概述

SpringMVC框架的核心内容 1.SpringMVC 概述 2.SpringMVC 的 HelloWorld 3.使用 @RequestMapping 映射请求 4.映射请求参数 & 请求头 5.处理模型数据 6.视图和视图解析器 7.RESTful CRUD 8.SpringMVC 表单标签 &处理静态资源 ...

2019-05-03 16:07:44 242

原创 SpringMVC ----@RequestMapping映射

@RequestMapping 映射请求注解 SpringMVC使用@RequestMapping注解为控制器指定可以处理哪些 URL 请求 在控制器的类定义及方法定义处都可标注 @RequestMapping 标记在类上:提供初步的请求映射信息。相对于 WEB 应用的根目录 标记在方法上:提供进一步的细分映射信息。相对于标记在类上的 URL。 若类上未标注 @R...

2019-05-03 16:06:37 319

转载 Spring----------- 声明式事务

事务概述●在JavaEE企业级开发的应用领域,为了保证数据的完整性和一致性,必须引入数据库事务的概念,所以事务管理是企业级应用程序开发中必不可少的技术。●事务就是一组由于逻辑上紧密关联而合并成一个整体(工作单元)的多个数据库操作,这些操作要么都执行,要么都不执行。●事务的四个关键属性(ACID)○原子性(atomicity):“原子”的本意是“不可再分”,事务的原子性表现为一个...

2019-05-02 20:25:24 136

原创 Spring-----JdbcTemplate

概述为了使JDBC更加易于使用,Spring在JDBC API上定义了一个抽象层,以此建立一个JDBC存取框架。作为Spring JDBC框架的核心,JDBC模板的设计目的是为不同类型的JDBC操作提供模板方法,通过这种方式,可以在尽可能保留灵活性的情况下,将数据库存取的工作量降到最低。可以将Spring的JdbcTemplate看作是一个小型的轻量级持久化层框架,和我们之前使用过...

2019-05-02 20:23:39 622

原创 Spring-----------XML方式配置切面

概述除了使用AspectJ注解声明切面,Spring也支持在bean配置文件中声明切面。这种声明是通过aop名称空间中的XML元素完成的。正常情况下,基于注解的声明要优先于基于XML的声明。通过AspectJ注解,切面可以与AspectJ兼容,而基于XML的配置则是Spring专有的。由于AspectJ得到越来越多的 AOP框架支持,所以以注解风格编写的切面将会有更多重用的机会。配...

2019-05-02 20:22:01 423

Jvm1.8_GC.mmap

GC:Gabage Collection,指JVM堆内存区域的垃圾回收 Minor GC:年轻代垃圾回收,所有的Majar GC都会触发进程暂停,只是这个实际很短 Major GC:也叫Full GC,年老代垃圾回收 年轻代和年老代的GC策略是不一样的,年轻代一般采用的是复制算法。 Minor GC和Major GC的发生时机 Minor GC发生Eden区域被占满时。第一次触发gc时,Eden存活的对象被复制到Survivor Space的To区。每次gc完成后,Eden和From区的数据被清空,用于存放新的数据,且Survivor Space的2个区域地位对调,原来的From区成为To区,原来的To区变成From区,From区所有对象年龄+1。再次发生gc时,From区超过年龄的对象会被移入年老代,其他存活对象和Eden中的存活对象被复制到To区,Eden无法完成移动的对象被移入年老区。 Major GC发生在Old Generation区域被占满时,Major GC与Minor GC算法不同,相对要慢很多。

2020-04-02

Java OOP.mmap

目录: 一、Java 概述 1. Java体系 2. 常用的DOS命令 3. JDK、JRE、跨平台、Java平台 4. Java代码的编写执行过程 5. 注释 6. 关键字、标识符 7. Java中的数据类型 8. Java中的常量 二、变量和运算符 1. 变量和计算机存储单元 2. 数据类型和常量 3. 数据类型转换 4. 运算符 和 优先级 三、引用数据类型、流程控制语句 和 数组 1. 引用数据类型 2. 流程控制语句 3. 数组 四、方法 1. 引入 2. 语法格式 3. 方法调用 4. 注意事项 5. 方法重载 6. 可变参数列表

2020-04-02

第03章 AOP前奏

Spring概述 ①Spring是一个开源框架 ②Spring为简化企业级开发而生,使用Spring,JavaBean就可以实现很多以前要靠EJB才能实现的功能。同样的功能,在EJB中要通过繁琐的配置和复杂的代码才能够实现,而在Spring中却非常的优雅和简洁。

2019-05-02

第02章 IOC和bean的配置

Spring概述 ①Spring是一个开源框架 ②Spring为简化企业级开发而生,使用Spring,JavaBean就可以实现很多以前要靠EJB才能实现的功能。同样的功能,在EJB中要通过繁琐的配置和复杂的代码才能够实现,而在Spring中却非常的优雅和简洁。

2019-05-02

第01章 Spring概述

Spring概述 ①Spring是一个开源框架 ②Spring为简化企业级开发而生,使用Spring,JavaBean就可以实现很多以前要靠EJB才能实现的功能。同样的功能,在EJB中要通过繁琐的配置和复杂的代码才能够实现,而在Spring中却非常的优雅和简洁。

2019-05-02

MySQL的从入门到精通

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。 MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。 由于其社区版的性能卓越,搭配 PHP 和 Apache 可组成良好的开发环境。

2019-04-26

数据库原理及其应用教程

数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、截取、更新、删除等操作。

2019-04-26

计算机组织与体系结构(性能设计)第六版

主要内容包括:数字逻辑和数字系数、机器层次的数据表示方法、汇编层次的机器组织和结构、存储器的组成和结构、接口和通信、功能组织、多处理器和可供选择的其他结构、性能增强、网络结构和分布式计算机系统等。本书把计算机科学技术与实际问题相结合,用大量精致图片展示计算机内部结构,结构清晰,内容翔实,还包括大量补充材料和习题,方便教学。

2019-04-26

编译器设计(第2版)

编译原理是计算机专业的一门重要专业课,旨在介绍编译程序构造的一般原理和基本方法。内容包括语言和文法、词法分析、语法分析、语法制导翻译、中间代码生成、存储管理、代码优化和目标代码生成。 编译原理是计算机专业设置的一门重要的专业课程。

2019-04-26

网络爬虫技术的研究

爬虫技术 可视化爬虫抓取流程,可爬取任意网页数据,API导出,秒级同步.爬虫技术 一键自动云抓取,支持IP切换,验证码识别,不怕防采集,80万+用户的选择

2019-04-26

Graph-structure-in-the-Web_2000_Computer-Networks

搜索引擎(Search Engine)是指根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进行组织和处理后,为用户提供检索服务,将用户检索相关的信息展示给用户的系统。

2019-04-26

Google Hacks探索和利用全球信息资源的技巧和工

搜索引擎(Search Engine)是指根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进行组织和处理后,为用户提供检索服务,将用户检索相关的信息展示给用户的系统。

2019-04-26

Search_Engine_book搜索引擎

搜索引擎(Search Engine)是指根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进行组织和处理后,为用户提供检索服务,将用户检索相关的信息展示给用户的系统。

2019-04-26

Linux内核完全注释(内核版本0.11)及源码

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。

2019-04-26

Linux基础知识与系统管理课件

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。

2019-04-26

运算符优先级表

C 语言教程 C 语言是一种通用的、面向过程式的计算机程序设计语言。1972 年,为了移植与开发 UNIX 操作系统,丹尼斯·里奇在贝尔电话实验室设计开发了 C

2019-04-26

迷你书-《分布式系统:概念与设计》

分布式系统(distributed system)是建立在网络之上的软件系统。正是因为软件的特性,所以分布式系统具有高度的内聚性和透明性。因此,网络和分布式系统之间的区别更多的在于高层软件(特别是操作系统),而不是硬件。

2019-04-26

Lua 入门教程

Lua 教程 lua Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。 Lua 是巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de Janeiro)里的一个研究小组于 1993 年开发的,该小组成员有:Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de Figueiredo。 设计目的 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。 Lua 特性 轻量级: 它用标准C语言编写并以源代码形式开放,编译后仅仅一百余K,可以很方便的嵌入别的程序里。 可扩展: Lua提供了非常易于使用的扩展接口和机制:由宿主语言(通常是C或C++)提供这些功能,Lua可以使用它们,就像是本来就内置的功能一样。 其它特性: 支持面向过程(procedure-oriented)编程和函数式编程(functional programming); 自动内存管理;只提供了一种通用类型的表(table),用它可以实现数组,哈希表,集合,对象; 语言内置模式匹配;闭包(closure);函数也可以看做一个值;提供多线程(协同进程,并非操作系统所支持的线程)支持; 通过闭包和table可以很方便地支持面向对象编程所需要的一些关键机制,比如数据抽象,虚函数,继承和重载等。 Lua 应用场景 游戏开发 独立应用脚本 Web 应用脚本 扩展和数据库插件如:MySQL Proxy 和 MySQL WorkBench 安全系统,如入侵检测系统

2019-04-26

关于爬虫如何做js逆向的思路

阿里云资料ppt讲解介绍 来越的的公司注重数据,如何断绝他人独立网站数据是如今互联网公司的一个主题。js加密作为爬虫一个绕不过的关卡,如何更加有效率的破解加密参数,相信这节课会给你一个大概的思路。

2019-04-26

JAVA服务器编程

ava语言是简单的: Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用。另一方面,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java语言不使用指针,而是引用。并提供了自动的废料收集,使得程序员不必为内存管理而担忧。 Java语言是面向对象的: Java语言提供类、接口和继承等面向对象的特性,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。 Java语言是分布式的: Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。 Java语言是健壮的: Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮性。 Java语言是安全的: Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。 Java语言是体系结构中立的: Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。 Java语言是可移植的: 这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的。 Java语言是解释型的: 如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。 Java是高性能的: 与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C++。 Java语言是多线程的: 在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为Thread(Runnable)的构造子类将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。 Java语言是动态的: Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。

2019-04-25

JSX语法及特点介绍_v4

JSX语法简介 React的核心机制之一就是可以在内存中创建虚拟的DOM元素。React利用虚拟DOM来减少对实际DOM的操作从而提升性能。 JSX简介 JSX就是Javascript和XML结合的一种格式。React发明了JSX,利用HTML语法来创建虚拟DOM。当遇到<,JSX就当HTML解析,遇到{就当JavaScript解析。

2019-04-25

PMU-Montevideo-2013-Optimizing-MySQL-Configuration

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。 MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。 由于其社区版的性能卓越,搭配 PHP 和 Apache 可组成良好的开发环境。

2019-04-25

AngularJS实战第一章

AngularJS诞生于2009年,由Misko Hevery 等人创建,后为Google所收购。是一款优秀的前端JS框架,已经被用于Google的多款产品当中。AngularJS有着诸多特性,最为核心的是:MVC、模块化、自动化双向数据绑定、语义化标签、依赖注入等等。

2019-04-25

angular常用插件

AngularJS诞生于2009年,由Misko Hevery 等人创建,后为Google所收购。是一款优秀的前端JS框架,已经被用于Google的多款产品当中。AngularJS有着诸多特性,最为核心的是:MVC、模块化、自动化双向数据绑定、语义化标签、依赖注入等等。

2019-04-25

Mysql数据库优化详细大全

MYSQL优化 1 1. 我们可以且应该优化什么? 2 2. 优化硬件 2 3. 优化磁盘 2 4. 优化操作系统 3 5. 选择应用编程接口 3 6. 优化应用 3 7. 应该使用可移植的应用 4 8. 如果你需要更快的速度 4 9. 优化MYSQLD 4 10. 编译和安装MYSQL 5 11. 维护 5 12. 优化SQL 5 13. 不同SQL服务器的速度差别(以秒计) 6 14. 重要的MYSQL启动选项 7 15. 优化表 7 16. MYSQL如何次存储数据 7 17. MYSQL表类型 8 18. MYSQL行类型(专指IASM/MYIASM表) 8 19. MYSQL缓存 8 20. MYSQL表高速缓存工作原理 9 21. MYSQL扩展/优化-提供更快的速度 9 22. MYSQL何时使用索引 10 23. MYSQL何时不使用索引 10 24. 学会使用EXPLAIN 10 25. 学会使用SHOW PROCESSLIST 11 26. 如何知晓MYSQL解决一条查询 11 27. MYSQL非常不错 12 28. MYSQL应避免的事情 12 29. MYSQL各种锁定 12 30. 给MYSQL更多信息以更好地解决问题的技巧 12 31. 事务的例子 13 32. 使用REPLACE的例子 13 33. 一般技巧 14 34. 使用MYSQL 3.23的好处 14 35. 正在积极开发的重要功能 14

2019-04-25

Git基础用法

Git基础用法 1 一、 Git是什么 1 二、 SVN与Git的最主要的区别 1 三、 安装Git 2 1、 Windows下安装git 2 2、 mac下安装git 2 3、 linux下安装git 3 4、 安装成功后设置 3 四、 Git基础操作 4 1、 创建版本库 4 2、 把文件添加到版本库中 4 3、 版本回退 6 4、 工作区和暂存区 8 5、 撤销修改及删除文件 9 6、 远程仓库 12 1. 创建git远程仓库(创建git远程服务器) 12 2. 添加远程库 14 3. 从远程库克隆 15 4、 直接关联远程库 16 7、 分支管理 17 1、 创建与合并分支 17 2、 解决冲突 21 3、 分支管理策略 24 4、Bug处理 26 5、 多人协作 29 五、 git基础命令 33

2019-04-25

Intellij IDEA中建立SSH应用步骤

IDEA,全称IntelliJ IDEA,是Java语言的集成开发环境,IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、 创新的GUI设计等方面的功能可以说是超常的。

2019-04-25

IDEA 常用快捷键

1.执行(run) alt+r 2.提示补全 (Class Name Completion) alt+/ 3.单选注释 ctrl + / 4.多行注释 ctrl + shift + / 5.向下复制一行 (Duplicate Lines) ctrl+alt+down

2019-04-25

idea的安装指南

IDEA,全称IntelliJ IDEA,是Java语言的集成开发环境,IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、 创新的GUI设计等方面的功能可以说是超常的。

2019-04-25

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除