自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 从零到壹搭建大规模应用技术架构演进-蛙课网

从零搭建 >刚开始的时候,也就是创业初期或网站/产品初期,业务功能比较少,访问量也不大,通过就是采用经典的MVC架构,采用单体应用的模式进行开发,然后发布到Tomcat容器中运行,这时候我们的文件,数据库,应用都在一个服务器上,没有缓存,不追求性能优化与网站架构。服务分离 >随着业务的发展,系统功能的增多,访问用户量的增加,显然采用单台服务器已无法满足系统的负载,这时候,我们就需要提前采取相应的措施,应对访问流量的增加。由于我们是单体架构,优化架构在短时间内是不现实的,增加机器是一个不错

2020-08-14 08:50:22 264

原创 2020年六大javaweb开发主流技术-蛙课网

作为历史最为悠久的编程语言——java,历经数十年依然盘踞在编程榜最前面的位置,这与它的技术和应用范围是分不开的,同时呢,javaweb开发主流技术更是java开发者时时刻刻关注的问题,接下来我们一起分析一下2020年互联网行业在Javaweb开发中主流技术有哪些。第一项:java基础知识Java基础知识是我们学习javaweb必备知识,只有基础知识学习好了,我们才能更好的学习javaweb,那么java基础知识包括哪些方面呢,比如,java面向对象的三大特征——封装、继承和多态,java基础语法、数组

2020-08-28 11:25:48 856

原创 谈谈你对javaweb拦截器——interceptor的理解-蛙课网

在javaweb开发中,拦截器是一个必不可少的功能,那么拦截器是什么呢,他怎么使用呢,接下来我们一起看一下javaweb拦截器——interceptor。在Struts2框架中,拦截器interceptor是核心功能之一,Struts2是一个基于MVC设计模式的开源框架,在Struts2框架中,拦截器的主要工作内容是完成请求参数的解析,将页面表单参数赋给值栈中相应的属性,执行功能检验、程序异常调试等。也就是拦截用户的请求,对于拦截下来的用户请求进行相应的处理,比如进行权限验证,也可以用来判断用户是否登录。

2020-08-28 11:18:28 604

原创 一次搞定continue,break和return-蛙课网

