mybatisPlus
了解Mybatis-PlusMybatis-Plus介绍 MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 代码以及文档 文档地址:https://mybatis.plus/guide/ 源码地址:https://github.com/baomidou/mybatis-plus 特性 无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑 损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作 强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求 支持 Lambda 形式调用:通过 Lambda 表达式,方便的编写各类查询条件,无需再担心字段写错 支持多种数据库:支持 MySQL、MariaDB、Oracle、DB2、H2、HSQL、SQLite、Postgre、SQLServer2005、SQLServer 等多种数据库 支持主键自动生成:支...
ssm框架的整合
SSM框架整合准备工作原始方式整合 在mysql中创建ssm数据库和account表CREATE TABLE `account` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) DEFAULT NULL, `money` double DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8; 创建maven工程 新建itheima_ssm的project, 并配置webapp文件夹, 在java下创建com.itheima.controller、service、domain、mapper、utils文件夹 在webapp文件夹下创建index.jsp, save.jsp 项目结构如下: 导入坐标 在pom.xml中导入响应的坐标<!--spring相关--><dependency> <groupId>org.springframework</groupId> ...
mybatis2
MyBatis的多表操作代码准备 新建itheima_mybatis_005的module, 并配置webapp文件夹 在pom.xml中导入相应的坐标<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.46</version></dependency><dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.6</version></dependency><dependency> <groupId>junit</groupId> <artifactId>junit&l...
mybatis
Mybatis简介什么是Mybatis mybatis 是一个优秀的基于java的持久层框架,它内部封装了jdbc,使开发者只需要关注sql语句本身,而不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。 mybatis通过xml或注解的方式将要执行的各种 statement配置起来,并通过java对象和statement中sql的动态参数进行映射生成最终执行的sql语句。 最后mybatis框架执行sql并将结果映射为java对象并返回。采用ORM思想解决了实体和数据库映射的问题,对jdbc 进行了封装,屏蔽了jdbc api 底层访问细节,使我们不用与jdbc api 打交道,就可以完成对数据库的持久化操作。 MyBatis的快速入门MyBatis开发步骤 添加MyBatis的坐标 创建user数据表 编写User实体类 编写映射文件UserMapper.xml 编写核心文件SqlMapConfig.xml 编写测试类 添加MyBatis的坐标 创建一个itheima_mybatis_001的module,并配置webapp文件夹 在pom.xm...
springmvc2
SpringMVC的数据相应SpringMVC的数据响应方式 页面跳转* 直接返回字符串* 通过ModelAndView对象返回 回写数据* 直接返回字符串* 返回对象或集合 页面跳转 返回字符串形式* 返回ModelAndView对象* 写法一:在controller下,新建UserController2.java,通过addObject设置model数据,setViewName设置视图名称 package com.itheima.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.servlet.ModelAndView;@Controller//相当于地址栏加了一层/user@RequestMappi...
springmvc
Spring与Web环境集成快速入门 创建一个itheima_spring_mvc的modules,并配置webapp文件夹 在pom.xml中导入spring-context坐标<dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.3.6</version></dependency> 在java下新建com.itheima.dao.UserDao的类package com.itheima.dao;public interface UserDao { public void save();} 在dao下新建UserDaoImpl的实现类,去实现save方法,添加@Repository注解package com.itheima.dao.impl;import com.itheima.dao.UserD...
spring4-事务
编程式事务控制相关对象PlatformTransactionManager PlatformTransactionManager 接口是 spring 的事务管理器,它里面提供了我们常用的操作事务的方法。 注意:PlatformTransactionManager 是接口类型,不同的 Dao 层技术则有不同的实现类,例如:Dao 层技术是jdbc 或 mybatis 时:org.springframework.jdbc.datasource.DataSourceTransactionManager Dao 层技术是hibernate时:org.springframework.orm.hibernate5.HibernateTransactionManager TransactionDefinition TransactionDefinition 是事务的定义信息对象,里面有如下方法: 事务隔离级别 设置隔离级别,可以解决事务并发产生的问题,如脏读、不可重复读和虚读。 ISOLATION_DEFAULT ISOLATION_READ_UNCOMMITTED ISO...
spring3-jdbcTemplate
Spring JdbcTemplate基本使用JdbcTemplate概述它是spring框架中提供的一个对象,是对原始繁琐的Jdbc API对象的简单封装。spring框架为我们提供了很多的操作模板类。例如:操作关系型数据的JdbcTemplate和HibernateTemplate,操作nosql数据库的RedisTemplate,操作消息队列的JmsTemplate等等。 JdbcTemplate开发步骤 导入spring-jdbc和spring-tx坐标 创建数据库表和实体 创建JdbcTemplate对象 执行数据库操作 导入spring-jdbc和spring-tx坐标 新建itheima_spring_jdbc的module,并配置webapp文件夹 在pom.xml中,导入spring-jdbc、spring-tx、junit、mysql-connector-java、druid坐标<dependency> <groupId>org.springframework</groupId> <artifactId&...
spring2-aop
Spring的AOP简介什么是 AOP AOP 为 Aspect Oriented Programming 的缩写,意思为面向切面编程,是通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。 AOP 是 OOP 的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。 AOP 的作用及其优势 作用:在程序运行期间,在不修改源码的情况下对方法进行功能增强 优势:减少重复代码,提高开发效率,并且便于维护 AOP 的底层实现 实际上,AOP 的底层是通过 Spring 提供的的动态代理技术实现的。在运行期间,Spring通过动态代理技术动态的生成代理对象,代理对象方法执行时进行增强功能的介入,在去调用目标对象的方法,从而完成功能的增强。 AOP 的动态代理技术 JDK 代理 : 基于接口的动态代理技术 cglib 代理:基于父类的动态代理技术 AOP 相关概念 Target(目标对象):代理的目标对象...
spring-ioc
Spring简介Spring是什么 Spring是分层的 Java SE/EE应用 full-stack 轻量级开源框架,以 IoC(Inverse Of Control:反转控制)和 AOP(Aspect Oriented Programming:面向切面编程)为内核。 提供了展现层 SpringMVC 和持久层 Spring JDBCTemplate 以及业务层事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的Java EE 企业应用开源框架。 Spring发展历程Spring的优势 方便解耦,简化开发* 通过 Spring 提供的 IoC容器,可以将对象间的依赖关系交由 Spring 进行控制,避免硬编码所造成的过度耦合。用户也不必再为单例模式类、属性文件解析等这些很底层的需求编写代码,可以更专注于上层的应用。 AOP编程的支持* 通过 Spring的 AOP 功能,方便进行面向切面编程,许多不容易用传统 OOP 实现的功能可以通过 AOP 轻松实现。 声明式事务的支持* 可以将我们从单调烦闷的事务管理代码中解脱出来,...








