MyBatis

MySQL 存储过程示例

杀马特。学长 韩版系。学妹 提交于 2020-07-28 12:20:09
两种方法获取返回值 1.用select BEGIN SELECT * from nodelist t where t.id = id; END; 2.用out模式或者inout模式 BEGIN END; 声明变量 datatype 为 MySQL 的数据类型 declare cid int unsigned default 40000; declare ccs VARCHAR(255) default ""; 赋值 set @tid = inParam; set cid = cid +@tid; if-else case-when-then while IF @tid = 1 then set @tid = 2; else set cid = 20; end if; case @tid when 0 THEN set @tid=100; when 1 then set @tid=200; else set @tid=300; end case; while @tid>0 do set cid=cid+1; set @tid = @tid-1; end while; mybatis调用MySQL函数和过程 <!-- mybatis xml --> <select id="shopOrderQty" resultType="java.lang.Integer"

Mybatis问题记录-狂神版

ε祈祈猫儿з 提交于 2020-07-28 12:06:54
目录 前言 配置文件包含中文注释导致出错 解决办法1 解决办法2 解决办法3 IDEA注释如何在光标位置生成 使用association时映射出错 排错过程 排查问题1 排查问题2 问题3 挖坑 面试高频 后记 前言 B站Up狂神说的教程,写的挺好的,东西也新。强烈推荐 https://www.bilibili.com/read/cv5702420 微信文档 狂神说MyBatis01:第一个程序: https://mp.weixin.qq.com/s/vy-TUFa1Rb69ekxiEYGRqw 狂神说MyBatis02:CRUD操作及配置解析: https://mp.weixin.qq.com/s/efqEupNSPZUKqrRoGAnxzQ 狂神说MyBatis03:ResultMap及分页: https://mp.weixin.qq.com/s/LXXIR7W_kZBHPIDqkNwrLg 狂神说MyBatis04:使用注解开发: https://mp.weixin.qq.com/s/3x3ynp5qhGNP-leeOxBU6g 狂神说MyBatis05:一对多和多对一处理: https://mp.weixin.qq.com/s/Dpt0LHTgx0kL7RCk8PZ2aw 狂神说MyBatis06:动态SQL: https://mp.weixin.qq.com/s

JDBC连接Mysql数据库过程【一条命途多舛的SQL】

核能气质少年 提交于 2020-07-28 09:20:59
JDBC连接Mysql数据库在目前的行业和工作中几乎很少用到了,很多新手对此也不以为然,就好比现在我们都小康了,家家户户开轿车了,要啥自行车。但是越是底层的东西,越能体现出它的强大,我们用的很多框架都是封装了而已,就好比手机,你拨个号码就能打电话,但是中间涉及到方方面面的通讯和协议都隐藏起来了。我后期要说的Mybatis也是对JDBC进行了更加友好的封装,所以我们先了解一下JDBC的过程,一步一步一个脚印,搞明白做起来。 废话不多说,至于JDBC是什么,有什么用,用什么语言,请自行百度,我这里使用的是JAVA,下面讲解JDBC的流程 1. 加载驱动 java.sql.Driver 它在MySQL Connector / J 中实现的类的名称 是 com.mysql.jdbc.Driver,也就是驱动程序。 Class.forName(DRIVER_CLASS_NAME) 2. 获取数据库连接 Connection 与数据库建立连接关系,通常为 DriverManager.getConnection(url, username, password)。这里可以很明显的感觉出来,每个元素所产生的作用 2.1 获取连接的时候需要设置数据库相关的参数 URL: 数据库的地址及库的名称,通用的格式 protocol//[hosts][/database][?properties]

计算机毕业设计之SpringBoot物流管理系统