很多初学者学了一遍continue,break和return 这三个关键字,还是一知半解,在此我想给大家演示一个比较经典的案例,帮助各位小伙伴更加透彻的理解它们的用法。continuecontinue,结束当前当次循环,进行下一次内循环for (int i = 0; i < 4; i++ ){System.out.println(“i==>”+i);for (int j = 0; j < 3; j++ ){if( j==1){continue;}System....

2020-08-27 17:01:03 80

原创 浅谈Tomcat服务器优化方法-蛙课网

对于JavaWeb开发人员而言,Tomcat已成为默认的web服务器,但是在生产环境下使用Tomcat部署应用,我们如果采用Tomcat默认的配置,尤其是内存和线程的配置,其配置都很低,容易成为性能瓶颈,所以我们需要对Tomcat服务器进行优化,提升其运行性能,下面我们一起来看看Tomcat如何优化?一、Tomcat内存优化,启动时告诉JVM需要多大内存(调优内存是最直接的方式)Windows 下的 catalina.batLinux 下的 catalina.sh在该文件中配置jvm的内存空间,如:

2020-08-27 16:52:54 91

原创 学完javase以后,能做大项目开发吗?-蛙课网

如今,有许多人在学习java,但是他们的目的是一样的,就是为了今后找一份好工作,尽快融入到公司的发展中。那么就会有一些人在问,我刚学完javase,是不是可以开始写项目了,这样今后进入公司才能更快更好的上手去做。接下来我们一起聊一聊javase学完能做大的项目开发的问题。针对上面的问题,我的回答是不能做大项目,但是可以运用自己所学的内容,尝试做一些小项目,比如一个简单的OA管理项目,里面出现一些简单的增删改查就可以,后期的话,也可以多加入一些功能,比如:上传图片、把查询出的内容导出到Excel表中、模糊查

2020-08-27 08:46:47 2115

原创 事务隔离级别-蛙课网

事务隔离级别:@Transactional(isolation = Isolation.READ_UNCOMMITTED):读取未提交数据(会出现脏读, 不可重复读) 基本不使用@Transactional(isolation = Isolation.READ_COMMITTED):读取已提交数据(会出现不可重复读和幻读)@Transactional(isolation = Isolation.REPEATABLE_READ):可重复读(会出现幻读)@Transactional(isolation

2020-08-25 17:52:19 97

原创 Java script面试题总结(附答案)-蛙课网

ava是计算机语言中应用最为广泛的编程语言,java有着很好的发展前景,所以从事java的人是越来越多。今天为广大java程序员提供一份常考的java script面试题总结,并附有参考答案,以供有面试需要的java程序员学习使用。1、什么是JavaScript?答:JavaScript是客户端和服务器端脚本语言,可以插入到HTML页面中,并且是目前较热门的Web开发语言。同时,JavaScript也是面向对象编程语言。2、列举Java和JavaScript之间的区别?答:Java是一门十分完整、成

2020-08-25 17:50:03 711 1

原创 如何成为中高级java工程师-蛙课网

有一句俗话说的好:人往高处走,水往低处流。零基础的java爱好者想学好java编程,成为一名java初级程序员,java初级程序员已经得到了,又想成为一名java中级程序员,甚至是java高级工程师乃至项目经理。这样的想法是很正常的。接下来我们蛙课网给大家介绍一下如何成为一名中高级java工程师。 想要成为一名中高级java工程师,需要了解一下几点:1、java一定要好好学习,而且要深入学习研究java,比如JDBC、IO包、Util包、线程、并发等等,也可以对java的包了解一下,方便今后自己在做

2020-08-24 17:54:46 195

原创 Java工程师月薪过万应具备什么技能-蛙课网

或许大家都知道java工程师是一个拥有高薪资水平的职业,但是不知道的肯定是那些年薪百万的java工程师拥有什么样的技术水平。每个java程序员都在追求更高水平的薪资的道路上,并为此付出种种努力。“不求年薪百万,只求月薪过万”的众多初级java程序员们,也在不断努力着。那么java工程师月薪过万应具备什么技能呢,或者java工程师想要达到一万以上的月薪得拥有什么样的技术水平呢。今天,让我们来探讨一下这个问题。首先是基础方面。写代码的能力算是基础方面的内容了,包括Java语言的各个方面、对开发的理解和对内存使

2020-08-24 17:50:03 744

原创 javaweb项目的大致开发流程是什么呢?-蛙课网

不管我们做什么事情,都需要有一个计划或者流程,javaweb项目开发同样需要开发流程和规则,这样有利于统一项目的整体风格,还有代码的维护和扩展。因为javaweb项目的开发具有分散性、独立性和整合的交互性,所以制定一个流行和规则是很重要的,接下来我们一起看一下javaweb项目开发流程是什么?第一、调研需求,公司在接收了一个项目之后,首先需要做的事情就是,了解客户那边的需求,需要做哪方面的项目,有多少人使用项目,他们想做的功能是什么,大到模块,小到具体功能,他们预算是多少等等,我们都需要仔细的去了解清楚,

2020-08-21 14:37:46 452

原创 必须掌握的30种SQL语句优化-蛙课网

1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。3.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select id from t

2020-08-21 14:33:40 77

原创 什么是爬虫,常见的java爬虫框架有哪些?-蛙课网

随着互联网的发展,编程程序语言也开始被越来越多的人所掌握,与此同时,java语言是使用范围最广的编程语言。今天我们一起了解一下什么是爬虫,java爬虫框架有哪些。网络爬虫(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。网络爬虫按照系统结构和实现技术,大致可以分为以下四种类型:通用网络爬虫、聚焦网络爬虫、增量式网络爬虫、深层网络爬虫。实际的网络爬虫系统通常是几种

2020-08-20 18:01:19 2174

原创 浅谈MySQL中SQL优化的常用方法-蛙课网

1、对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2、应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。3、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select id from t

2020-08-20 17:54:11 176

原创 一分钟完成javaweb环境搭建与配置-蛙课网

许多刚入门的java小伙伴在javaweb环境搭建与配置过程中遗漏步骤,导致javaweb项目无法运行,同样,也不知道从哪开始找,更不知道自己忘了安装或者配置什么。接下来我们一起看一下从jdk安装到javaweb项目运行的详细步骤。首先我来介绍一下javaweb项目的环境搭建与配置的大致步骤,可以分为六步,分别是jdk安装与环境变量配置、Tomcat安装、Mysql数据库的安装与配置、Eclipse安装与配置、建立javaweb项目、运行javaweb项目。第一步:jdk安装与环境变量配置,首先需要下载

2020-08-19 18:01:42 178

原创 java和python的区别-蛙课网

作为世界上使用范围最广的编程语言,Java难免总是被拿来跟Python比较,认为Python不管怎么发展,对于互联网行业来说,Java还是占领主导地位,那么Java和Pythonr的区别是什么呢,在未来互联网行业发展中,Java和Python语言哪个才是主流呢。python是一种简单易学、可移植性、解释性、开源、高级语言、可扩展性、交互式、面向对象、丰富的库、规范的代码的脚本语言。Python在设计上坚持了清晰划一的风格,这使得Python成为一门易读、易维护,并且被大量用户所欢迎的、用途广泛的语言。J

2020-08-19 17:59:01 258

原创 讨论JMS与ActiveMQ的内部逻辑-蛙课网

两个系统之间或者分布式系统之间的信息通信,是我们开发中比较常见的场景,比如系统A要把信息发送给系统B,这个问题我们应该如何去处理?1999年,原来的SUN公司领衔提出了一种面向消息的中间件服务–JMS规范(标准);JMS即Java消息服务(Java Message Service的简称),是Java EE 的标准/规范之一。这种规范(标准)指出:消息的发送应该是异步的、非阻塞的。也就是说消息的发送者发送完消息后就直接返回了,不需要等待接收者接收到消息后才能返回,发送者和接收者可以说是互不影响。所以

2020-08-18 18:01:41 88

原创 java数据库编程学习攻略-蛙课网

随着互联网行业的迅速发展,不仅越来越多的编程语言出现了,数据库的种类也新增了不少,比如我们大家熟悉的Mysql、Oracle、Redis、SQL Server、Elasticsearch等,但是常用的是Oracle和Mysql。相信对于大家来说,数据库并不陌生,而且java数据库也是大学专业中必学的一个知识点。接下来我们看一下java数据库编程学习攻略的简单介绍。首先我们学java数据库编程之前先安装工具,需要用到的工具有:Mysql安装包(Mysql Installer)、Oracle安装包(Oracl

2020-08-18 17:57:09 135

原创 MyBatis开发框架的四大核心-蛙课网

MyBatis 四大核心主要包括(SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession、Mapper)。MyBatis 作为互联网数据库映射工具界的“上古神器”,训有四大“神兽”,谓之:SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession、Mapper。可以说,了解了这四大核心,便可知 MyBatis 八 九。SqlSessionFactoryBuilder从命名上可以看出,这个是一个 Buil

2020-08-17 18:02:12 139

原创 DOM渲染的详细过程-蛙课网

DOM的渲染指的是对于浏览器中展现给用户的DOM文档的生成的过程。在Chrome中,这个渲染好的DOM,就是在开发者工具中元素这个tab中,递归的展开之后得到的整个文档。DOM渲染的演化过程,大致可以分为可以分为三个阶段:纯后端渲染纯前端渲染服务端的js渲染结合前端渲染下面我们分阶段来做一下说明。第一个阶段是纯后端渲染。采用这样的渲染方式,就是每一个页面中,在Chrome中展开得到的DOM,和服务器返回的DOM是基本一致的(可以通过查看网页源代码来得到服务器返回的DOM)。当然,这里是“基本”一

2020-08-17 17:29:56 188

原创 Java注解仅靠一文掌握-蛙课网

什么是注解?用一个词就可以描述注解,那就是元数据,即一种描述数据的数据。所以,可以说注解就是源代码的元数据。比如,下面这段代码:@Overridepublic String toString() {return “This is String Representation of current object.”;}上面的代码中,我重写了toString()方法并使用了@Override注解。但是,即使我不使用@Override注解标记代码,程序也能够正常执行。那么,该注解表示什么?这么写有什么好

2020-08-14 15:29:04 80

原创 为互联网应用文件存储而生之FastDFS-蛙课网

分布式文件系统 (Distributed File System) 是一个用来管理文件的软件或软件服务器,但这个软件所管理的文件通常不是在一个服务器节点上,而是在多个服务器节点上,这些服务器节点通过网络相连构成一个庞大的文件存储服务器集群,这些服务器都用于存储文件资源,通过分布式文件系统来管理这些服务器上的文件;常见的分布式文件系统有:FastDFS、GFS、HDFS、Lustre 、Ceph 、GridFS 、mogileFS、TFS等;FastDFS是一个开源的轻量级分布式文件系统,为互联网应用量身

2020-08-14 15:26:15 105

原创 最火热的极速开发框架Spring Boot-蛙课网

Spring Boot是Spring家族中的一个全新的框架,它简化了Spring应用程序的创建和开发过程,也可以说Spring Boot能简化我们之前采用Spring mvc + Spring + MyBatis框架进行开发的过程;在以前我们采用Spring mvc + Spring + MyBatis框架进行开发的时候,构建和整合三大框架,我们需要做很多工作,配置web.xml,配置Spring,配置MyBatis,使其整合在一起等,而Spring Boot框架进行开发过程进行全面颠覆,抛弃了繁琐的xm

2020-08-14 08:57:27 176

原创 谈谈接口中的几种限流实现-蛙课网

为什么需要限流按照服务的调用方,可以分为以下几种类型服务1、与用户打交道的服务比如web服务、对外API,这种类型的服务有以下几种可能导致机器被拖垮:用户增长过快(这是好事)因为某个热点事件(微博热搜)竞争对象爬虫恶意的刷单这些情况都是无法预知的,不知道什么时候会有10倍甚至20倍的流量进来,如果遇到此类情况,扩容是根本来不及的,弹性扩容也是来不及的;2、对内的RPC服务一个服务A的接口可能被BCDE多个服务进行调用,在B服务发生突发流量时,直接把A服务给调用挂了,导致A服务对CDE也无

2020-08-12 17:03:18 123

原创 java编程入门必学六大知识-蛙课网

Java编程基础知识的学习,是每一个java程序员进入编程领域第一个要学习的内容,只有基础学习好了,才能发展的更好,那么对于新手刚入门应该学习哪些知识呢,接下来我们看一下java编程入门必学六大知识。一、计算机方面的内容我们做java编程,一定要对计算机有所了解,比如硬件有哪些、软件有哪些、进制转换、计算机体系结构、计算机语言发展史等一些基础知识就可以。二、安装JDK及配置环境变量1.百度下载jdk安装包;2…安装JDK,基本上点下一步就能完成安装;3.配置JDK的环境变量,打开以下路径:计算机→属

2020-08-12 17:00:23 150

原创 java编程学习必备好书-蛙课网

对于学习java编程的同学来说,一本好书,可以让你沉浸java的知识海洋中。如果java零基础想要入门,那么看什么样的书籍比较适合呢,怎么才能从轻松入门到深入学习呢?下面我给大家介绍一些java编程书籍。《疯狂讲义》 对于这本书,相信大家不陌生,《疯狂讲义》这本书深入介绍了java编程的相关方面,这本书的内容有Java基本语法结构、面向对象特征、集合框架体系、 泛型、异常处理、GUI编程、JDBC数据库编程、注释、的IO流体系、多线程编程、网络通信编程、反射机制和java开发中需要的jar包、类和接口。

2020-08-11 17:42:26 141

原创 高性能HTTP及反向代理服务器Nginx-蛙课网

Nginx (engine x) 是一个高性能的Web服务器和反向代理服务器,也可以作为邮件代理服务器。Nginx 是由俄罗斯人 Igor Sysoev 采用C语言开发编写的,第一个公开版本0.1.0发布于2004年10月4日;Nginx的作者Igor SysoevIgor Sysoev出生于1970年的阿拉木图(哈萨克斯坦共和国城市),也就是前苏联,1991年苏联解体,哈萨克斯坦宣布独立,Nginx作者1994年毕业于莫斯科国立鲍曼技术大学,毕业后继续在莫斯科工作和生活,就职于NGINX,Inc.,

2020-08-11 17:40:14 88

原创 谈谈接口中的几种限流实现-蛙课网

为什么需要限流按照服务的调用方,可以分为以下几种类型服务1、与用户打交道的服务比如web服务、对外API,这种类型的服务有以下几种可能导致机器被拖垮:用户增长过快(这是好事)因为某个热点事件(微博热搜)竞争对象爬虫恶意的刷单这些情况都是无法预知的,不知道什么时候会有10倍甚至20倍的流量进来,如果遇到此类情况,扩容是根本来不及的,弹性扩容也是来不及的;2、对内的RPC服务一个服务A的接口可能被BCDE多个服务进行调用,在B服务发生突发流量时,直接把A服务给调用挂了,导致A服务对CDE也无

2020-08-10 17:31:18 99

原创 Nginx实现动静分离分析-蛙课网

Nginx是常用的服务器,动静分离是实际应用中的常见场景,用Nginx实现动静分离可以达到高效合理的架构效果。动静分离将网站静态资源与后台应用分开部署提高用户访问静态代码的速度,降低对后台应用访问。这里我们将Nginx实现动静分离的相关内容整理在一起,方便大家进行学习。在学会Nginx实现动静分离前,我们要先明白什么是动,什么是静,理解了动静分离后才可以学习Nginx实现动静分离。在Web开发中,动态资源是指那些后台资源,静态资源包括HTML,JavaScript,CSS,img等文件。一般来说,都需要将

2020-08-10 17:27:14 129

原创 探讨Web开发中的Session存储与管理-蛙课网

我们都知道,由于HTTP协议是无状态的协议,一次浏览器和服务器的交互过程就是:浏览器:你好吗?服务器:很好!这就是一次会话,对话完成后,这次会话就结束了,服务器端并不能记住这个人,下次再对话时,服务器端并不知道是上一次的这个人,所以服务端需要记录用户的状态时,就需要用某种机制来识别具体的用户,这个机制就是Session;服务端如何识别特定的客户?这个时候需要使用Cookie;每次HTTP请求的时候,客户端都会发送相应的Cookie信息到服务端,用 Cookie 来实现Session跟踪的,第一次创

2020-08-07 17:02:11 73

原创 支付接口的幂等性设计-蛙课网

什么是幂等性?在数学中的幂等性定义:在某二元运算下,幂等元素是指被自己重复运算(或对于函数是为复合)的结果等于它自己的元素。例如,乘法下唯一两个幂等实数为0和1。 即 s * s = s某一元运算为幂等时,其作用在任一元素两次后会和其作用一次的结果相同。例如,高斯符号便是幂等的,即f(f(x)) = f(x)。在HTTP/1.1规范中的幂等性定义:如果一个请求方法在服务器上多次执行的预期影响与它只执行一次相同,那么这个请求方法就被认为具有幂等性。HTTP的幂等性指的是一次和多次请求某一个资源.

2020-08-06 17:27:29 295

原创 禁止套娃——java中使用嵌套的三种方法(蛙课网)

想要了解新的关于java中使用嵌套的方法,首先我们来温故知新,了解一下接口的几个特性:1、接口中定义的变量默认是public static final 型,且必须给其初值,所以实现类中不能重新定义,也不能改变其值2、接口中的方法默认都是 public abstract 类型的:3、接口默认也是abstract的的:public abstract interface xx ===public interface xx在java中使用嵌套接口有三种方式:一、在类中嵌套接口:Java使你可以在类内

2020-08-05 17:54:52 1131

原创 那些年我们都做过的学生信息管理系统-蛙课网

课程目标:通过本课程的学习,使大家充分的掌握WEB开发最基本的增删改查的应用。适用人群:具有JAVA SE基础,具有JAVA WEB开发基础,开始升级自己,准备开始做实际项目开发的学员。课程概述:在实际项目开发中,所有的功能需求都是由增删改查基础功能加以变化构成的。工欲善其事,必先利其器。也就是说,想要做好实际项目开发,就需要先将增删改查当做基本功一样练习到位。本课程会通过用户登录操作,学员添加操作,学员删除操作,学员修改操作,学员删除操作,构成一整套完整的基础增删改查操作。本课程应用的都是WEB开

2020-08-04 17:46:30 88

原创 浅谈事件驱动机制-蛙课网

事件驱动机制是指在持续事务管理过程中,进行决策的一种策略,即跟随当前时间点上出现的事件,调动可用资源,执行相关任务,使不断出现的问题得以解决,防止事务堆积。在计算机编程、公共关系、经济活动等领域均有应用。所谓事件驱动,简而言之就是你点什么按钮(即产生什么事件),电脑执行什么操作(即调用什么函数).当然事件不仅限于用户的操作. 事件驱动的核心自然是事件。从事件角度说,事件驱动程序的基本结构是由一个事件收集器、一个事件发送器和一个事件处理器组成。事件收集器专门负责收集所有事件,包括来自用户的(如鼠标、键盘事件

2020-08-03 17:30:08 1352

空空如也

空空如也

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

TA关注的人

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