Java
囿于之间
这个作者很懒,什么都没留下…
展开
-
Mybatis注解方式实现动态SQL
Mybatis注解方式实现动态SQL脚本SQL使用script方式@Select("<script>select * from user <if test=\"id !=null \">where id = #{id} </if></script>") public List<User> findUserById(User user); 在方法中构建SQL实现方式:@SelectProvider(type=xxxx.class原创 2020-08-02 17:38:44 · 998 阅读 · 0 评论 -
Mybatis学习笔记二
Mybatis学习笔记二基于代理Dao实现CRUD操作学习前提:持久层接口和持久层接口的映射配置必须在相同的包下持久层映射配置中 mapper 标签的 namespace 属性取值必须是持久层接口的全限定类名SQL 语句的配置标签,,,的 id 属性必须和持久层接口的方法名相同。环境搭建可参照我的上一篇博客Mybatis学习笔记一根据ID查询用户方法1.在持久层接口中添加findById方法/*** 根据id查询* @param userId* @return*/User原创 2020-07-30 22:00:31 · 177 阅读 · 0 评论 -
Mybatis学习笔记一
Mybatis学习笔记一概述Mybatis 是一个优秀的基于 java 的持久层框架,它内部封装了 jdbc,使开发者只需要关注 sql 语句本身,而不需要花费精力去处理加载驱动、创建连接、创建 statement 等繁杂的过程。mybatis 通过 xml 或注解的方式将要执行的各种 statement 配置起来,并通过 java 对象和 statement 中sql 的动态参数进行映射生成最终执行的 sql 语句,最后由 mybatis 框架执行 sql 并将结果映射为 java 对象并返回。采原创 2020-07-29 20:55:15 · 161 阅读 · 0 评论 -
Spring Security之修改默认表单登录(详细带图教程)
我们知道,在SpringBoot项目引入SpringSecurity依赖之后,security在你获取任何接口之前自动会帮你加载一个默认的登录页面,如下图:但是往往一般情况下我们会选择自己定义登录页面。首先,我们需要新建一个config的包用来存放配置,然后新建一个SecurityConfig类,使其继承WebSecurityConfigurerAdapter,如下图所示:然后我们需要给S...原创 2020-02-22 21:58:09 · 5757 阅读 · 1 评论 -
创建一个简单的Spring Security项目
首先通过Spring Initializr创建一个SpringBoot项目在设置完group等基础信息之后,Spring Initializr允许我们提前预定一些常用的项目依赖,我在这里选择了security和web的基础配置依赖,当然不选择也可以,在进入项目之后,可以自行在pom文件里添加你需要的依赖...原创 2020-02-15 21:48:01 · 267 阅读 · 0 评论 -
Java8新特性之Stream流式编程
一、什么是Stream?Stream(流)是一个来自数据源的元素队列并支持聚合操作1.元素是特定类型的对象,形成一个队列。 Java中的Stream并不会存储元素,而是按需计算。2.数据源流的来源,可以是集合,数组,I/O channel, 产生器generator 等。3.聚合操作 类似SQL语句一样的操作, 比如filter, map, reduce, find, match, sor...原创 2020-02-03 21:52:27 · 781 阅读 · 0 评论 -
Java8新特性之Lamdba表达式
我们都知道在Java8中引入了许多新特性,Lambda表达式,下面就Lambda表达式给大家介绍一下。一、什么是Lambda表达式?从java8出现以来lambda是最重要的特性之一,它可以让我们用简洁流畅的代码完成一个功能。 很长一段时间java被吐槽是冗余和缺乏函数式编程能力的语言,随着函数式编程的流行java8种也引入了 这种编程风格,lambda表达式是一段可以传递的代码,它的核心思想...原创 2020-02-02 22:18:46 · 206 阅读 · 0 评论 -
关于String、StringBuffer与StringBuilder讲解
一、StringString是java中的字符串常量,,底层是final型的字符数组,字符串长度不可变,这就导致每次对String的操作都会生成新的String对象。举个例子:String str = "gyk";str = str + “hello”;以上这段代码,最后得到字符串“gykhello”,但是str最后占用的空间已经不是之前创建字符串"gyk"时的那块空间,又重新开辟了一...原创 2020-02-01 22:34:19 · 152 阅读 · 0 评论 -
Java集合类框架详解
集合是一个Java自带的框架,用于存储和操作一组对象,集合可以看做一个容器。集合一般分为三个部分:1.接口:抽象数据类型,例如java.util.Collection,java.util.Map等2.实现类:ArrayList,LinkedList,HashMap,TreeMap,HashSet等3.算法:searching,sorting and shuffling集合中的基本继承和实...原创 2020-01-31 20:39:05 · 416 阅读 · 0 评论 -
Java之面向对象讲解
对 Java 语言来说,一切皆是对象。把现实世界中的对象抽象地体现在编程世界中,一个对象代表了某个具体的操作。一个个对象最终组成了完整的程序设计,这些对象可以是独立存在的,也可以是从别的对象继承过来的。对象之间通过相互作用传递信息,实现程序开发,接下来我会分几点来对Java语言的面向对象的思想进行介绍。1.类和对象的概念。类:类是一种分类,一个类别,一个模板,它描述一类对象的行为和状态,是一组...原创 2020-01-30 16:41:20 · 188 阅读 · 0 评论 -
Spring中重要的一些注解及其实现原理
SpringBoot注解及其实现原理1.启动类注解:@SpringBootApplicationpublic class StartEurekaApplication{ public static void main(String[] args) { SpringApplication.run(StartEurekaApplication.class, ar...原创 2020-01-29 22:15:07 · 1320 阅读 · 0 评论 -
力扣553题之最优除法
题目给定一组正整数,相邻的整数之间将会进行浮点除法操作。例如, [2,3,4] -> 2 / 3 / 4 。但是,你可以在任意位置添加任意数目的括号,来改变算数的优先级。你需要找出怎么添加括号,才能得到最大的结果,并且返回相应的字符串格式的表达式。你的表达式不应该含有冗余的括号。示例输入: [1000,100,10,2]输出: “1000/(100/10/2)”解释:1000/(...原创 2019-12-21 14:49:56 · 180 阅读 · 0 评论 -
力扣232题 用栈实现队列
原题:使用栈实现队列的下列操作:push(x) – 将一个元素放入队列的尾部。pop() – 从队列首部移除元素。peek() – 返回队列首部的元素。empty() – 返回队列是否为空。示例:MyQueue queue = new MyQueue();queue.push(1);queue.push(2);queue.peek(); // 返回 1queue.pop()...原创 2019-09-15 20:40:54 · 233 阅读 · 0 评论 -
对IntelliJ IDEA几个重要快捷键补充(带图解释)
经过一段时间对idea的学习,补充3个对新手来说十分重要的快捷键。第一个:万能快捷键 Alt+Enter当遇到插入相关类别报错时,或者各类错误都可以 通过这个进行修正。例如我现在在一个类中调用同一个包中的另一个类创建该类的对象时,没有在前面导入包名,会出现如下情况此时idea也会提醒你使用Alt+Enter,使用后效果:上方会自动导入你需要用的类所在的包第二个:Ctrl+J主要...原创 2019-03-27 22:22:05 · 1605 阅读 · 0 评论 -
IntelliJ IDEA快捷键
Ctrl+Shift + Enter,语句完成“!”,否定完成,输入表达式时按 “!”键Ctrl+E,最近的文件Ctrl+Shift+E,最近更改的文件Shift+Click,可以关闭文件Ctrl+[ OR ],可以跑到大括号的开头与结尾Ctrl+F12,可以显示当前文件的结构Ctrl+F7,可以查询当前元素在当前文件中的引用,然后按 F3 可以选择Ctrl+N,可以快速打开类C...原创 2019-03-13 20:25:38 · 325 阅读 · 0 评论