插入排序就这么简单
从上面已经讲解了冒泡和选择排序了,本章主要讲解的是插入排序,希望大家看完能够理解并手写出插入排序的代码,然后就通过面试了!如果我写得有错误的地方也请大家在评论下指出。 .... 用第三位和已排序的数据比,实际上就是让第三位数跟两个数比较,只不过这两个数是已经排好序的而已。而正是…
Shiro【授权、整合Spirng、Shiro过滤器】
一般地,我们的权限都是从数据库中查询的,并不是根据我们的配置文件来进行配对的。因此我们需要自定义reaml,让reaml去对比的是数据库查询出来的权限 shiro也通过filter进行拦截。filter拦截后将操作权交给spring中配置的filterChain(过虑链儿) 在…
快速排序就这么简单
从前面已经讲解了冒泡排序、选择排序、插入排序了,本章主要讲解的是快速排序,希望大家看完能够理解并手写出快速排序的代码,然后就通过面试了!如果我写得有错误的地方也请大家在评论下指出。 快速排序是面试出现的可能性比较高的,也是经常会用到的一种排序,应该重点掌握。 前面一个章节已经讲…
Shiro入门这篇就够了【Shiro的基础知识、回顾URL拦截】
只要有用户参与的系统一般都要有权限管理,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户可以访问而且只能访问自己被授权的资源。 最常用的用户身份验证的方法:1、用户名密码方式、2、指纹打卡机、3、基于证书验证方法。。系统验证用户身份合法,用户方可访问系统的资源…
SpringDataJPA入门就这么简单
在上次学SpringBoot的时候,那时候的教程就已经涉及到了一点SpringData JPA的知识了。当时还是第一次见,觉得也没什么大不了,就是封装了Hibernate的API而已。 然后在慕课网上又看到了SpringData的教程了。于是就进去学习了一番。 在教程中是以原始…
递归就这么简单
本来预算此章节是继续写快速排序的,然而编写快速排序往往是递归来写的,并且递归可能不是那么好理解,于是就有了这篇文章。 递归其实和循环是非常像的,循环都可以改写成递归,递归未必能改写成循环,这是一个充分不必要的条件。 话说多了也无益,让我们来感受一下递归吧。 首先,我们来找出它的…
SpringBoot就是这么简单
今天在慕课网中看见了Spring Boot这么一个教程,这个Spring Boot作为JavaWeb的学习者肯定至少会听过,但我是不知道他是什么玩意。 只是大概了解过他是用起来很方便,不用什么配置的。于是我就花了点时间去跟着学习了。 使用SpringBoot作为我们的框架,连T…
Activiti就是这么简单
我们即将学习的是一个业务流程管理框架, 常见开源工作流引擎框架 : OSWorkFlow、jBPM(jboss business process management),Activiti工作流(是对jBPM升级)。一般我们称作为工作流框架.. 我们在学生时代,肯定会遇到请假写请…
Lucene就是这么简单
既然谈到了网站内部的搜索,那么我们就谈谈我们熟悉的百度、google那些搜索引擎又是基于什么搜索的呢.... 从图上已经看得很清楚,baidu、google等搜索引擎其实是通过网络爬虫的程序来进行搜索的... 在介绍Lucene的时候,我们已经说了:Lucene又不是搜索引擎,…
选择排序就这么简单
从上一篇已经讲解了冒泡排序了,本章主要讲解的是选择排序,希望大家看完能够理解并手写出选择排序的代码,然后就通过面试了!如果我写得有错误的地方也请大家在评论下指出。 如果相同,则是稳定的排序方法。 如果排序前的数组是[3,3,1],假定我们使用选择排序的话,那第一趟排序后结果就是…
WebService就是这么简单
首先我们来谈一下为什么需要学习webService这样的一个技术吧.... 天气预报这么一个功能并不是简单的JS组件就能够实现的,它的数据是依赖数据库分析出来的,甚至需要卫星探测..我们个人建站是不可能搞这么一个数据库的吧。 于是乎,webService就诞生了,webserv…
SpringMVC【校验器、统一处理异常、RESTful、拦截器】
Controller需要在校验的参数上添加@Validation注解...拿到BindingResult对象... 由于我在测试的时候,已经把日期转换器关掉了,因此提示了字符串不能转换成日期,但是名称的校验已经是出来了... 分组校验其实就是为了我们的校验更加灵活,有的时候,我…
SpringMVC【参数绑定、数据回显、文件上传】
我们在Controller使用方法参数接收值,就是把web端的值给接收到Controller中处理,这个过程就叫做参数绑定... 从上面的用法我们可以发现,我们可以使用request对象、Model对象等等,其实是不是可以随便把参数写上去都行???其实并不是的... 一般地,我…
冒泡排序就这么简单
在我大一的时候自学c语言和数据结构,我当时就接触到了冒泡排序(当时使用的是C语言编写的)。现在大三了,想要在暑假找到一份实习的工作,又要回顾一下数据结构与算法的知识点了。 排序对我们来说是一点也不陌生了,当你打王者荣耀的时候也会有段位之分,当你打Dota的时候也有天梯分。从高往…
Java高并发秒杀系统【观后总结】
在慕课网上发现了一个JavaWeb项目,内容讲的是高并发秒杀,觉得挺有意思的,就进去学习了一番。 记录在该项目中学到了什么玩意.. 我结合其资料和观看视频的时候整理出从该项目学到了什么... 使用jdbc的getGeneratekeys获取自增主键值,这个属性还是挺有用的。 写…
纳税服务系统【总结】
我跟着练习一步一步完成需求,才发觉原来Java是这样用来做网站的,Java有那么多的类库,页面的效果(图表、日期选择器等等)是通过JavaScript组件来显示,调用后端代码来获取数据从而显示出来的。 同时在练习的过程中也用博文记录下来了,一共7篇。 在前端页面上想要达到一些绚…
SpringMVC【开发Controller】详解
即使我们在handle()方法中,使用request对象设置编码也不行!原因也非常简单,我们SpringMVC接收参数是通过控制器中的无参构造方法,再经过handle()方法的object对象来得到具体的参数类型的。 Struts2是使用拦截器来自动帮我们完成中文乱码的问题的。…
SpringMVC入门就这么简单
可以这么说,Struts2能做的东西,SpringMVC也能够做.... 我们只要实现handleRequest方法即可,该方法已经说了request和response对象给我们用了。这是我们非常熟悉的request和response对象。然而该方法返回的是ModelAndVi…
Spring【DAO模块】就是这么简单
上一篇Spring博文主要讲解了如何使用Spring来实现AOP编程,本博文主要讲解Spring的DAO模块对JDBC的支持,以及Spring对事务的控制... 首先来看一下我们原生的JDBC:需要手动去数据库的驱动从而拿到对应的连接.. 因为JDBC是面向接口编程的,因此数据…
Spring【AOP模块】就是这么简单
CGLIB是一个强大的高性能的代码生成包,它可以在运行期扩展Java类与实现Java接口。它广泛的被许多AOP的框架使用,例如Spring AOP和dynaop,为他们提供方法的interception(拦截)。 需要引入cglib – jar文件, 但是spring的核心包中…