java框架
文章平均质量分 85
vid。
出走半生,归来仍是少年;遍历山河,仍觉人间值得
展开
-
Mybatis-plus连接postgrel数据库主键自增问题
首先pg中没有直接设置主键自增这一说法,一般只能新建一个序列,可以使用Navicat创建。然后实体类的主键策略只能是。,指定你的序列名字,即可.原创 2023-10-20 16:51:32 · 1279 阅读 · 0 评论 -
Mybatis-Plus
MyBatis-Plus (简称MP)是一个MyBatis,的增强工具,在 MyBatis,的基础上只做增强不做改变,为简化开发、提高效率而生。润物无声只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑。效率至上只需简单配置,即可快速进行CRUD操作,从而节省大量时间。丰富功能热加载、代码生成、分页、性能分析等功能一应俱全。原创 2022-10-12 22:57:57 · 2781 阅读 · 0 评论 -
权限架构~
这种架构的优势就是当我们为了一个User 添加角色时 如果这个User 的角色比较多比如说他又是经理 又是项目管理者等角色 我们给他添加的时候就需要一个一个添加,这个时候我们就可以给这个将这个角色添加到一个group中,下一次有User还是这些角色我们就可以直接给他添加Group就可以了,就不用在一个一个添加,这就是这个架构的优势,但是这个架构要在角色较多的系统中才能体现出来,在角色较少是反而会成为累赘。④ user_to_resources(user跟role的中间表)② 角色表 Role。...原创 2022-08-07 14:09:30 · 633 阅读 · 0 评论 -
mockMVC单元测试(SpringBoot+Spring Security+Jwt)
传对象的情况/** * 1、mockMvc.perform执行一个请求。 * 2、MockMvcRequestBuilders.get("XXX")构造一个请求。 * 3、ResultActions.param添加请求传值 * 4、ResultActions.accept(MediaType.TEXT_HTML_VALUE))设置返回类型 * 5、ResultActions.andExpect添加执行完成后的断言。 * 6、ResultActions.andDo添加一个结果处理器,原创 2022-04-01 13:48:32 · 1676 阅读 · 0 评论 -
@RequestBody使用场景
视频原创 2022-02-20 12:26:49 · 1338 阅读 · 1 评论 -
Springmvc文件的上传和下载
文件上传是项目开发中最常见的功能之一 ,springMVC 可以很好的支持文件上传,但是SpringMVC上下文中默认没有装配MultipartResolver,因此默认情况下其不能处理文件上传工作。如果想使用Spring的文件上传功能,则需要在上下文中配置MultipartResolver。前端表单要求:为了能上传文件,必须将表单的method设置为POST,并将enctype设置为multipart/form-data。只有在这样的情况下,浏览器才会把用户选择的文件以二进制数据发送给服务器;对表单中原创 2021-11-24 10:02:15 · 375 阅读 · 0 评论 -
MyBatis源码分析
MyBatis 的工作原理SqlSessionFactory的创建这是我们常见的SqlSessionFactory创建的代码,我们下面来对源码剖析 @Before public void testBefore() throws IOException { InputStream rs = Resources.getResourceAsStream("mybatis-config.xml"); SqlSessionFactory sqlSess原创 2021-10-16 11:22:47 · 196 阅读 · 0 评论 -
SpringBoot核心技术(Web开发:简单功能分析、请求参数处理)
核心功能一、配置文件1、yaml①简介YAML 是 “YAML Ain’t Markup Language”(YAML 不是一种标记语言)的递归缩写。在开发的这种语言时,YAML 的意思其实是:“Yet Another Markup Language”(仍是一种标记语言)。非常适合用来做以数据为中心的配置文件②基本语法key: value;kv之间有空格大小写敏感使用缩进表示层级关系缩进不允许使用tab,只允许空格缩进的空格数不重要,只要相同层级的元素左对齐即可'#'表示注释字原创 2021-06-26 10:32:09 · 183 阅读 · 0 评论 -
SpringBoot核心技术(配置文件)
配置文件1、yaml①简介YAML 是 “YAML Ain’t Markup Language”(YAML 不是一种标记语言)的递归缩写。在开发的这种语言时,YAML 的意思其实是:“Yet Another Markup Language”(仍是一种标记语言)。非常适合用来做以数据为中心的配置文件②基本语法key: value;kv之间有空格大小写敏感使用缩进表示层级关系缩进不允许使用tab,只允许空格缩进的空格数不重要,只要相同层级的元素左对齐即可'#'表示注释字符串无需加引号,原创 2021-06-15 09:11:42 · 264 阅读 · 2 评论 -
自动配置原理
自动配置原理1、SpringBoot特点1、依赖管理父项目做依赖管理 <!--依赖管理--> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.4.RELEASE</原创 2021-06-11 15:09:39 · 618 阅读 · 0 评论 -
SpringBoot基础入门
一、Spring5重大升级1、响应式编程2、内部源码设计基于Java8的一些新特性,如:接口默认实现。重新设计源码架构。二、为什么用SpringBoot能快速创建出生产级别的Spring应用1、SpringBoot优点创建独立Spring应用内嵌web服务器自动starter依赖,简化构建配置自动配置Spring以及第三方功能提供生产级别的监控、健康检查及外部化配置无代码生成、无需编写XMLSpringBoot是整合Spring技术栈的一站式框架Sp原创 2021-06-07 19:07:55 · 823 阅读 · 7 评论 -
SpringMVC的拦截器
SpringMVC的拦截器1.拦截器的作用SpringMVC的处理器拦截器类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理。开发者可以自己定义一些拦截器来实现特定的功能。拦截器链(Interceptor Chain):将拦截器按一定的顺序连接成一条链。在访问被拦截的方法或者字段时,拦截器链中的拦截器就会按照之前定义的顺序被调用。拦截器和过滤器的区别过滤器:是servlet规范中的一部分,任何JAVAWEB工程都可以使用拦截器:是SpringMVC框架自己的,只有使用原创 2021-05-18 20:52:27 · 111 阅读 · 1 评论 -
Springmvc的异常处理
当异常被直接抛到浏览器,页面上显示一大堆错误堆栈信息,用户看到这些错误堆栈信息,肯定觉得我们这个系统设计的不友好,而且错误堆栈信息一旦暴露了,会存在着一定的潜在风险,虽然之前也学过web.xml中可以配置处理异常的Jsp页面,但是这还远远不够,SpringMVC对错误处理提供了更好的解决方案。SpringMVC中提供的异常处理方式有两种1)使用SpringMVC提供的简单异常处理器SimpleMappingExceptionResolver2)使用@ExceptionHandler注解实现局部异常处.原创 2021-05-18 20:22:00 · 413 阅读 · 1 评论 -
Resutful接口规范
一、什么是ResutfulRestful就是一个资源定位及资源操作的风格,不是标准也不是协议,只是一种风格,是对http协议的诠释。回顾:之前的URL地址查询所有的用户:http://localhost:8080/springmvc/user/selectAllUser按ID查询用户:http://localhost:8080/springmvc/user/selectByUserId?id=12删除用户:http://localhost:8080/springmvc/user/deleteByUs原创 2021-05-18 11:04:57 · 2472 阅读 · 1 评论 -
Springmvc集成fastjson
一、移动互联网的架构变化二、SringMVC中集成JSONSpringMVC内置的JSON处理Jackson,JSONLib,GSON,阿里FastJsonspringmvc集成FastJsonSpring默认使用Jackson处理JSON数据,在实际开发中,开发者也可以选择使用其他开发框架处理JSON,接下来我们就使用业界非常受欢迎的FastJson来完成首先在pom.xml文件中添加fastjson的依赖<!-- https://mvnrepository.com/artifact/原创 2021-05-16 22:52:01 · 688 阅读 · 0 评论 -
RBAC(权限管理系统)
RBEC(权限管理系统)1.RBEC的项目中重要性在企业项目中,由于人员的权限不一样,而且也有临时更换或者改变权限的情况,增加了新的用户,或者增加了新的角色,增加新的权限也会需要改变,所以迫切需要一种动态的权限分配系统,也是提高项目安全性非常重要的保证。2.所使用的技术数据库:MySQL5.5开发工具:IDEA2018项目构建工具:Maven3.6.1前端使用的技术:HTML5+jsp+layui+jQuery+zTree后端使用的技术:MyBatis3.6.1,Spring5.2.7,Sp原创 2021-05-16 10:17:42 · 1692 阅读 · 1 评论 -
Spring集成Junit4
Spring支持Junit4的测试的步骤spring其中的一个特点就是方便程序的测试可以用非容器依赖的编程方式进行几乎所有的测试工作,在 Spring里,测试不再是昂贵的操作,而是随手可做的事情。例如 :Spring 对 Junit4支持,可以通过注解方便的测试 Spring程序。①添加依赖<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId>原创 2021-05-12 21:48:05 · 520 阅读 · 0 评论 -
SSM整合
SSM整合一、spring和mybatis的整合 <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"></property> <property name="typeAliasesPackage" value="com.acoffe原创 2021-05-10 22:12:44 · 95 阅读 · 0 评论 -
SpringMVC
一、基于注解的springMVC应用【掌握】spring2.5版本增加了可基于注解的控制器,也就是说控制器不用实现Controller接口,通过注解类型来描述,下面演示一个基于注解的控制器SpringMVC的WEB应用由于使用了注解类型,因此不需要再在配置文件中使用XML描述bean,Spring使用扫措机制查找应用程序中所有基于注解的控制器类<context.component-scan basepackage=“com.wonluxy.controller”>制定需要spring扫描co原创 2021-05-07 20:08:39 · 129 阅读 · 0 评论 -
SpringMVC入门
RBEC(权限管理系统)1.RBEC的项目中重要性在企业项目中,由于人员的权限不一样,而且也有临时更换或者改变权限的情况,增加了新的用户,或者增加了新的角色,增加新的权限也会需要改变,所以迫切需要一种动态的权限分配系统,也是提高项目安全性非常重要的保证。2.所使用的技术数据库:MySQL5.5开发工具:IDEA2018项目构建工具:Maven3.6.1前端使用的技术:HTML5+jsp+layui+jQuery+zTree后端使用的技术:MyBatis3.6.1,Spring5.2.7,原创 2021-05-06 21:01:51 · 133 阅读 · 0 评论 -
Spring事务管理
一、添加声明式事务业务层的职能不仅仅是调用DAO这么简单,事务处理是任何企业级应用开发中不可回避的一个重要问题,Spring提供了声明式事务处理机制,它基于AOP实现,无须编写任何事务管理代码,所有的工作全在配置文件中完成。这意味着业务代码完全分离,配置即可用,降低了开发和维护的难度。1.为什么要添加事务银行转账的例子首先创建数据库#账户表CREATE TABLE account(id INT PRIMARY KEY AUTO_INCREMENT,accountno VARCHAR(50),原创 2021-04-29 20:52:34 · 143 阅读 · 0 评论 -
Spring对MyBatis的整合
一、Spring对MyBatis的整合①首先在pom.xml中添加所需要的依赖: <dependencies> <!--测试包--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11<原创 2021-04-27 20:53:48 · 182 阅读 · 0 评论 -
Spring(AOP)
一.代理代理分为:静态代理动态代理代理模式︰目标对象,增强部分的内容什么是代理代理模式( Proxy )是通过代理对象访问目标对象,这样可以在目标对象基础上增强额外的功能,如添加权限,访问控制和审计等功能。①静态代理//接口public interface CookieService { public void Cooking();}//被代理类public class CookieServiceImpl implements CookieService { @Ove原创 2021-04-27 12:51:36 · 127 阅读 · 1 评论 -
Spring(IOC)
一、SpringIOC和DI概念IOC和DI是一回事,只是在不同的角度去诠释同一个问题,就是为了降低程序的耦合性。1.控制反转(IOC)在使用Spring容器之前使用Spring之后由代码来维护程序之间的关系,有了spring容器之后,程序之间的这种关系,控制权由应用程序转移到Spring容器,控制权发生了反转,这就是控制反转,称为IOC。2.DI(依赖注入)依赖注入:由程序运行的过程中临时组装各组件(各组件之间要有接口)但是不是所有组件都需要放在Spring容器中来管理,只有那种容易需原创 2021-04-25 09:38:56 · 174 阅读 · 0 评论 -
Spring框架
图解1、Spring 有两个核心部分:IOC 和 Aop(1)IOC(Inversion od Control):控制反转,把创建对象过程交给 Spring 进行管理,又叫依赖注入(DI:Dependency Injection)(2)Aop(Aspect Oriented Programming):面向切面,不修改源代码进行功能增强2、Spring 特点(1)方便解耦,简化开发(2)Aop 编程支持(3)方便程序测试(4)方便和其他框架进行整合(5)方便进行事务操作(6)降低 API原创 2021-04-20 13:39:44 · 182 阅读 · 0 评论 -
MyBatis高级(逆向工程及MyBatis注解)
一、使用MBG逆向工程生成代码在企业中为了提高开发效率,有很多通用代码实际上是直接使用代码生成器生成出来的。官方网址:http://mybatis.org/generator/使用步骤:1、添加插件 <plugins> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId&原创 2021-04-19 21:43:14 · 1425 阅读 · 3 评论 -
MyBatis高级(分页插件、MyBatis缓存)
目标:1.MyBatis的分页插件【掌握】2.MyBatis缓存【了解】3.MyBatis注解【扩张掌握】4.MyBatis逆向工程【掌握】一、使用pageHelper插件完成分页分页功能是非常常用的在我们实际开发中。优点:简化分页开发,提高开发效率使用pageHelper可以轻松的更改数据库企业使用的非常广泛下载地址:https://github.com/pageHelper/Mybatis-pageHelper第一步:我们可以使用Maven进行配置,将依赖项添加到pom.x原创 2021-04-18 11:48:16 · 356 阅读 · 0 评论 -
MyBatis入门 (三 动态SQL)
当我们想按价格区间或者折扣等等因素去搜索我们想要的东西,在原来的JDBC中的时候我们只能使用if来判断,然后拼接SQL语句的方式来实现。select * from product where discount=80% and productName like '%中%' ....一、动态SQL在使用 JDBC 的过程中, 根据条件进行 SQL 的拼接是很麻烦且很容易出错的。动态SQL是一个可以变化的sql语句,MyBatis 动态 SQL 的出现就能够使用MyBatis通过 OGNL 来进行动态 .原创 2021-04-17 15:16:21 · 621 阅读 · 0 评论 -
Mybatis入门(二 关联查询)
一、关联关系分类1.一对一关联:一个人有一张身份证,一张身份证对应一个人2.一对多关联:一个城市有很多街道3.多对多关联:一个老师有多个学生,一个学生有多个老师二、一对一关联mybatis中处理一对一关联的方法有四种.①包装类方式(仅了解)1.数据库表的创建#身份证表CREATE TABLE tb_card (cid INT PRIMARY KEY AUTO_INCREMENT,CODE VARCHAR(18));#测试数据INSERT INTO tb_card (CODE) V原创 2021-04-15 21:24:25 · 282 阅读 · 0 评论 -
MyBatis的入门(一)
本章目标1.MyBatis简介2.MyBatis资源的获取4.第一个MyBatis的程序5.MyBatis的工作原理6.MyBatis的核心对象7.MyBatis的核心配置文件持久化的概念所谓的持久化就是将瞬时状态的数据变成持久状态的数据的过程一些瞬时状态的数据变成持久状态的例子:内存→硬盘:IO/FileXMLDB一 、MyBatis概述MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software原创 2021-04-13 14:08:47 · 351 阅读 · 1 评论 -
版本控制器(Git)
本章目标1.版本控制器的概念【理解】2.Git的安装和配置【掌握】3.常用Git命令【掌握】4.分支管理【理解】5.码云6.IDEA中配置版本控制器【重点掌握】具体内容一.了解版本控制1.什么是版本控制团队开发的必然产物2.为什么需要版本控制记录文件所有历史变化查看修改情况和责任人错误恢复共享数据,协作开发3.VCS(Version Control System)的分类集中式版本控制系统(VSS,CVS,SVN)先说集中式版本控制系统,版本库是集中存放在中央服务器的,而干活原创 2021-03-30 09:43:29 · 304 阅读 · 0 评论 -
在 Idea 中配置 Maven
1、在 Idea 中配置 MavenIdea 中也自带 Maven 插件,而且我们也可以给自带的 Maven 插件进行配置,所以我们可以使用自带的 Maven,也可以使用我们安装的 Maven 核心程序1.配置我们自己安装的 Maven2.设置 Maven 自动导包2、 配置本地仓库和阿里云镜像及JDK版本2.1配置本地仓库1.Maven 的核心程序并不包含具体功能,仅负责宏观调度。具体功能由插件来完成。Maven 核心程序会到本地仓库中查找插件。如果本地仓库中没有就会从远程中央仓库下载。原创 2021-03-29 21:26:20 · 237 阅读 · 0 评论 -
Maven
前言: 生产环境下开发不再是一个项目一个工程,而是每一个模块创建一个工程,而多个模块整合在一起就需要使用到像 Maven 这样的构建工具。1、为什么(Why)?1.1 真的需要吗?Maven 是干什么用的?这是很多同学在刚开始接触 Maven 时最大的问题。之所以会提出这个问题,是因为即使不使用 Maven 我们仍然可以进行 B/S 结构项目的开发。从表述层、业务逻辑层到持久化层再到数据库都有成熟的解决方案——不使用 Maven 我们一样可以开发项目啊?2、目前的技术在开发中存在的问题[why]原创 2021-03-29 19:34:47 · 275 阅读 · 0 评论 -
Spring5 框架新功能
部分Spring5 框架新功能1、整个 Spring5 框架的代码基于 Java8,运行时兼容 JDK9,许多不建议使用的类和方法在代码库中删除2、Spring 5.0 框架自带了通用的日志封装(1)Spring5 已经移除 Log4jConfigListener,官方建议使用 Log4j2(2)Spring5 框架整合 Log4j2第一步 引入 jar 包第二步 创建 log4j2.xml 配置文件<?xml version="1.0" encoding="UTF-8"?>&原创 2021-03-21 16:38:52 · 127 阅读 · 0 评论 -
Spring5(JdbcTemplate)
JdbcTemplate(概念和准备)1、什么是 JdbcTemplate(1)Spring 框架对 JDBC 进行封装,使用 JdbcTemplate 方便实现对数据库操作2、准备工作(1)引入相关 jar 包(2)在 spring 配置文件配置数据库连接池 <!-- 数据库连接池 --> <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" destroy原创 2021-03-19 19:49:15 · 111 阅读 · 0 评论 -
Spring5框架(AOP)
1、什么是 AOP(1)面向切面编程(方面),利用 AOP 可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。(2)通俗描述:不通过修改源代码方式,在主干功能里面添加新功能(3)使用登录例子说明 AOPAOP(底层原理)1、AOP 底层使用动态代理(1)有两种情况动态代理第一种 有接口情况,使用 JDK 动态代理创建接口实现类代理对象,增强类的方法第二种 没有接口情况,使用 CGLIB 动态代理创建子类的代理对象原创 2021-03-17 20:29:57 · 228 阅读 · 1 评论 -
Spring5 框架(IOC)
Spring5 框架概述1、Spring 是轻量级的开源的 JavaEE 框架2、Spring 可以解决企业应用开发的复杂性3、Spring 有两个核心部分:IOC 和 Aop(1)IOC:控制反转,把创建对象过程交给 Spring 进行管理(2)Aop:面向切面,不修改源代码进行功能增强4、Spring 特点(1)方便解耦,简化开发(2)Aop 编程支持(3)方便程序测试(4)方便和其他框架进行整合(5)方便进行事务操作(6)降低 API 开发难度Spring5 入门案例1、下原创 2021-03-16 13:07:43 · 224 阅读 · 0 评论
分享