瘦欲@ 提交于 2020-07-28 08:33:01
开发技术:springboot mybatis layUI 物流管理系统的子功能模块包括:系统管理、单证、财务、报价、资料模块等。以下就是对各个子功能模块进行分析说明: (1)系统管理模块 系统管理模块包括角色管理、用户管理、修改密码。最高权限管理员可以通过角色管理去设置普通管理员的权限,通过用户管理修改、删除普通管理员等操作。普通管理员只能修改自己的密码。 (2)单证 单证模块主要就是运单维护、签收单查询和快件跟踪查询。管理员可以通过单号搜索寄件信息,对运输中的订单可以进行信息修改;签收单查询就是查看已签收的订单详细信息的功能,最后快件跟踪查询是对快件跟踪报道,每个经停站都会记录。 (3)报价 该模块只有两个功能,一个就是对运单的报价维护,不同地区不同的运输方式和物品重量都会对价格产生影响,所以需要根据时势去进行修改;另一个是提成,每个网点都会根据其网点的等级获得相对应的提成,网点等级越高就会获得越多的提成。 (4)资料模块 资料模块是系统的主要模块,其中有网点维护、员工维护、车辆维护、物品类型维护和快递类型维护。通过该模块的网点维护可以添加、修改网点的信息,而添加网点的话就要为其添加员工;员工维护模块就是为其网点服务的,可以添加、删除和编辑员工的资料,添加时就会对其所在的网点进行确认,确定员工是属于哪个网点;剩下车辆维护、物品类型维护和快递类型维护都是对其资料的增删查。 来源:

计算机毕业设计之SpringBoot物流管理系统

[亡魂溺海] 提交于 2020-07-28 08:32:17
开发技术:springboot mybatis layUI 物流管理系统的子功能模块包括:系统管理、单证、财务、报价、资料模块等。以下就是对各个子功能模块进行分析说明: (1)系统管理模块 系统管理模块包括角色管理、用户管理、修改密码。最高权限管理员可以通过角色管理去设置普通管理员的权限,通过用户管理修改、删除普通管理员等操作。普通管理员只能修改自己的密码。 (2)单证 单证模块主要就是运单维护、签收单查询和快件跟踪查询。管理员可以通过单号搜索寄件信息,对运输中的订单可以进行信息修改;签收单查询就是查看已签收的订单详细信息的功能,最后快件跟踪查询是对快件跟踪报道,每个经停站都会记录。 (3)报价 该模块只有两个功能,一个就是对运单的报价维护,不同地区不同的运输方式和物品重量都会对价格产生影响,所以需要根据时势去进行修改;另一个是提成,每个网点都会根据其网点的等级获得相对应的提成,网点等级越高就会获得越多的提成。 (4)资料模块 资料模块是系统的主要模块,其中有网点维护、员工维护、车辆维护、物品类型维护和快递类型维护。通过该模块的网点维护可以添加、修改网点的信息,而添加网点的话就要为其添加员工;员工维护模块就是为其网点服务的,可以添加、删除和编辑员工的资料,添加时就会对其所在的网点进行确认,确定员工是属于哪个网点;剩下车辆维护、物品类型维护和快递类型维护都是对其资料的增删查。 来源:

Java Spring Boot VS .NetCore (五)MyBatis vs EFCore

