MyBatis

mybatis Generator生成代码及使用方式

笑着哭i 提交于 2020-05-02 04:39:21
Article1 一、为什么要有mybatis   mybatis 是一个 Java 的 ORM 框架,ORM 的出现就是为了简化开发。最初的开发方式是业务逻辑和数据库查询逻辑是分开的,或者在程序中编写 sql 语句,或者调用 sql 存储过程。这样导致思维需要在语言逻辑和 sql 逻辑之间切换,导致开发效率低下。所以出现了一系列的 ORM 框架,ORM 框架将数据库表和 Java 对象对应起来,当操作数据库时,只需要操作对象的 Java 对象即可,例如设置几个 and 条件,只需要设置几个属性即可。 二、为什么要有mybatis generator   虽然说有了 mybatis 框架,但是学习 mybatis 也需要学习成本,尤其是配置它需要的 XML 文件,那也是相当繁琐,而且配置中出现错误,不容易定位。当出现莫名其妙的错误或者有大批量需要生成的对象时,时常会有种生无可恋的感觉在脑中徘徊。故此, mybatis generator 应运而生了。 它只需要简单配置,即可完成大量的表到 mybatis Java 对象的生成工作,不仅速度快,而且不会出错,可让开发人员真正的专注于业务逻辑的开发。 官方提供的 mybatis generator 功能比较简单,对于稍微复杂但是开发中必然用到的分页功能、批量插入功能等没有实现,但已经有成熟的插件功能支持。

【Java】Spring MVC 扩展和SSM框架整合

