Spring Boot简单学习
Spring Boot前置准备Maven配置加入阿里镜像加速,适配jdk1.8的版本
1234567891011121314151617181920212223<mirrors> <mirror> <id>nexus-aliyun</id> <mirrorOf>central</mirrorOf> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror></mirrors> <profiles> <profile> <id>jdk-1.8</id> <activation> <activeByDefault>tru ...
算法基础巩固
回溯法剑指Offer.38,回溯法,https://leetcode-cn.com/problems/zi-fu-chuan-de-pai-lie-lcof/
先把问题码着
个人理解
当改变状态进行递归时,退出该层递归就要对改变的状态还原,也就是回溯,因为接下来的操作是基于上一层的,所以这一层的改变要撤销,到这一层的下个结点时再发生另外的改变。
排序算法时间复杂度
排序算法
时间复杂度(平均)
时间复杂度(最差)
稳定
冒泡排序
O(n2)
O(n2)
稳定
选择排序
O(n2)
O(n2)
不稳定
插入排序
O(n2)
O(n2)
稳定
堆排序
O(nlogn)
O(nlogn)
不稳定
快速排序
O(nlogn)
O(n2)
不稳定
归并排序
O(nlogn)
O(nlogn)
稳定
堆排序建堆时间复杂度O(n)
快速排序如果快排不堆哨兵优化(随机选取),那么面对一个逆序序列,快排的时间复杂度会达到最差的情况:O(n2)。
215.数组中的第k个最大元素:https://leetcode-cn.com/problems/kth-largest-el ...
酒店管理系统总结
项目Gitee地址:https://gitee.com/aidianfirst/aidianfirst
项目简介项目分为前后台两个大板块。
前台面向客户,提供客房展示,只展示状态时可预约的,用户可选择酒店相应楼层的房间进行预约。被预约的客房状态会改变。而必须是登录用户才可进行预约操作,前台还提供了简单的登录注册模块。
后台面向员工管理:
首先是系统管理板块,可以设置员工的基础信息,以及角色分配,员工角色也就是后台管理的菜单权限,如超级管理员可以查看全部模块,业务管理员只能查看订单业务。还包括了菜单管理,可管理后台的一级二级菜单使用了Layui的dtree模板
客房管理板块,房间类型管理,酒店楼层管理,房间管理,房间有不同类型
订单业务管理,主要是预订管理和入住管理,这里就涉及到客房状态的联动管理问题。客房状态有1可预定、2不可预定。订单状态有1待确认、2已确认、3入住中、4已退房。
当前台客户预订房间后,会预订管理新增一个状态为 1待确认 的订单,若添加订单成功,则将房间状态改为 2不可预定,且前端判断房间状态不为1的都不展示。然后由员工在后台确认订单,确认后的订单会变为2已确认 ...
SSM整合遇到的问题
问题今天在整合SSM框架时,出现了以下警告报错:
123警告: com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask@98a2c7f -- Acquisition Attempt Failed!!! Clearing pending acquires. While trying to acquire a needed new resource, we failed to succeed more than the maximum number of allowed acquisition attempts (2). Last acquisition attempt exception: java.sql.SQLException: Access denied for user 'immune'@'localhost' (using password: YES)
很明显,这是使用c3p0连接池的问题,经过我的分析后明白了原因。
由于之前使用的是默认的jdbc连接,所以db.p ...
MVC后续——SSM简单整合
SSM基础环境搭建maven依赖123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven- ...
Spring简单学习
Spring中文官网:https://www.docs4dev.com/docs/zh/spring-framework/5.1.3.RELEASE/reference
官方文档:https://docs.spring.io/spring-framework/docs/5.3.9-SNAPSHOT/reference/html/core.html#spring-core
IoC (Inversion of Control) 控制反转
AOP (Aspect Oriented Programming) 面向切面编程
123456<!-- maven依赖--><dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.3.6</version></dependency>
IoC(可联想设计模式:工厂,装饰)IoC是一种思想 ...
Spring MVC简单学习
Spring MVCModel(业务模型) View(用户视图) Controller(控制器)
官网:https://docs.spring.io/spring-framework/docs/current/reference/html/web.html#mvc-servlet
以前是每一个servlet都要配置对应的请求,而现在使用一个中转站即前端控制器DispatcherServlet,它可以调用对应的servlet
一些基础配置:
父项目的基本maven依赖
123456789101112131415161718192021222324252627282930313233343536373839<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance& ...
blog评论系统升级
Waline经过小伙伴的推荐,我决定将博客的评论系统由valine换成waline。这里是建议使用leancloud国际版来操作,因为绑定域名时不用报备。
这里推荐两个waline的相关配置帮助:
https://waline.js.org/
https://guanqr.com/tech/website/introduction-and-basic-setting-of-waline/
waline比起valine多了一个简易的后台管理以及弥补了一些安全问题(虽然隐私泄露和我没太大关系,因为根本没人来www),对了评论系统部署好后记得第一个去登录注册,第一个注册的才是后台评论的管理员,如果有人抢注,应该可以在leancloud数据存储中把User的对应信息删除即可。
剑指Offer
数组中重复的数题目:https://leetcode-cn.com/problems/shu-zu-zhong-zhong-fu-de-shu-zi-lcof/submissions/
首先肯定不能暴力(不想动脑,结果直接死了),直接超时,相对简单点是先排序,然后检查前后两个数是否相同。
方法1:排序+遍历判断
123456789class Solution { public int findRepeatNumber(int[] nums) { Arrays.sort(nums); for(int i=1;i<nums.length;i++) if(nums[i-1]==nums[i]) return nums[i]; return -1; }}
方法2:利用Set无重复特性
12345678class Solution { public int findRepeatNumber(int[] nums) { ...
MyBatis简单学习
MyBatisMyBatis是优秀的持久层框架,持久层
持久化就是将程序的数据在持久状态和瞬时状态的转化的过程。而内存有断电即失的特性,为了数据不丢失,需要持久化数据,而且内存也很珍贵。
持久层:Dao层,Service层,Controller层。。。完成持久化的代码块,其层界限明显。
MyBatis是为了方便JDBC,方便数据存储,方便后续优化。将sql语句独立出来。
3.5.6版本MyBatis的Maven依赖:
123456<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --><dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.6</version></dependency>
第一个MyBatis程序项目环境搭建省略。
官网:https://mybatis ...