![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SSM框架
文章平均质量分 50
Java的SSM框架学习
自由梦想程序员
即将秃头的大学生一枚
展开
-
REST风格和RESTful
REST风格入门案例原创 2022-03-22 13:38:07 · 77 阅读 · 0 评论 -
Mybatis-Plus的MybatisX插件
MybatisX插件1、安装先在resources包下创建名为mapper的包,然后创建mybatis-mapper.xml文件,命名为UserMapper(这个mybatis-mapper文件是自定义的,在前面的博客有讲解)这个小鸟点开有惊喜(会自动跳转)<?xml version="1.0" encoding="utf-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "原创 2022-03-21 19:57:39 · 1197 阅读 · 0 评论 -
Mybatis-Plus的多数据源
多数据源创建数据库CREATE DATABASE mybatis_plus_1;USE mybatis_plus_1;CREATE TABLE product( id BIGINT(20) NOT NULL COMMENT '主键id', NAME VARCHAR(30) NULL DEFAULT NULL COMMENT '商品名称', price INT(11) DEFAULT 0 COMMENT '价格', VERSION INT(11) DEFAULT原创 2022-03-21 15:46:54 · 2730 阅读 · 1 评论 -
Mybatis-PLus的代码生成器
代码生成器导入依赖<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.5.2</version> </dependency> <dependenc原创 2022-03-21 14:58:05 · 56 阅读 · 0 评论 -
Mybatis-Plus的通用枚举
通用枚举在数据库中的t_user表中加入一个int属性sex创建enums文件enums.SexEnumpackage com.enums;import com.baomidou.mybatisplus.annotation.EnumValue;import lombok.Getter;@Getterpublic enum SexEnum { MALE(1,"男"), FMALE(2,"女"); @EnumValue //将注解所标识的属性的值存储到数据原创 2022-03-21 14:37:43 · 341 阅读 · 0 评论 -
Mybatis-Plus的乐观锁和悲观锁
乐观锁和悲观锁如果没看懂。需要看下操作系统模拟修改冲突创建数据CREATE TABLE t_product( id BIGINT(20) NOT NULL COMMENT '主键id', NAME VARCHAR(30) NULL DEFAULT NULL COMMENT '商品名称', price INT(11) DEFAULT 0 COMMENT '价格', VERSION INT(11) DEFAULT 0 COMMENT '乐观锁版本号', PR原创 2022-03-20 17:27:59 · 2440 阅读 · 1 评论 -
Mybatis-Plus的分页插件的使用和配置
Mybatis-Plus的分页插件的使用和配置在com包下创建文件config.MybatisPlusConfigpackage com.config;import com.baomidou.mybatisplus.annotation.DbType;import com.baomidou.mybatisplus.autoconfigure.ConfigurationCustomizer;import com.baomidou.mybatisplus.extension.plugins.Myb原创 2022-03-20 16:34:36 · 2364 阅读 · 0 评论 -
Mybatis-Plus的条件构造器
条件构造器1、组装查询条件![创建测试类MybatisPlusWrapperTestpackage com.example.mybatisplus;import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;import com.example.mapper.UserMapper;import com.example.pojo.User;import org.junit.jupiter.api.Test;impor原创 2022-03-16 21:05:31 · 523 阅读 · 0 评论 -
Mybatis-plus的常用注解
常用注解1、@Tablename注解把原数据库的表名由user改为t_user,在运行就会报错,原因是找不到表名为user的表修改实体类Userpackage com.example.pojo;import com.baomidou.mybatisplus.annotation.TableName;import lombok.*;//所有无参构造和get方法和set方法还有哈希库方法注解(lombok)//有参构造方法注解(@AllArgsConstructor)@Data//设原创 2022-03-15 14:36:24 · 5031 阅读 · 0 评论 -
Mybatis-plus的Service
Service1、通用Service接口可以看官网的CRUD接口https://baomidou.com/pages/49cc81/在example包下创建接口service.UserServicepackage com.example.service.service;import com.baomidou.mybatisplus.extension.service.IService;import com.example.pojo.User;public interface UserS原创 2022-03-14 17:30:57 · 4175 阅读 · 0 评论 -
Mybatis-plus的基本Crud操作
BaseMapper1、测试BaseMapper的新增功能@Test public void testInsert(){ //实现新增数据的功能 //INSERT INTO user ( id, name, age, email ) VALUES ( ?, ?, ?, ? ) User user=new User(); user.setName("张三"); user.setAge(18); user.se原创 2022-03-14 16:51:30 · 1160 阅读 · 0 评论 -
Mybatis-Plus简介
Mybatis-Plus简介官网https://baomidou.com/1、简介2、特性3、支持数据库4、框架结构5、快速入门原创 2022-03-13 18:12:08 · 1754 阅读 · 0 评论 -
SSM框架整合
SSM框架整合一、准备工作1.原始方式整合2.创建maven工程3、导入maven坐标4、编写实体类5、编写接口6、编写Service接口7、Service接口的实现8、编写Controller9、编写添加页面10、编写列表页面11、编写相应的配置文件12、测试二、环境搭建创建名为itheima_ssm的maven工程导入坐标<?xml version="1.0" encoding="UTF-8"?><project xmlns="http:/原创 2022-02-14 12:14:17 · 345 阅读 · 0 评论 -
Mybatis的注解开发
Mybatis的注解开发1、常用注解介绍2、xml完成简单的crudUserMapper.xml<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="原创 2022-02-12 23:11:31 · 356 阅读 · 0 评论 -
Mybatis的多表操作
Mybatis的多表操作1、一对一模型1.1、模型代码实现观看黑马程序员视频ssm框架集合P179-P1821.2、一对多查询原创 2022-02-12 12:27:46 · 294 阅读 · 0 评论 -
Mybatis的核心配置文件深入
Mybatis的核心配置文件深入1.typeHandle标签原创 2022-02-10 12:25:31 · 835 阅读 · 0 评论 -
Mybatis的映射文件的深入
Mybatis的映射文件的深入1、动态sql语句1.1动态sql语句概述1.2、if<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.d原创 2022-02-09 22:40:40 · 69 阅读 · 0 评论 -
Mybatis的Dao层实现
Mybatis的Dao层实现1、传统方式实现创建接口com.dao.UserMapperpackage com.dao;import java.io.IOException;import java.util.List;public interface UserMapper { public List<Object> findall() throws IOException;}创建文件com.dao.impl.UserMapperImplpackage com.d原创 2022-02-09 11:14:06 · 1441 阅读 · 0 评论 -
Mybatis相应API
Mybatis相应API1、SqlSession工厂构造器SqlSessionFactoryBuilder2、SqlSession工厂对象sqlSessionFactory3、SqlSession会话对象<!--查询一个数据--> <select id="findBy" resultType="user" parameterType="int"> select * from user where id=#{id} </select&原创 2022-02-08 17:27:33 · 191 阅读 · 0 评论 -
Mybatis的核心配置文件
Mybatis的核心配置文件1、Mybatis的核心配置文件层级关系2、environments标签数据库环境的配置,支持多环境配置2、mapper标签3、properties标签在resource包下创建名为jdbc.properties的file文件jdbc.driver=com.mysql.cj.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/testjdbc.username=rootjdbc.password=01101原创 2022-02-08 10:21:34 · 1995 阅读 · 0 评论 -
Mybatis的增删查改
Mybatis的增删查改1、插入数据操作<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="userMapper"> <!--插入操作原创 2022-02-07 11:37:42 · 200 阅读 · 0 评论 -
Mybatis的映射文件
Mybatis的映射文件1、概述原创 2022-02-07 10:49:14 · 282 阅读 · 0 评论 -
Mybtis的快速入门
Mybtis的快速入门Mybatis开发步骤:添加Mybatis的坐标创建user数据表编写User实体类编写映射文件UserMapper.xml编写核心文件SqlMapConfig.xml编写测试类我们创建数据库test,user表格,数据如下,创建名为Mybatis的Maven模块导入坐标(pom.xml)<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.or原创 2022-02-06 14:47:03 · 522 阅读 · 0 评论 -
spring的事务控制
spring的事务控制1、编程式事务控制相关对象1.1、PlatformTransactionManager1.2、TransactionDefinition1.3、TransactionStatus2、基于xml的声明式编程控制2.1、什么是声明式事务控制spring的声明式事务顾名思义就是采用声明的方式来处理事务,这里所说的声明,就是指在配置文件中声明,用在spring配置文件中声明式的处理事务来代替代码式的处理事务声明式处理事务的作用事务管理不侵入开发的组件。具体来说,原创 2022-02-04 22:28:39 · 811 阅读 · 0 评论 -
基于注解的AOP开发
基于注解的AOP开发1.快速入门基于注解开发的步骤创建目标接口和目标类(内部有切点)创建切面类(内部有增强方法)在目标类和切面类的对象创建权交给spring在切面类中使用注解配置织入关系在配置文件中开启组件扫描和AOP的自动代理测试第一部和第二部的实现首先创建包com.anno,将AOP包的myAspect、Target、TargetInterface文件粘贴过来第三步实现修改Target文件package com.anno;import org.springframewo原创 2022-02-02 23:04:25 · 755 阅读 · 0 评论 -
基于xml的AOP开发
基于xml的AOP开发1.快速入门导入AOP的相关坐标创建目标接口和目标类(内部有切点)创建切面类(内部有增强的方法)在目标类和切面类的对象创建权交给spring在applicationContext.xml中配置织入关系测试代码配置POM.xml文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="原创 2022-02-02 22:34:36 · 564 阅读 · 0 评论 -
Spring的AOP简介
Spring的AOP简介Spring的核心:AOP和IOC1.1、什么时AOPPS:OOP是面向对象编程1.2、AOP的作用及优势作用:在程序运行期间,在不修改源码的情况下对方法进行功能加强优势:减少重复代码,提高开发效率,并且便于维护1.3、AOP的底层实现实际上,AOP的底层是通过Spring提供的动态代理技术动态的生成代理对象,代理对象的方法执行时进行增强功能的介入,在去调用目标对象的方法,从而完成功能的增强1.4、常用的动态代理技术常用的动态代理技术JDK代理:基于接口的动原创 2022-01-30 23:17:20 · 628 阅读 · 0 评论 -
SpringMVC异常处理
SpringMVC异常处理1.1、异常处理的思路系统中异常有两类:预期异常和运行时异常,前者通过捕获异常从而获取异常信息,后者主要通过规范代码开发,测试等手段减少运行时异常的发生原创 2022-01-30 14:58:30 · 172 阅读 · 0 评论 -
SpringMVC的拦截器
SpringMVC的拦截器1.1、拦截器的作用SpringMVC的拦截器类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理拦截器将按一定的顺序结成一条链,这条链成为拦截器,在访问被拦截的方法或字段时,拦截器链中的拦截器就会按之前定义的顺序被调用。拦截也是AOP的思想的体现1.2、拦截器和过滤器的区别1.3、拦截器的快速入门自定义拦截器只有三步:1、创建拦截器类实现HanderInterceptor接口2、配置拦截器3、测试拦截器的效果创建个名称为MyInte原创 2022-01-28 22:07:40 · 113 阅读 · 0 评论 -
SpringMVC获得请求数据
SpringMVC获得请求数据2.1、获得请求参数2.2、获得基本类型参数 @RequestMapping("/quick8") @ResponseBody //告知SpringMVC框架,不进行视图跳转,而是直接进行数据响应 public void save11(String username,int age){ System.out.println(username); System.out.println(age); }输原创 2022-01-26 15:39:01 · 265 阅读 · 0 评论 -
SpringMVC回写数据
SpringMVC回写数据一、直接回写字符串@RequestMapping("/quick3") public void save6(HttpServletResponse response) throws IOException { response.getWriter().print("hello world!"); }@RequestMapping("/quick4") @ResponseBody //告知SpringMVC框架,不进行视图跳转,原创 2022-01-26 11:40:59 · 395 阅读 · 1 评论 -
SpringMVC的页面跳转
SpringMVC的页面跳转一、页面跳转形式之一修改HelloController文件package com.atguigu.mvc.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.servlet.ModelAndView;@Contr原创 2022-01-25 23:06:44 · 1844 阅读 · 0 评论 -
SpringMVC的组件解析
SpringMVC的组件解析1》SpringMVC的执行过程用户发送请求至前端控制器DisPatcherServletDisPatcherServlet收到请求调用HandlerMapping处理映射器处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及拦截器(如果有则生成)一并返回给DisPatcherServletDisPatcherServlet调用HandleAdapter处理器适配器HandleAdapter经过适配调配调用具体的处理器(Control原创 2022-01-24 16:07:59 · 199 阅读 · 0 评论 -
SpringMVC注解解析
SpringMVC注解解析原创 2022-01-24 16:06:57 · 131 阅读 · 0 评论 -
SpringMVC的简介
SpringMVC的简介1》SpringMVC的流程图2》SpringMVC开发步骤原创 2022-01-24 12:22:45 · 64 阅读 · 0 评论 -
SpringMVC的helloworld
SpringMVC的helloworld下面进行操作,1》首先创建一个maven模块,命名为SpringMVC,导入以下依赖(pom.xml)<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schema原创 2022-01-23 23:48:05 · 2190 阅读 · 1 评论 -
Spring的jdbcTemplate
Spring的jdbcTemplate1.1何为jdbcTemplate1.2jabcTemplate开发步骤导入Spring-jdbc和spring-txt坐标创建数据库表和实例创建jdbcTemplate对象执行数据库的操作原创 2022-01-23 12:10:50 · 203 阅读 · 0 评论 -
Spring的新注解
Spring的新注解在ithima文件包里创建文件DataSourceConfigurationpackage com.itheima.config;import com.mchange.v2.c3p0.ComboPooledDataSource;import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotation.Bean;import org.spr原创 2022-01-22 16:37:43 · 88 阅读 · 0 评论 -
Spring的原始注解详解一
Spring的原始注解详解一修改UserDaoImpl文件package com.itheima.dao.impl;import com.itheima.dao.UserDao;import org.springframework.stereotype.Component;import org.springframework.stereotype.Repository;//<bean id="userDao" class="com.itheima.dao.impl.UserDaoImp原创 2022-01-22 15:44:09 · 137 阅读 · 0 评论 -
Bean管理注解的方式
Bean管理注解的方式一、创建对象1》什么是注解:1.注解就是代码特殊标记,格式:@注解名称(属性名称=属性值,属性名称=属性值…)2.使用注解,注解作用在类的上面,方法上面,属性上面3.注解的作用:简化xml配置2》Spring针对Bean管理中创建对象提供注解二、基于注解方式实现对象的创建导入依赖开启组件扫描...原创 2022-01-22 15:24:40 · 316 阅读 · 0 评论