- 博客(56)
- 收藏
- 关注
原创 java.lang.UnsupportedOperationException解决方法
原因:调用Arrays.asList()生产的List的add、remove方法时报异常,这是由Arrays.asList() 返回的是Arrays的内部类ArrayList, 而不是java.util.ArrayList。Arrays的内部类ArrayList和java.util.ArrayList都是继承AbstractList,remove、add等方法AbstractList中是默认t...
2020-03-27 17:28:06
1932
原创 List根据对象的日期属性排序
public class Test { //定义一个实体 public static class UserBean { private String id; private String birthday; public String getId() { return id; } ...
2020-02-14 16:17:21
1498
原创 (1)——计算机硬件组成
一、CPU 功能:获取程序指令、对指令进行编码、执行。 (1)程序控制:通过执行指令来控制程序执行顺序。 (2)操作控制:一条指令需要有若干操作信号操作对应部件按指令进行操作。 (3)时间控制:对操作信号的出现时间、持续时间及出现时间顺序进行严格控制。 (4)数据处理...
2019-08-21 11:39:59
307
原创 Linux简单使用(1)——目录结构
在Linux中,一切皆文件;案例:基本介绍:Linux的文件系统采用是级层式树状目录结构,在此结构中最上层根目录是“/”,然后在此基础上再创建其他的目录;以下是对这些目录的解释:/bin:(/usr/bin、/usr/local/bin)bin是Binary的缩写, 这个目录存放着最经常使用的命令。/sbin:s就是Super User的意思,这里存放的是系统...
2019-08-11 15:28:35
166
原创 Docker——简介(1)
一、Docker介绍:Docker 是一个开源的应用容器引擎,基于Go 语言并遵从Apache2.0协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。Docker 从 1...
2019-06-05 17:00:09
146
原创 MyBatis-Plus简单使用——公共字段填充 (11)
1、注解填充字段:/** * FieldFill 值: * DEFAULT(0, "默认不处理"), * INSERT(1, "插入填充字段"), * UPDATE(2, "更新填充字段"), * INSERT_UPDATE(3, "插入和更新填充字段"); */@TableField(fill =FieldFill.INSERT_UPDATE)private Str...
2019-06-04 11:08:07
1370
2
原创 MyBatis-Plus简单使用——oracle (10)
MySQL: 支持主键自增。 IdType.AutoOracle: 序列 (Sequence)1) 实体类配置主键 Sequence @KeySequence(value=”序列名 序列名 ”,clazz=xxx.class 主键属性类 型),多个实体类共用同一个序列时,可以将@KeySequence提取到父类中,子类继承父类就可以使用@KeySequence;2) 全局 MP主键生成策略...
2019-06-03 16:17:45
5067
原创 MyBatis-Plus简单使用——自定义全局操作 (10)
自定义全局操作,就是将我们需要的sql在项目启动的时候就注入到全局中,操作步骤如下:在Mapper接口中定义我们需要注入的方法;扩展AutoSqlInjector中的inject方法,实现Mapper中我们自定义方法要注入的sql;最后,在全局配置中,配置我们自定义的注入器即可;第一步:mapper中定义方法public interface UserMapper extends B...
2019-06-03 14:42:50
817
原创 MyBatis-Plus简单使用——逻辑删除 (9)
第一步:数据库添加逻辑字段第二步:实体类添加对应属性和注解@TableLogicprivate Integer logicFlag;第三步:MybatisPlus全局配置中加入logicSqlInjector<!-- 定义MybatisPlus的全局策略配置--><bean id ="globalConfiguration" class="com.b...
2019-06-01 18:38:45
1470
原创 MyBatis-Plus简单使用——全局策略配置 (8)
<!-- 定义MybatisPlus的全局策略配置--><bean id ="globalConfiguration" class="com.baomidou.mybatisplus.entity.GlobalConfiguration"> <!-- 驼峰命名的映射,在2.3版本以后,dbColumnUnderline 默认值就是true --> ...
2019-06-01 18:31:14
3254
原创 MyBatis-Plus简单使用——乐观锁插件 (7)
一、主要适用场景意图:当要更新一条记录的时候,希望这条记录没有被别人更新乐观锁实现方式:取出记录时,获取当前version 更新时,带上这个version 执行更新时, set version = newVersion where version = oldVersion 如果version不对,就更新失败二、注解实体字段@Version必须要!@Versi...
2019-06-01 18:06:45
5149
1
原创 MyBatis-Plus简单使用——分析插件(6)
一、分析插件:1) com.baomidou.mybatisplus.plugins.SqlExplainInterceptor;2) SQL执行分析拦截器,只支持 MySQL5.6.3以上版本 以上版本 以上版本;3) 该插件的作用是分析 DELETE UPDATE语句 ,防止小白 或者恶意进行 DELETE UPDATE全表操作 全表操作;4) 只建议在开发环境中使用 ,不建议在...
2019-06-01 16:46:56
314
原创 Mybatis-Pus简单使用——分页插件(7)
一、分页插件:1) 插件机制 插件机制 :Mybatis 通过插件 (Interceptor) 可以做到拦截四大对象相关方法的执行 ,根据需求成相关数据的动态改变。ExecutorStatementHandlerParameterHandlerResultSetHandler2) 插件原理 插件原理四大对象的每个在创建时,都会执行 四大对象的每个在创建时,都会执行 inter...
2019-06-01 15:55:37
222
原创 MyBatis-Plus简单使用——AutoGenerator代码生成器(6)
AutoGenerator与MBG区别:(1)、MP提供了大量自定义的设置,生成的代码完全能够满足各类型的需求;(2)、MP的代码生生成器是基于Java代码来生成。MBG基于xml文件进行代码生成;Mybatis的代码生成器生成:实体类、Mapper接口、Mapper映射文件AutoGenerator却更加强大,可以生成service和controller,可以配置实体类是否支持A...
2019-06-01 14:34:45
2604
原创 MyBatis-Plus简单使用——AR操作(5)
1、Active Record(活动记录),简称AR,是一种领域模型模式,特点就是一个模型类对应关系型数据库中的一个表,而模型类的一个实例对应表中的一条记录;2、开启AR模式:开启AR模式的方法很简单,就是让我们的实体类继承Model类,并实现其抽象方法,指定主键即可案例:public class User extends Model<User> { p...
2019-05-31 11:19:51
1353
原创 MyBatis-Plus简单使用——条件构造器(5)
1、Mybatis-Plus 通过 EntityWrapper(简称 EW,MP 封装的一个查询条件构造器)或者 Condition(与 EW类似) 类似) 来让用户自由的构建查询条件, 简单便捷, 没有额外负担 ,能够有效提高开发率2、实体包装器,主要 用于处理 sql 拼接,排序实体参数查询等 ;3、注意 : 使用的是 数据库字段,不Java属性 !4、条件参数说明:案例:...
2019-05-31 10:48:20
754
原创 MyBatis-Plus简单使用——CRUD接口(4)
1、查询:T selectById(Serializable var1);List<T> selectBatchIds(@Param("coll") Collection<? extends Serializable> var1);List<T> selectByMap(@Param("cm") Map<String, Object> va...
2019-05-30 20:13:37
996
原创 MyBatis-Plus简单使用——注解详解(3)
@TableName描述:表名注解属性 类型 必须指定 默认值 描述 value String 否 "" 表名 resultMap String 否 "" xml 中 resultMap 的 id schema String 否 "" schema(@since 3.1.1) ke...
2019-05-30 18:23:52
3199
1
原创 MyBatis-Plus简单使用——spring整合MyBatis-Plus(2)
项目资源:一、整合:1、导入jar包:<!--mybatisPlus 会自动的维护Mybatis 以及MyBatis-spring相关的依赖--><dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus</artifac...
2019-05-30 17:43:13
252
原创 MyBatis-Plus简单使用——介绍(1)
1、简介MyBatis-Plus(简称 MP),是一个 MyBatis的增强 工具包,只做增强不改变 工具包,只做增强不改变 工具包,只做增强不改变 . 为简化开 发工作、提高生 产率而开发。2、文档官网:https://mp.baomidou.com/代码发布地址 :Github: https://github.com/baomidou/mybatis-plusGitee: h...
2019-05-29 19:37:11
203
原创 Mybatis——源码分析
一、MyBatis的主要成员Configuration MyBatis所有的配置信息都保存在Configuration对象之中,配置文件中的大部分配置都会存储到该类中 SqlSession 作为MyBatis工作的主要顶层API,表示和数据库交互时的会话,完成必要数据库增删改查功能 Executor MyBatis执行器,是M...
2019-05-29 18:28:43
167
原创 Log4j——详解(2)
1、配置文件:#配置根Loggerlog4j.rootLogger=[level],appenderName1,appenderName2,…#配置日志信息输出目的地Appenderlog4j.appender.appenderName=fully.qualified.name.of.appender.classlog4j.appender.app...
2019-05-27 17:05:06
196
原创 Log4j——简单使用(1)
1、导包:<dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version></dependency>2、编写log4j.properties...
2019-05-27 15:56:32
196
原创 Mybatis简单使用——ParameterHandler、ResultSetHandler、StatementHandler详解(10)
1、public interface ParameterHandler { //该方法只在执行存储过程处理出参的时候被调用 Object getParameterObject(); //该方法在所有数据库方法设置SQL 参数时被调用 void setParameters(PreparedStatement var1) throws SQLException;...
2019-05-23 17:26:35
2913
原创 Mybatis简单使用——Executor详解(10)
public interface Executor { ResultHandler NO_RESULT_HANDLER = null; //该方法会在所有的INSERT 、UPDATE 、DELET E 执行时被调用, int update(MappedStatement var1, Object var2) throws SQLException; //由于...
2019-05-23 17:13:25
374
原创 Mybatis简单使用——插件开发(9)
一、实现:1、实现Interceptor接口:2、配置签名注解:案例:@Intercepts({@Signature( type = Executor.class, method = "query", args = {MappedStatement.class, Object.class, RowBounds.class, ResultHandler.cl...
2019-05-23 17:01:45
194
原创 Mybatis简单使用——分页插件PageHelper(8)
文档:https://pagehelper.github.io/docs/howtouse/1、引入jar包:<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <vers...
2019-05-23 15:39:31
132
原创 Mybatis简单使用——枚举类型(7)
1、枚举类型处理器:(1)枚举的字面值org.apache.ibatis . type.EnumTypeHandler(默认)(2)枚举的索引值org . apache .i batis . type .E numOrdinalTypeHandler2、配置:(1)全局配置<typeHandlers> <typeHandler java...
2019-05-22 18:42:18
929
原创 Mybatis简单使用——存储过程(6)
一、调用存储过程:1)statementType="CALLABLE":表示要调用存储过程2){call procedure_name(params)}<select id= " selectUserPage” statement Type=” CALLABLE ” useCache=” false ”resultMap=” userMap ”>{call select...
2019-05-22 17:00:56
720
原创 Mybatis简单使用——Generator(6)
文档地址:http://www.mybatis.org/generator/configreference/xmlconfig.html(1)添加包:<dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core&...
2019-05-17 17:28:48
211
原创 解决Spring整合SpringMVC时——contextConfigLocation报错
报错:Invalid content was found starting with element 'init-param'. One of '{"http://java.sun.com/xml/ns/javaee":run-as, "http://java.sun.com/xml/ns/javaee":security-role-ref}' is expected.报错位置:...
2019-05-16 19:32:50
1607
原创 Mybatis简单使用——缓存(6)
1、MyBatis系统中默认定义了两级缓存。 一级缓存和二级缓存。(1)、默认情况下,只有一级缓存(SqlSession级别的缓存,也称为本地缓存)开启。(2)、二级缓存需要手动开启和配置,他是基于namespace级别的缓存。(3)、为了提高扩展性。MyBatis定义了缓存接口Cache。我们可以通过实现Cache接口来自定义二级缓存2、一级缓存: ...
2019-05-16 18:18:21
181
原创 Mybatis简单使用——动态sql(5)
1、鉴别器 :<discriminator javaType=""></discriminator> 作用: 鉴别器:mybatis可以使用discriminator判断某列的值,然后根据某列的值改变封装行为 案例:封装Employee: 如果查出的是女生:就把部门信息查询出来,否则不查询; 如果是男生,把last_name这一列的值...
2019-05-15 17:43:31
152
转载 Mybatis简单使用——${}与#{}(4)
1、区别:1.1、是否防止SQL注入: ${}:方式无法防止Sql注入; #{}:方式能够很大程度防止sql注入;1.2、#{}和${}都可以传输数据,两者的差异是编译的时期不一样 #{}是一次编译,后续每次调用只是传递一个参数进去 ${}是每次都会编译,传递进去的数据会当做sql...
2019-05-15 16:52:29
179
原创 Mybatis简单使用——结果映射(3)
一、resultType:(1)、基本类型 :resultType=基本类型案例一:Integer selectCount();<select id="selectCount" resultType="java.lang.Integer" databaseId="mysql"> select count(*) from country</select...
2019-05-15 16:30:39
199
原创 Mybatis简单使用——参数(2)
一、参数:(1)单个参数:#{参数名/任意名}:取出参数值。Country selectById(Long id);<select id="selectById" resultType="Country" databaseId="mysql"> select <include refid="Base_Column_List" /> from countr...
2019-05-15 11:24:35
125
原创 Mybatis简单使用——插入并返回主键(2)
1、Mybatis解决中文乱码和批量操作:jdbc.url=jdbc:mysql://127.0.0.1:3306/mapper?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true2、插入返回主键:(1)支持主键自增(MySQL 和 SQL Server):设值 useGen...
2019-05-14 16:26:40
316
原创 Mybatis简单使用—全局配置文件详解(1)
Mybatis 中文文档:http://www.mybatis.org/mybatis-3/zh/configuration.htmlMybatis——全局配置文件详解:主要标签和顺序,可选:properties?,settings?,typeAliases?,typeHandlers?,objectFactory?,objectWrapperFactory?,reflectorFac...
2019-05-14 14:40:12
141
原创 Mybatis——通用mapper(自定义和扩展mapper)(3)
项目源代码:https://github.com/ClevelandCavaliers2016/extendedUniversalMapper.git1、自定义:2、扩展通用mapper:作用:增加通用Mapper 没有提供的功能。自定义扩展mapper接口简单实现结构:自定义扩展mapper接替实现:(1)自定义扩展mapper接口:(2)具体实现:...
2019-05-08 16:08:25
4196
原创 Mybatis——通用mapper(Generator)(2)
1、详细文档:https://github.com/abel533/Mapper/wiki/4.1.mappergenerator中文文档:https://blog.csdn.net/isea533/article/details/42102297#t62、<classPathEntry>元素最常见的用法是通过这个属性指定驱动的路径,例如:<classPat...
2019-05-07 17:44:36
313
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人