耗尽温柔 提交于 2020-07-28 07:34:11
介绍 添加MyBatis先关的依赖包 <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.38</version> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.1</version> </dependency> MyBatis 有两种配置方式 一种是通过XML来实现 相关操作 解耦性相对较强,第二种则是以注解的方式来实现,这里已第二种方式说明 使用这种方式还需要配置下 指向实体类的包路径 mybatis.type-aliases- package =com.liyouming.demo.domain.Entitys 在 启动入口里面添加注解指向 Mapper操作功能包地址 @MapperScan("com.liyouming.demo.Mapper") 下面的代码是功能类User 直接可以通过注解的方式完成相关方法的操作 public interface UserMapper { @Select( "SELECT

SSM整合基本配置说明

微笑、不失礼 提交于 2020-07-28 06:11:26
SSM整合配置文件是一个重点和难点,本文重点关注SSM整合的配置文件,不涉及Java代码。重点关注红色粗体标识的配置文件! 目录 一 基本环境 二 Mybatis层 三 spring层 四 SpringMVC层 五 所有配置文件整合到spring:applicationContext.xml 六 参考 一 基本环境 1 基本POM依赖 <dependencies> <!--Junit--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> <!--数据库驱动--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.47</version> </dependency> <!-- 数据库连接池 --> <dependency> <groupId>com.mchange</groupId> <artifactId>c3p0</artifactId> <version>0.9.5.2</version> </dependency> <!--Servlet - JSP -->

10w行级别数据的Excel导入优化记录

两盒软妹~` 提交于 2020-07-28 06:09:18
需求说明 项目中有一个 Excel 导入的需求:缴费记录导入 由实施 / 用户 将别的系统的数据填入我们系统中的 Excel 模板,应用将文件内容读取、校对、转换之后产生欠费数据、票据、票据详情并存储到数据库中。 在我接手之前可能由于之前导入的数据量并不多没有对效率有过高的追求。但是到了 4.0 版本,我预估导入时Excel 行数会是 10w+ 级别,而往数据库插入的数据量是大于 3n 的,也就是说 10w 行的 Excel,则至少向数据库插入 30w 行数据。因此优化原来的导入代码是势在必行的。我逐步分析和优化了导入的代码,使之在百秒内完成(最终性能瓶颈在数据库的处理速度上,测试服务器 4g 内存不仅放了数据库,还放了很多微服务应用。处理能力不太行)。具体的过程如下,每一步都有列出影响性能的问题和解决的办法。 导入 Excel 的需求在系统中还是很常见的,我的优化办法可能不是最优的,欢迎读者在评论区留言交流提供更优的思路 声明:本文首发于博客园,作者:后青春期的Keats;地址: https://www.cnblogs.com/keatsCoder/ 转载请注明,谢谢! 一些细节 数据导入:导入使用的模板由系统提供,格式是 xlsx (支持 65535+行数据) ,用户按照表头在对应列写入相应的数据 数据校验:数据校验有两种: 字段长度、字段正则表达式校验等

咕泡三期 Java高级开发 java进阶大型互联网架构师专题

瘦欲@ 提交于 2020-07-28 04:27:17
咕泡三期 Java高级开发|java进阶大型互联网架构师专题 微云链接: 链接:https://share.weiyun.com/4Ruecunx 密码:m4xy7s 百度网盘:链接: https://pan.baidu.com/s/1UBSJaWNobkTmZ7uTGVMRQg 密码: 1bpw 如果失效联系微信:itit11223344 Java架构班开学典礼 【回放】Java架构班开学典礼(2月19日 20:00-21:30) 02 架构师内功心法之设计原则 【回放】为什么要学习软件架构设计原则(2月22日 20:00-22:00) 03 架构师内功心法之设计模式 【回放】设计模式总览及工厂模式详解(2月23日 20:00-22:00) 【回放】单例模式详解(2月26日 20:30-22:30) 【回放】原型模式与建造者模式详解(2月29日 20:00-22:00) 【回放】深度分析代理模式详解(3月1日 20:00-22:00) 【回放】门面模式与装饰器模式详解(3月4日 20:30-22:30) 【回放】享元模式与组合模式详解(3月7日 20:00-22:00) 【回放】适配器模式与桥接模式详解(3月8日 20:00-22:00) 【回放】委派模式与模板方法模式详解(3月11日 20:30-22:30) 【回放】策略模式与责任链模式详解(3月14日 20:00-22:00

Mybatis批量删除功能实现

爷,独闯天下 提交于 2020-07-28 03:55:45
我是阿福,公众号「阿福聊编程」作者, 一个在后端技术路上摸盘滚打的程序员 ,在进阶的路上,共勉!文章已收录在 JavaSharing 中,包含Java技术文章,面试指南,资源分享。 前台实现 表单实现 首先定义全选框的的id属性<code>id="summaryBox"</code> <th width="30"><input id="summaryBox" type="checkbox"></th> 然后定义一个数据单选框的class属性 <code>class="itemBox"</code>,说明:adminId属性是HTML标签本身并没有的属性,是我们强行设置的。 <th width="30"><input adminId="${item.id}" class="itemBox" type="checkbox"></th> 整个表单文件 <table class="table table-bordered"> <thead> <tr> <th width="30">#</th> <th width="30"><input id="summaryBox" type="checkbox"></th> <th>账号</th> <th>名称</th> <th>邮箱地址</th> <th width="100">操作</th> </tr> </thead> <tbody> <c:if