泄露秘密 提交于 2020-05-02 04:35:16
开发web项目通常很多地方需要使用ajax请求来完成相应的功能,比如表单交互或者是复杂的UI设计中数据的传递等等。对于返回结果,我们一般使用JSON对象来表示,那么Spring MVC中如何处理JSON对象? JSON对象的处理 使用@ResponseBody实现数据输出 要使用JSON,所以导一下JSON工具包。 JSON工具包 ,密码4i0l。 Controller层代码示例(这里使用的是阿里巴巴的 fastjson): 1    /** 2 * 判断注册时用户编码是否唯一 3 * @param request 获取表单数据 4 * @param model 用于传递数据到页面 5 * @return ajax需要解析的JSON格式数据 6 */ 7 @RequestMapping("/isExists" ) 8 @ResponseBody 9 public String isExists(HttpServletRequest request, Model model) { 10 String userCode = request.getParameter("userCode" ); 11 int count = userService.queryName(userCode); 12 Map<String, Object> map = new HashMap<String,

Java Spring Boot VS .NetCore (八) Java 注解 vs .NetCore Attribute

瘦欲@ 提交于 2020-05-02 04:16:29
Java Spring Boot VS .NetCore (一)来一个简单的 Hello World Java Spring Boot VS .NetCore (二)实现一个过滤器Filter Java Spring Boot VS .NetCore (三)Ioc容器处理 Java Spring Boot VS .NetCore (四)数据库操作 Spring Data JPA vs EFCore Java Spring Boot VS .NetCore (五)MyBatis vs EFCore Java Spring Boot VS .NetCore (六) UI thymeleaf vs cshtml Java Spring Boot VS .NetCore (七) 配置文件 Java Spring Boot VS .NetCore (八) Java 注解 vs .NetCore Attribute Java Spring Boot VS .NetCore (九) Spring Security vs .NetCore Security Java Spring Boot VS .NetCore (十) Java Interceptor vs .NetCore Interceptor Java Spring Boot VS .NetCore (十一)自定义标签 Java Tag

Java工程师学习指南第3部分:Spring与SpringMVC源码解析

会有一股神秘感。 提交于 2020-05-02 04:11:30
本文整理了微信公众号【Java技术江湖】发表和转载过的Spring全家桶优质文章,想看到更多Java技术文章,就赶紧关注吧。 前后端分离,我怎么就选择了 Spring Boot + Vue 技术栈? 玩转SpringBoot:整合MyBatis实例 图解源码 | SpringBoot中自动配置原理 Java开发者必须掌握的20个Spring 常用注解 基于SpringBoot开发一个Restful服务,实现增删改查功能 从 Spring 集成 MyBatis 到浅析 Java 动态代理 为什么越来越多的开发者选择使用Spring Boot? Spring 常犯的十大错误,打死都不要犯! Spring Boot 面试,一个问题就干趴下了! SpringBoot+MyBatis+MySQL读写分离实战 面试题:你简历中写到熟悉Spring源码,那你给我说说它用到了那些设计模式? 为什么选择 Spring 作为 Java 框架? 惊呆了,Spring Boot居然这么耗内存! 一位大佬的Springboot使用心得。 Spring Boot 注解:快速掌握全家桶的最佳实践 本专栏主要讲解Spring和SpringMVC的实现原理。Spring是最流行的Java框架之一。本专栏文章主要包括IOC的实现原理分析,AOP的实现原理分析,事务的实现源码分析等。关注微信公众号【Java技术江湖

谈谈Java Resources用法

巧了我就是萌 提交于 2020-05-02 03:32:31
做Ibatis的配置文件时,用到了Java Resources,把配置文件放置在项目工程中,直接运行始终找不到资源,只能加上几句Java代码查看类加载路径: ClassLoader sysClassLoader = ClassLoader.getSystemClassLoader(); URL[] urls = ((URLClassLoader) sysClassLoader).getURLs(); for (int i = 0; i < urls.length; i++) { System.out.println(urls[i].getFile()); } 输出为: /D:/wps/club/Mybatis-club/target/test-classes/ /D:/wps/club/Mybatis-club/target/classes/ /C:/Users/**/.m2/repository/org/mybatis/mybatis/3.2.2/mybatis-3.2.2.jar /C:/Users/**/.m2/repository/mysql/mysql-connector-java/5.1.26/mysql-connector-java-5.1.26.jar /C:/Users/**/.m2/repository/junit/junit/3.8.1/junit-3.8.1

SpringBoot笔记 -- @RequestParam、@RequestBody、@PathVariable、@param

走远了吗. 提交于 2020-05-02 02:19:13
前言 在SpringBoot开发项目中,传参经常用到这几个注解,在这里总结记录一下他们的使用及区别。 @PathVariable 通过 @PathVariable 可以将 URL 中占位符参数绑定到控制器处理方法的入参中:URL 中的 {xxx} 占位符可以通过@PathVariable("xxx") 绑定到操作方法的入参中。 @GetMapping("/{modelId}") @ApiOperation("根据设备型号ID获取设备型号详细信息") public ResponseEntity<DeviceModel> findDeviceModel(@PathVariable("modelId") String modelId) { return ResponseEntity.ok(deviceModelService.findById(modelId)); } 上面这个接口可通过get请求 http://xxxxx/1111来得到想要的数据,1111既是findDeviceModel的方法参数又是@RequestMapping的路由。如果方法参数不想写成和路由一样的应该怎么办?看代码: @GetMapping("/{deviceModelId}") @ApiOperation("根据设备型号ID获取设备型号详细信息") public ResponseEntity

spring-boot PageHelper

浪尽此生 提交于 2020-05-01 22:06:11
分页插件PageHelper 参看了 pagehelper-spring-boot ,使用起来非常放方便,关于更多PageHelper可以点击 https://github.com/pagehelper/Mybatis-PageHelper 。 添加maven依赖 根据上面地址中的说明,只需要添加如下依赖,并且可以不再mybatis的依赖 <!--分页插件--> < dependency > < groupId >com.github.pagehelper </ groupId > < artifactId >pagehelper-spring-boot-starter </ artifactId > < version >1.0.0 </ version > </ dependency > pagehelper的使用 我增加了如下测试代码。 [plain] view plain copy @RequestMapping("/find/mybatis/page") public String findUserPageFromMybatis(HttpServletRequest request, Integer pageNum, Integer pageSize) { pageNum = pageNum == null ? 1 : pageNum; pageSize =

spring boot学习 ---- 使用pageHelper实现分页功能

吃可爱长大的小学妹 提交于 2020-05-01 21:37:29
目录   1.介绍pageHelper   2.pageHelper的基本配置   3.使用pageHelper实现分页功能 一、介绍pageHelper   pageHelper是一款分页插件,它能很好的集成在spring boot中在它是一个基于mybatis的一款插件。它是的底层实现技术则是使用动态代理实现的。所以我们在使用它时,我们需要使用mybatis作为持久层框架。如果有需要请参照《spring boot 集成 mybatis》 二、pageHelper的基本配置   如果我们需要使用pageHelper的话,我们需要在spring boot项目中引入pageHelper的依赖。以下是PageHelper的GitHub地址 https://github.com/pagehelper/Mybatis-PageHelper   在这里我们导入以下依赖: <!-- pagehelper --> < dependency > < groupId > com.github.pagehelper </ groupId > < artifactId > pagehelper-spring-boot-starter </ artifactId > < version > 1.2.5 </ version > </ dependency >   同样,我们在spring

读写分离注解

匆匆过客 提交于 2020-05-01 16:16:28
  以前写过读写分离,今天完善成文档。 一:概述 1.结构文档    2.思路   组装好各个数据源,然后通过注解选择使用读或者写的数据源,将其使用AbstractRoutingDataSource中的方法determineCurrentLookuoKey进行选择datasource的key。   然后,通过key,就找到了要使用的数据源。   在数据源的这里,最后配置上连接池。 3.说明   本配置直接使用一个公共的连接池配置,如果需要,自己进行配置 二:程序说明 1.连接池配置 package com.jun.webpro.common.config.dataSource.properties; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; import java.util.List; import java.util.Map; /** * 数据库连接池配置 */ @ConfigurationProperties(prefix = "spring.druid") @Component @Data public class

Mybatis框架|更新与删除

痞子三分冷 提交于 2020-05-01 14:17:23
文章目录 一、使用Mybatis进行更新操作 1.创建数据库表user 2.JavaBean 3.Mybatis配置 4.User.xml配置(update标签) 5.使用Mybatis进行更新测试 二、使用Mybatis进行删除操作 1.User.xml的配置(delete标签) 2.使用Mybatis删除操作测试 一、使用Mybatis进行更新操作 1.创建数据库表user 创建数据库表,并添加记录。创建表的sql语句和添加后的数据库记录如下: CREATE TABLE ` user ` ( ` id ` INT ( 20 ) AUTO_INCREMENT COMMENT '主键' , ` username ` VARCHAR ( 50 ) NULL DEFAULT NULL COMMENT '姓名' , ` sex ` VARCHAR ( 1 ) NULL DEFAULT NULL COMMENT '性别' , ` address ` VARCHAR ( 200 ) NULL DEFAULT NULL COMMENT '住址' , ` birthday ` DATE NULL DEFAULT NULL COMMENT '生日' , PRIMARY KEY ( ` id ` ) ) COLLATE = 'utf8_general_ci' ENGINE = InnoDB AUTO