
SSM框架
文章平均质量分 84
Spring+SpringMVC+MyBatis
爱喝椰汁的木木
这个作者很懒,什么都没留下…
展开
-
SpringBoot相关
SpringBoot 2.3.5之前ssm开发面临的问题:在ssm整合的时候,面临了大量的固定的一些配置,特别和其他功能整合的时候,也需要配置。在ssm整合的时候,版本管理,需要在父工程中写很多版本整合第三方功能的时候,有时候,不知道该配置什么 javaMailSender…SpringBoot是一个全新的框架、2017年年底开始在国内流行起来作用:1、快速开发,让程序员不用关注过多的配置,只需要关注业务逻辑即可SpringBoot的四大核心1、起步依赖(starter):spri原创 2021-04-13 23:09:35 · 416 阅读 · 0 评论 -
SSM整合之maven聚合工程(xml配置文件版)
项目结构:mapper层mapper的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:schemaLocation="http://maven.apache.org/POM/4.0.0原创 2021-04-11 22:13:21 · 256 阅读 · 0 评论 -
SpringMVC接收前端传递的各种参数和参数的乱码问题
连接:SpringMVC的第二个程序1、导入必要jar包 (同上一篇)2、编写springmvc-second.xml<!-- 包扫描--> <context:component-scan base-package="com.codeyancy.cn.controller"/> <!-- 代替配置处理器映射器和处理器适配器--> <mvc:annotation-driven/> <!-- 配置视原创 2021-03-18 22:55:30 · 545 阅读 · 1 评论 -
SpringMVC一个类处理多个业务以及注意事项
连接:HelloSpringMVC在上一篇中,通过网址发送请求转发到test.jsp页面,${msg}中的信息存放在request域中。SpringMVC在进行视图跳转的时候是可以转发到html页面的,但是需要在springmvc.xml文件中设置:<mvc:default-servlet-handler/>,但是html页面不支持EL表达式,无法获取到后端携带的数据,如果想要获取数据,就使用模板引擎+html。在以上的写法中,一个controller只能做一件事,需要配置多个bean,显原创 2021-03-18 21:00:45 · 221 阅读 · 0 评论 -
Spring对持久层(Dao)的支持
Spring对持久层采取了很好的支持,这些支持策略主要有:(1)Spring对持久层“不发明重复的轮子”,即没有重新实现新的持久层方案,对现有持久层方案做封装,更利于使用。(2)采用DAO模式。(3)提供了大量的模板类来简化编程(HibernateDaoSupport,JdbcTemplate等)(4)重新设计了一套完善的异常体系结构:①类型丰富,细化异常类型。② 全都是运行时异常(RuntimeException)。这里主要有两种方法JdbcTemplateJdbcDaoSupport原创 2021-03-17 20:00:47 · 528 阅读 · 0 评论 -
MyBatis使用注解开发和无主配置文件开发的情况
MyBatis使用注解开发时就不在需要和接口对应的映射文件了主要有以下几个注解@Select() @Insert @Update() @Delete()代码演示项目结构:数据库表设计实体类Userpublic class User implements Serializable { private long userId; private String userName; private Date birthday; private String sex; priv原创 2021-03-13 21:37:16 · 487 阅读 · 1 评论 -
MyBatis懒加载(延迟加载)
定义:懒加载就是在需要使用这个数据的时候再去进行查询加载,不需要的时候就不查询。也就是按需加载优点:把关联查询分两次来做,而不是一次性查出所有的,延迟加载即先从单表查询、需要时再从关联表去关联查询,大大提高数据库性能,因为查询单表要比关联查询多张表速度要快。mybatis支持懒加载,resultMap可以实现高级映射(使用association、collection实现一对一及一对多映射),association、collection具备延迟加载功能。需求:假如现在有两张数据表,购物车和购物车项原创 2021-03-12 22:54:31 · 438 阅读 · 0 评论 -
SpringMVC02-(HelloSpringMVC)
编写第一个SpringMVC程序:新建一个父项目SpringMVC,并且删除src文件夹,在父项目的pom.xml中导入项目所需的相关依赖以及资源导出问题:<!--导入依赖--> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId>原创 2020-11-10 00:02:28 · 766 阅读 · 0 评论 -
SpringMVC01-(简介)
概述Spring MVC是Spring Framework的一部分,是基于Java实现MVC的轻量级Web框架。官方文档:https://docs.spring.io/spring-framework/docs/5.2.0.RELEASE/spring-framework-reference/web.html#spring-webSpring MVC的特点:轻量级,简单易学高效 , 基于请求响应的MVC框架与Spring兼容性好,无缝结合约定优于配置功能强大:RESTful、数据验证、格式原创 2020-11-06 19:55:36 · 346 阅读 · 0 评论 -
事务以及Spring对事务的操作方式
事务事务在项目开发过程非常重要,涉及到数据的一致性的问题,不容马虎!事务管理是企业级应用程序开发中必备技术,用来确保数据的完整性和一致性。事务就是把一系列的动作当成一个独立的工作单元,这些动作要么全部完成,要么全部不起作用。事务四个特性ACID原子性(atomicity)事务是原子性操作,由一系列动作组成,事务的原子性确保动作要么全部完成,要么完全不起作用一致性(consistency)一旦所有事务动作完成,事务就要被提交。数据和资源处于一种满足业务规则的一致性状态中原创 2020-11-03 17:23:47 · 235 阅读 · 0 评论 -
Spring08-(MyBatis-Spring整合)
新建项目模块在pom.xml中导入相关依赖 <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency>原创 2020-11-03 00:17:44 · 137 阅读 · 0 评论 -
Spring07-(AOP)
什么是AOP?AOP(Aspect Oriented Programming)意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。主要功能 (百度)日志记录,性能统计,安全控制,事务处理,异常处理等等。主要意图(百度)将日志记录,性原创 2020-11-02 17:01:35 · 166 阅读 · 0 评论 -
Spring06-(代理模式)
代理模式的定义:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。为什么要学习代理模式,因为AOP的底层机制就是动态代理!代理模式:静态代理动态代理1.静态代理静态代理角色分析抽象角色 : 一般使用接口或者抽象类来实现真实角色 : 被代理的角色代理角色 : 代理真实角色 ; 代理真实角色后 , 一般会做一些附属的操作 .客户 : 使用代理角色来进行一些操作 .代码测试1.原创 2020-11-02 12:38:38 · 112 阅读 · 0 评论 -
Spring05-(使用注解开发)
在spring4之后,想要使用注解形式,必须得要引入aop的包在配置文件applicationContext.xml当中,还得要引入一个context约束<?xml version="1.0" encoding="UTF8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml原创 2020-11-01 23:33:00 · 117 阅读 · 0 评论 -
Spring04-(使用注解实现自动装配)
jdk1.5开始支持注解,spring2.5开始全面支持注解。准备工作: 利用注解的方式注入属性。在spring配置文件中引入context文件头开启注解支持!<?xml version="1.0" encoding="UTF8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"原创 2020-11-01 20:57:18 · 313 阅读 · 2 评论 -
Spring03-(依赖注入(DI))
依赖注入(Dependency Injection,DI)依赖:指Bean对象的创建依赖于容器 . Bean对象的依赖资源 .注入:指Bean对象所依赖的资源 , 由容器来设置和装配 .构造器注入set注入 (重点)要求被注入的属性 , 必须有set方法 , set方法的方法名由set + 属性首字母大写 , 如果属性是boolean类型, 没有set方法 , 是 is .1.pojo类 :Addresspackage com.codeyancy.pojo;public clas原创 2020-11-01 16:37:57 · 160 阅读 · 2 评论 -
Spring配置
别名alias 设置别名<bean id="user" class="com.codeyancy.pojo.User"> <constructor-arg name="name" value="李斯"/> </bean> <!--别名:如果添加了别名,我们也可以使用别名来获取到这个对象--> <alias name="user" alias="userNew"/> User user = (User原创 2020-11-01 16:39:38 · 158 阅读 · 0 评论 -
Spring02-(IOC)
IOC本质控制反转IoC(Inversion of Control),是一种设计思想,DI(依赖注入)是实现IoC的一种方法,也有人认为DI只是IoC的另一种说法。没有IoC的程序中 , 我们使用面向对象编程 , 对象的创建与对象间的依赖关系完全硬编码在程序中,对象的创建由程序自己控制,控制反转后将对象的创建转移给第三方,个人认为所谓控制反转就是:获得依赖对象的方式反转了。IoC是Spring框架的核心内容,使用多种方式完美的实现了IoC,可以使用XML配置,也可以使用注解,新版本的Spring也可以原创 2020-11-01 00:01:01 · 109 阅读 · 0 评论 -
Spring01-(简介)
简介Spring : 春天 —>给软件行业带来了春天2002年,Rod Jahnson首次推出了Spring框架雏形interface21框架。2004年3月24日,Spring框架以interface21框架为基础,经过重新设计,发布了1.0正式版。很难想象Rod Johnson的学历 , 他是悉尼大学的博士,然而他的专业不是计算机,而是音乐学。Spring理念 : 使现有技术更加容易使用 . 本身就是一个大杂烩 , 整合现有的框架技术官网: http://spring.io/官方原创 2020-10-30 14:41:38 · 156 阅读 · 0 评论 -
MyBatis缓存相关
什么是缓存?存在内存中的临时数据。将用户经常查询的数据放在缓存(内存)中,用户去查询数据就不用从磁盘上(关系型数据库数据文件)查询,从缓存中查询,从而提高查询效率,解决了高并发系统的性能问题。为什么使用缓存?减少和数据库的交互次数,减少系统开销,提高系统效率。什么样的数据能使用缓存?经常查询并且不经常改变的数据。Mybatis缓存MyBatis包含一个非常强大的查询缓存特性,它可以非常方便地定制和配置缓存。缓存可以极大的提升查询效率。MyBatis系统中默认定义了两级缓存:一级缓存和二原创 2020-10-30 00:01:34 · 120 阅读 · 0 评论 -
MyBatis08-(动态SQL)
介绍官方文档MyBatis 的强大特性之一便是它的动态 SQL。如果你有使用 JDBC 或其它类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句的痛苦。例如拼接时要确保不能忘记添加必要的空格,还要注意 去掉列表最后一个列名的逗号。利用动态 SQL 这一特性可以彻底摆脱这种痛苦。虽然在以前使用动态 SQL 并非一件易事,但正是 MyBatis 提供了可以被用在任意 SQL 映射语 句中的强大的动态 SQL 语言得以改进这种情形。动态 SQL 元素和 JSTL 或基于类似 XML 的文本处理器相原创 2020-10-29 22:33:19 · 237 阅读 · 0 评论 -
MyBatis07-(多对一、一对多)
项目结构图环境搭建1.创建数据库CREATE TABLE `teacher` ( `id` INT(10) NOT NULL, `name` VARCHAR(30) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE = INNODB DEFAULT CHARSET=utf8INSERT INTO teacher(`id`,`name`) VALUES (1,'李老师');CREATE TABLE `student` ( `id` INT(10) NO原创 2020-10-28 23:53:23 · 309 阅读 · 2 评论 -
MyBatis主配置文件和映射文件详解(日志及分页)
核心配置文件mybatis-config.xml 系统核心配置文件MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置和属性信息。能配置的内容如下configuration(配置)properties(属性)settings(设置)typeAliases(类型别名)typeHandlers(类型处理器)objectFactory(对象工厂)plugins(插件)environments(环境配置) environment(环境变量)原创 2020-10-27 19:10:35 · 441 阅读 · 0 评论 -
MyBatis-增删改查,获取添加后的主键,模糊查询
流程:搭建环境–>导入Mybatis—>编写代码—>测试1.环境搭建1.1数据库搭建CREATE DATABASE `mybatis`;USE `mybatis`;CREATE TABLE `user`( `id` INT(20) NOT NULL PRIMARY KEY, `name` VARCHAR(30) DEFAULT NULL, `pwd` VARCHAR(30) DEFAULT NULL)ENGINE=INNODB DEFAULT CHARSET=utf8原创 2020-10-26 17:13:54 · 322 阅读 · 0 评论