中国剩余定理
欧几里得算法:
详见最大公因数gcd 和 最小公倍数lcm
扩展欧几里得算法:
对于不完全为 0 的非负整数 a和b,gcd(a,b)表示 a,b 的最大公约数,必然存在整数对 x,y ,使得 gcd(a,b)=ax+by。
12345678910111213private static int extend_getGCD(int a, int b, int x, int y) { int temp,ans; if (b == 0) { x = 1; y = 0; return a; } ans = extend_getGCD(b, a%b, x, y); temp = x; x = y; y = temp - a / b * y; return ans; }
中国剩余定理
也就是 给你一组同余方程,并保证两两互质 求最小的满足方程的非负整数 X
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 ...
关于java的算法IO读写优化
1.普通写法12Scanner sc = new Scanner(System.in);int n = sc.nextInt();
2.读取测试文件12Scanner sc = new Scanner(new FileInputStream("path"));int n = sc.nextInt();
3.bufferReader加速读写12BufferedReader bf = new BufferedReader(new InputStreamReader(new FileInputStream("path")));String s = bf.readLine();
MybatisPlus的基础使用
Mybatis Plus的基础使用
为简化开发而生
1.实体类的定义1234567891011@Data@TableName("userswork") // 映射表public class Userwork { @TableId(type = IdType.AUTO) // 主键策略 private int id; private int workid; private int userid; @TableField(exist = false) // 列策略:是否对应表属性,查询时是否返回结果.... private int other;}
2.Mapper的书写(多表查询使用SQL拼接)
继承BaseMapper实现基本的CURD功能
简单语句可以使用自带的CRUD
复杂语句也可以使用sql语句拼接
12345678910111213141516171819202122232425262728package kid1999.upload.mapper;import com.baomidou.mybatisplus.c ...
EasyMock的简单使用
EasyMock简单使用1.安装使用,不说了…2.数据随机生成规则:123456789101112131415161718192021222324252627282930313233343536373839404142{ "cname": "@cname",//中文人名 "id": "@id",//生成20 位数字 "title": "@ctitle",//中文title "city": "@city",//中文城市 "ip": "@ip",//ip 地址 "email": "@email",//email "url": "@url",//url "cfirst": "@cfirst",//姓名,姓 "clast": "@clast ...
前后端分页的简单实现
前后端分页的简单实现
Vue.js Element-UI
SpringBoot Jpa
基本效果图如下:
1.前端基于Element的分页组件Element分页组件:123456789<div class="block" style="margin-top:15px;"> <el-pagination align='center' @current-change="handleCurrentChange" // 改变页码时触发的方法,还有很多其他的触发事件 :current-page="currentPage" // 当前页 :page-size="pageSize" // 分页大小 layout="total, prev, pager, next" // 分页条的功能(主题) 可定制 :total="total"> ...
前后端通讯实测
前后端通讯实测以Vue.js为代表的前端1.基于axios的请求
在main.js中配置默认请求地址:axios.defaults.baseURL = 'http://localhost:9999/';
在main.js中配置全局使用axios:Vue.prototype.$axios = axios;
以Springboot为代表的后端1.配置跨域允许123456789101112131415161718192021222324package io.kid19999.backstage.config;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.cors.CorsConfiguration;import org.springframework.web.cors.UrlBasedCorsConfigurationSource;impo ...
Thymeleaf模板技术尝试
Thymeleaf 模板技术尝试
Thymeleaf是一个Java XML / XHTML / HTML5 模板引擎 ,可以在Web(基于servlet )和非Web环境中工作。 它更适合在基于MVC的Web应用程序的视图层提供XHTML / HTML5,但它甚至可以在脱机环境中处理任何XML文件。 它提供完整的Spring Framework。
在Web应用程序中,Thymeleaf旨在成为JavaServer Pages (JSP)的完全替代品,并实现自然模板的概念:模板文件可以直接在浏览器中打开,并且仍然可以正确显示为网页。
Thymeleaf 3.0 官方文档
Thymeleaf 常用关键字
1.创建HTML1<html xmlns:th="http://www.thymeleaf.org">
2.获取变量值${…}1<p th:text="'Hello!, ' + ${name} + '!'">3333</p>
3.链接表达式: @{… ...
Shiro安全框架基础知识点
Shiro基础知识点
Apache Shiro 是ASF旗下的一款开源软件(Shiro发音为“shee-roh”,日语“堡垒(Castle)”的意思),提供了一个强大而灵活的安全框架。可为任何应用提供安全保障— 从命令行应用、移动应用到大型网络及企业应用。
Apache Shiro提供了认证、授权、加密和会话管理功能,将复杂的问题隐藏起来,提供清晰直观的API使开发者可以很轻松地开发自己的程序安全代码。并且在实现此目标时无须依赖第三方的框架、容器或服务,当然也能做到与这些环境的整合,使其在任何环境下都可拿来使用。
Shiro的核心四部分
认证(Authentication):用户身份识别。有时可看作为“登录(login)”,它是用户证明自己是谁的一个行为。
授权(Authorization):访问控制过程,好比决定“认证(who)”可以访问“什么(what)”.
会话管理(SessionManagement):管理用户的会话(sessions),甚至在没有WEB或EJB容器的环境中。管理用户与时间相关的状态。
加密(Cryptography):使用加密算法保护数据更加安全, ...
Jpa基础知识点
Jpa基础知识点
JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。
Spring Data JPA是较大的Spring Data系列的一部分,可轻松实现基于JPA的存储库。该模块处理对基于JPA的数据访问层的增强支持。它使构建使用数据访问技术的Spring支持的应用程序变得更加容易。
1.JPA的基本配置
pom依赖
1234<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId></dependency>
2. 项目配置文件12345678910111213spring: # mysql 配置: datasource: driver-class-name: com.mysql.cj.jdbc.Dri ...
MyBatis基础知识点
MyBatis基础知识点1.基础配置1.添加依赖包1234567891011<!--mysql--><dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.16</version></dependency><dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.0.1</version></dependency>
2.配置log4j在 resources 目录下增加文件 log4j.properties
1234log4j.rootL ...