MyBatis

Mybatis(一)Mybatis相关概念

跟風遠走 提交于 2020-03-25 13:33:54
1.1 传统的JDBC实现 public static void main(String[] args) { Connection connetion = null; PreparedStatement preparedStatement = null; ResultSet resultSet = null; try{ //加载数据库驱动 Class.forName("com.mysql.jdbc.Driver"); connetion = DriverManager.getConnetion("jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf-8","root","root"); //定义SQL语句 String sql = "Select * from user where username = ?"; //获取预处理statement preparedStatement = connection.preparedStatement(sql); preparedStatement.setString(1,"zbc"); resultSet = preparedStatement.executeQuery(); while (resultSet.next()) { int id = resultSet.getInt

基础开发之Mybatis Plus基础使用

懵懂的女人 提交于 2020-03-25 12:25:23
3 月,跳不动了?>>> Mybatis-Plus 是一款 Mybatis 动态 SQL 自动注入 Mybatis 增删改查 CRUD 操作中间件, 减少你的开发周期优化动态维护 XML 实体字段,无入侵全方位 ORM 辅助层让您拥有更多时间陪家人。 以下内容 以Mybatis-Plus 3.0.1版本 为蓝本; 详情见官方文档: https://mp.baomidou.com/guide/#%E7%89%B9%E6%80%A7 springboot2.0 集成 mybatis-plus pom引入所需jar包 <!-- mybatisPlus 核心库 --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.1.0</version> </dependency> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-extension</artifactId> <version>3.1.0</version> </dependency> <!-- mybatis 代码自动生成器 --> <dependency> <groupId

IDEA 常用插件事Java开发者利器

无人久伴 提交于 2020-03-25 12:25:00
3 月,跳不动了?>>> 以下来自互联网收集,以做自己后续记录更新 JRebel for IntelliJ 一款热部署插件,只要不是修改了项目的配置文件,用它都可以实现热部署。收费的,破解比较麻烦。不过功能确实很强大。算是开发必备神器了。热部署快捷键是control+F9/command+F9。 .ignore git提交时过滤掉不需要提交的文件,很方便,有些本地文件是不需要提交到Git上的。 CamelCase 使用方法: 将不是驼峰格式的名称,快速转成驼峰格式,安装好后,选中要修改的名称,按快捷键shift+alt+u。 Lombok plugin 开发神器,可以简化你的实体类,让你i不再写get/set方法,还能快速的实现builder模式,以及链式调用方法,总之就是为了简化实体类而生的插件。 Mybatis plugin 官方地址:https://www.codesmagic.com/mybatisplugin 可以在mapper接口中和mapper的xml文件中来回跳转,就想接口跳到实现类那样简单。 提供Mapper接口与配置文件中对应SQL的导航 编辑XML文件时自动补全 根据Mapper接口, 使用快捷键生成xml文件及SQL标签 ResultMap中的property支持自动补全,支持级联(属性A.属性B.属性C) 快捷键生成@Param注解 XML中编辑SQL时,

mybatis入门篇

人盡茶涼 提交于 2020-03-25 08:44:34
在之前写了mybatis是如何使用的,但是并没有对mybatis进行详细的解释,这里再补一篇 mybatis是什么? MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。 mybatis框架结构图: 接口层:封装了基本的功能,可以直接使用 数据处理层:接口层会将参数、sql语句等传递到数据处理层,在数据处理层进行数据库操作,并返回结果集,返回的结果集经过关系映射,可以直接返回对象等。 基础支撑层:用来向数据处理层提供基本的功能,如数据库的连接对象创建,关闭,事务的创建,数据库的连接,缓存等 mybatis的配置文件详解(这里写的是mybatis最简单的搭建,更多详细属性请参考 官方文档 ) 在idea中,我们搭建框架是非常快的,使用mybatis需要创建配置文件,配置文件就是基础支撑层,是整个框架的基础,但是在idea中,没有mybatis的配置文件的模板,配置文件中的xml文件内容不容易记,因此我们先在idea中创建mybatis的配置文件的模板: 首先创建一个maven项目于

Mybatis Generator 使用com.mysql.cj.jdbc.Driver遇到的问题

泪湿孤枕 提交于 2020-03-25 06:44:48
Mybatis Generator 使用com.mysql.cj.jdbc.Driver遇到的问题 今天闲来无事,准备搭一套SSM的环境,当然所有的jar包都用最新的。 Mybatis使用3.4.6,Mysql使用最新的8.0,mysql-connector-java用的8.0.11。 安装好数据库后,新建了一个test库,并创建了一张user表。配置好Mybatis的配置文件,如下: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd" > <generatorConfiguration> <!-- 指定数据连接驱动jar地址 --> <classPathEntry location="D:\.m2\repository\mysql\mysql-connector-java\8.0.11\mysql-connector-java-8.0.11.jar" /> <!-- 一个数据库一个context --> <context id=

Mybatis(四) Mybatis缓存

瘦欲@ 提交于 2020-03-24 20:39:47
4.1 Mybatis缓存概念   缓存就是内存中的数据,常常来自对数据库查询结果的保存,使用缓存,我们可以避免频繁的与数据进行交互,进而提高响应速度。 Mybatis 也提供了对缓存的支持,分为一级缓存和二级缓存,通过下图来理解: 一级缓存是SqlSession级别的缓存。在操作数据库时需要构造sqlSession对象,在对象中有一个数据结构(HashMap)用于存储缓存数据。不同的sqlSession2直接的缓存区域(HashMap)是互相不影响。 二级缓存是Mapper级别的缓存,多个SqlSession去操作同一个Mapper查询的sql语句,多个sqlSession可以共用二级缓存,二级缓存是跨SqlSession的。 4.2 一级缓存 4.2.1 一级缓存案例   mybatis一级缓存是默认开启的 @Test public void firstLevelCache() throws IOException { InputStream resourceAsSteam = Resources.getResourceAsStream("sqlMapperConfig.xml"); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsSteam);

spring cloud spring boot mybatis构建java版 分布式微服务 b2b2c o2o电子商务云商平台

一笑奈何 提交于 2020-03-24 19:23:22
3 月,跳不动了?>>> 使用技术: Spring Cloud+Spring Boot+Mybatis+微服务+服务监控+可视化运营 B2B2C平台: 1. 平台管理端(包含自营) 2. 商家平台端(多商户入驻) 3. PC买家端、手机wap/公众号买家端 4. 微服务(30个通用微服务如:商品、订单、购物车、个人中心、支付、文件、运营等,支持原生Android、ios、react、小程序、vue、h5等前端调用) 5. 聚合小程序(已联调微服务) 核心架构:Spring Cloud、Spring Boot、Mybatis、Redis、Bootstrap html5+css3、小程序、原生APP 核心思想:产品微服务、模块化、原子化、持续集成、分布式、集群部署 开发模式:代码生成工具、驱动式开发模式、提高开发效率 JDK:JDK 1.8+ 数据库:MYSQL 5.6+ 获取源码可以加求求:1038774626 SAAS小程序: 1. 平台管理端 2. 商家平台端(多商户入驻) 3. 微服务(30个通用微服务如:商品、订单、购物车、个人中心、支付、文件、运营等,支持原生Android、ios、react、小程序、vue、h5等前端调用) 4. SAAS小程序 B2C电子商城: 1. 平台管理端(包含自营) 2. PC买家端、手机wap/公众号买家端 3. 微服务(30个通用微服务如

SSM+mybatis+c3p0+jsp常用整合注册分页插件pageHelper

耗尽温柔 提交于 2020-03-24 14:29:45
3 月,跳不动了?>>> 1.首先引入现骨干依赖,我们以spring5版本为例。 <dependencies> <!--springmvc引入依赖的包--> <!--springmvc--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.0.2.RELEASE</version> </dependency> <!--spring-jdbc--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.0.2.RELEASE</version> </dependency> <!--spring的单元测试--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>5.0.2.RELEASE</version> </dependency> <!--面向切面编程--> <dependency> <groupId>org.springframework<

Spring Boot常用注解介绍及使用

我怕爱的太早我们不能终老 提交于 2020-03-24 14:07:07
3 月,跳不动了?>>> 一、项目配置注解 1、@SpringBootApplication 这是一个注解组合,包括了@SpringBootConfiguration、@EnableAutoConfiguration和@ComponentScan注解。 (1) @SpringBootConfiguration 继承自@Configuration,对于熟悉spring的开发者而言,此标注当当前类是配置类,并会将当前类内声明的一个或多个以@Bean注解标记的方法的实例纳入到spring容器中,并且实例名就是方法名。 (2)@EnableAutoConfiguration 这个注解就是springboot能自动进行配置的魔法所在。主要通过此注解,能将所有符合自动配置条件的bean的定义加载到spring容器中,比如根据spring-boot-starter-web,来判断你的项目是否需要添加webmvc和tomcat,就会自动的帮你配置web项目中所需要的默认配置。需要排除一些无需自动配置的类时,可利用exclude进行排除。 (3)@ComponentScan 会扫描当前包及其子包下被@Component, @Controller,@Service,@Repository 等注解标记的类并纳入到spring容器中进行管理 2、@MapperScan