![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
学习经历
0 :
这个作者很懒,什么都没留下…
展开
-
java框架SSM学习——拦截器
在第一节写SpringMVC的运行原理的时候讲过,每个组件之间都是按部就班的运行的,如下图(部分图):都是按步骤每步每步走,当请求没有发送,前端控制器没收到请求,就不会去找处理器映射器。Controller是使用了Servlet为核心,因为是SpringMVC使用了Servlet为核心,那么每个请求都会拦截下来运行,那么我们想要在它运行前后先拦截下来进行条件判断,这样就出现了拦截器。那怎么用代码实现使用拦截器呢?首先搭建环境Maven配置 <properties> <pr原创 2020-07-06 11:13:13 · 316 阅读 · 0 评论 -
java框架SSM学习——异常处理器
我们在写代码的时候经常有运行时异常,这种异常是在编译期并不能被编译器标注出来的,而是在运行后出现异常信息。当我们写表现层时我们不对运行时异常做一定的处理,就会导致如果功能有异常,那么返回异常信息到用户页面会非常的不友好。如下:异常信息密密麻麻导致页面非常的不好看,那我们需要对异常信息做一定的处理。那怎么对异常进行处理才能得到友好点的页面呢?SpringMVC为我们提供了HandlerException这个父类,我们需要编写异常类,以及异常处理类,最后通知SpringMVC有异常处理类,让它将异常处理类变原创 2020-07-06 10:35:53 · 175 阅读 · 0 评论 -
java框架SSM学习——文件解析器
在很多用户页面上不止需要填入数据,又时候需要上传文件,这是比较常见的,那么SpringMVC是如何完成文件上传的呢?SpringMVC对上传文件有着良好的支持。它是通过使用MultipartRelover也叫Multipart解析器处理的。对此组件的初始化有两种方式——java和XML配置。这里我只讲解使用XML配置。但是下面我将用传统的上传文件和SpringMVC的上传文件模式进行对比。观察一下哪个比较好。基础环境搭建Maven配置在以前的Maven配置上增加了两个jar包。 <prope原创 2020-07-06 10:11:45 · 768 阅读 · 0 评论 -
java框架SSM学习——SpringMVC的返回值处理
在我们完成了Controller方法的执行,拿到了需要的数据,那怎么去处理后序的工作呢?我们该如何去将数据放到最终页面上呢?怎么去实现页面的跳转呢?这就涉及到视图解析器的解析了,以下有几种返回值的形式:①返回String类型,我们之前一直在用②无返回值类型③返回ModelAndView④使用关键字直接跳转页面还是新建一个通用的SpringMVC的环境,等下每个类型再加入各自的代码进去测试。Maven配置 <properties> <project.build.sou原创 2020-07-05 16:43:05 · 381 阅读 · 0 评论 -
java框架SSM学习——SpringMVC各种元素标签的使用
在SpringMVC框架中,基本都是使用注解去实现框架的功能。以下则是需要学习的注解,一般虽然只有那么几个重复使用,但是知道怎么用以及适用范围还是很有必要的。我们先搭建好SpringMVC的环境,然后依次的将每个注解的代码加入演示。Maven配置 <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.sour原创 2020-07-05 15:03:40 · 320 阅读 · 0 评论 -
java框架SSM学习——SpringMVC环境搭建以及部署到Tomcat上
在这里我会使用一个入门级小案例去演示全过程1.新建Maven工程项目选择Create from archetype后在里面找到首先修改<properties><properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</maven.compiler.source&原创 2020-07-04 20:28:07 · 811 阅读 · 0 评论 -
java框架SSM学习——SpringMVC是什么?
基础Jdbc描述说到SpringMVC,学过基础的jdbc都应该知道,基础的javaweb操作是直接使用serlvet/jsp进行表现层的交互。什么是表现层的交互呢?即服务器与客户端的数据交互,比如客户通过页面(View)来访问我们的系统,点击查询功能查询了这个用户的数据,然后服务器根据页面的按钮去获取调用的方法,然后去执行操作,拿到了此用户的用户信息,然后再通过Controller去调用指定的方法去指定某个返回页面,且将拿到的数据存入Request的Session域中。然后页面通过特定的EL表达式去获取原创 2020-07-04 15:05:54 · 734 阅读 · 0 评论 -
java框架SSM学习——表现层SpringMVC学习目录
SpringMVC是基于DispatcheServlet生成的框架,其实里面封装了数据传输的模式。那么我们需要学习什么就完成了对他的学习呢?1.那就是知道SpringMVC到底是什么?2.还得知道如何去配置一个简单的SpringMVC项目到Tomcat上(我用的是Community IDEA)3.SpringMVC各种标签元素的使用4.SpringMVC的返回值处理5.SpringMVC组件使用——文件解析器6.SpringMVC组件使用——异常处理器7.SpringMVC组件使用——拦截器原创 2020-07-04 13:36:20 · 230 阅读 · 0 评论 -
java框架SSM学习——Spring的事务控制
在讲到SpringAOP的时候,我们是自己去增强事务控制,而这些功能,Spring框架都为我们准备好了,而我们只要去使用就可以了。当然,也别觉得SrpingAOP就只有增强事务的功能,只要是想要增强的方法都可以使用AOP去增强。那么我们怎么去使用呢?XML配置声明式事务spring中基于XML的声明式事务控制配置步骤 1.配置事务管理器 2.配置事务的通知 此时我们需要导入事务的约束 tx名称空间和约束,同时也需要aop的原创 2020-06-21 15:37:16 · 309 阅读 · 0 评论 -
java框架SSM学习——JdbcTemplate使用
其实JdbcTemplate有点类似于我们之前使用的jdbcutils工具,在JdbcTemplate中,操作数据库的功能Spring都封装好了,我们只要利用IoC操作注入JdbcTemplate对象即可使用。先用一个小案例来演示用法。账户实体类package com.domain;import java.io.Serializable;//账户的实体类public class Account implements Serializable { private Integer id;原创 2020-06-21 11:06:00 · 259 阅读 · 0 评论 -
java框架SSM学习——注解实现AOP操作
避免代码过于混乱,我又写了个小案例,代码很简单。Maven配置<dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.0.2.RELEASE</ver原创 2020-06-20 15:58:52 · 368 阅读 · 0 评论 -
java框架SSM学习——XML实现AOP操作
在写之前先提醒一下,大部分代码还是沿用上一篇的,在其基础上更改。若没有案例代码的,可以去我文章的上一篇中查找。但是我在此需要对代码进行一部分的修改:①获取连接的方式②新增事务类连接工具类ConnectionUitlspackage com.utils;import javax.sql.DataSource;import java.sql.Connection;//连接的工具类,用于从数据源中获取一个连接,并且实现和线程的绑定public class ConnectionUtils {原创 2020-06-20 15:09:33 · 249 阅读 · 0 评论 -
java框架SSM学习——AOP概念以及为什么要用AOP?
如果说IoC是Spring的核心,那么面向切面编程就是Spring最重要的功能之一。我们用一个操作数据库事务的案例来演示一下,因为AOP单从理论上讲太过于抽象。但先了解一下术语,再去看案例的解释就能有一定的了解。里面操作数据库我选择用外部工具dbutils。(代码量大,但是在后面都会一直用这个案例来修改)术语切面(Aspect):所有需要增强的方法。通知(Advice):切面开启后,切面的方法的调用顺序定义。引入(Introduction):引入允许我们在现有的类里添加自定义的类和方法。切点(Po原创 2020-06-20 10:48:00 · 574 阅读 · 0 评论 -
java框架SSM学习——用注解实现IoC操作
在前两篇中以及阐述了IoC是什么以及依赖注入的方式,XML式配置IoC也已经演示完毕,那么现在看看用注解来代替Xml配置会不会更加的复杂,首先案例还是在前面案例的基础上进行修改,我们先来讲一下各种注解的作用,然后再使用案例来演示一遍即可注解讲解用于创建对象的注解他们的作用就和在XML配置文件中编写一个标签实现的功能是一样的。@Component作用:把当前类对象存入spring容器中。属性value:用于指定bean的id,当我们不写时,他的默认值是当前类名,且首字母改小写。@Controll原创 2020-06-19 16:26:58 · 233 阅读 · 0 评论 -
java框架SSM学习——用XML实现IoC操作
在进行IoC操作的时候,要清楚的了解到控制反转的原理。而在代码中去使用,是为什么干什么?是为了降低耦合性,那如何去降低耦合性呢?其实如果过多的去自己新建对象,那么类与类之间的耦合性就会变强,那么IoC解决的就是让spring去帮我们新建对象,而我们只要通过xml/注解的方式去告诉spring,我们需要什么对象。案例一:无DI的Ioc操作(XML)首先我们先用在上一篇的案例的代码,我们稍微修改一下,因为避免有人没有看,我还是将代码贴出来。新建IAccountDao接口package com.dao;原创 2020-06-19 11:38:28 · 155 阅读 · 0 评论 -
java框架SSM学习——IoC概念以及为什么要用IoC?
什么是IOC?IOC全称为Inversion of Control,中文翻译为控制反转。那到底什么是控制反转?我们学到这里,应该对调用dao层和service层有一定的了解,首先来看一个小案例:转账dao层接口类package com.dao;//账户的持久层接口public interface IAccountDao { //模拟保存账户 void saveAccount();}转账dao层接口实现类package com.dao.impl;import com.d原创 2020-06-18 16:42:06 · 573 阅读 · 0 评论 -
java框架SSM学习——业务逻辑层Spring学习目录
在此学习目录下,我会以XML和注解形式都以案例来讲解Spring框架的两大核心:IOC——控制反转IOC概念以及为什么要用IOC?用XML实现IOC操作用注解实现IOC操作AOP——面向切面编程AOP概念以及为什么要用AOP?用XML实现AOP操作用注解实现AOP操作以及Spring封装的轻薄型数据库JdbcTemplate的使用最后就是Spring的事务管理...原创 2020-06-18 15:22:25 · 540 阅读 · 0 评论 -
java框架SSM学习——持久层Mybatis之延迟加载和缓存
延迟加载举个例子来说吧:如果查询用户并且关联查询用户的账户信息。如果先查询用户信息就可以满足要求,当我们需要查询账户信息的时候再去查询账户信息。把用用户信息去查询账户信息的这一过程进行延迟处理,就被称为延迟加载。 延迟加载有什么好处呢?那我们都知道,单表查询的速度肯定是要比多表要快的,那么当我们只需要查询单表,但又有时候要联合多表查询,那么开启延迟加载就是最好的选择,既可以提升查询速度,当要使用到多表的时候就可以级联。在这我们用一个案例来讲解一下。第一步:User表以及Account表建表信息我就不给原创 2020-06-08 17:24:53 · 218 阅读 · 0 评论 -
java框架SSM学习——持久层Mybatis之多表查询
对于多表查询,不单单只有Mybatis的持久层操作中存在,很多数据库操作中这也是需要学会的。那么在之前的对数据库的简单CRUD操作中,基本都是单表查询,那么现在我来讲一下多表查询在Mybatis中如何实现。多表查询多表查询中有这么四种方式:①一对一②一对多③多对一④多对多其中多对一在Mybatis中是并没有说明的,但是我罗列出来其实是好分类一点,主表为单表分为一类以及主表为多表分为一类,那么我们按照顺序去讲解。第一步:需要创建两个表,我原本有一个User表,而现在我新建一个Account表。原创 2020-06-08 16:11:19 · 260 阅读 · 0 评论 -
Java框架SSM学习——持久层Mybatis之动态SQL
动态SQL为什么要用动态SQL?如果使用JDBC或者类似Hibernate等其他框架,很多时候需要去根据需要去拼接SQL语句,这是一个很麻烦的事情。因为在某些查询中,需要多个条件,在使用其他框架的时候,需要用大量的Java代码进行判断,可读性比较差。而Mybatis不一样,其中提供了对SQL语句动态的组装能力,使用XML的几个简单的元素就可以去实现动态拼接SQL语句。对条件的判断都放在了XML配置文件中,大大减少了代码量。但因为注解的配置功能受限,在此也不对注解中配置SQL作讲解。if元素此元素相当原创 2020-06-08 11:46:05 · 161 阅读 · 0 评论 -
Java框架SSM学习——持久层Mybatis之XML配置的各种标签和功能
首先在前面不管是否用过,在本节我都会将大部分罗列出来,自行参考。Maven配置文件<dependencies></dependencies><dependency></dependency><groupId></grouoId><artifactId></artifactId><version></version>在这些标签里,<dependency></原创 2020-06-07 17:24:35 · 471 阅读 · 0 评论 -
Java框架SSM学习——持久层Mybatis之基于XML的CRUD操作
在之前目录下的Mybatis中我已经写了一个小的案例,里面有一个简单的查询数据库操作,那么在这篇文章里我会将CRUD操作重新讲一遍,这里面会有下一节会讲到的标签的用法,我会稍加使用,如果有疑惑可以在下一节的《XML配置的各种标签使用和功能》中了解到。因为前面讲了查询操作,有一点基础,我直接将CRUD操作全部一起讲就可以了。首先配置好Mybatis主配置文件这里我新建了SqlMapConfig.xml文件。里面的代码如下(dtd外部文件头部的代码解释在第一节讲了就不重复了)<?xml versio原创 2020-06-07 09:46:36 · 156 阅读 · 0 评论 -
java框架SSM学习——持久层Mybatis之动态代理模式
java的动态代理模式有哪些?①JDK动态代理②CGLIB动态代理③Javassist④ASM…那我们需要学习哪个?我在本目录下我只讲解JDK动态代理和CGLIB动态代理1.JDK动态代理此动态代理是JDK自带的功能。我通俗点讲,里面有名词:调用者,真实对象和代理对象比如在一个软件公司里,有客户来找此公司设计软件,但是首先接待客户的并不是真正的软件工程师,而是专门负责谈商务业务的人,来问你的需求以及各项事宜,包括讲完需求后需要的薪资、以及签订什么样的合同之类的,也包括失败以后是否终止合作原创 2020-06-06 16:59:49 · 229 阅读 · 0 评论 -
java框架SSM学习——持久层Mybatis之环境搭建
创建的项目中使用Mybatis作为持久层的话,需要多个jar包的支持,如org.mybatis,mysql,log4j,junit等,如果一个个导入太麻烦,所以要用到Maven依赖库(在以前我写的文章里有Maven下载已经配置的全过程)首先新建project,选择Maven项目,然后点击next,填好GroupId和ArtifactId即可next和finish下一步:点开目录下的pom.xml,得到的页面为:利用标签 dependencies和depandency去导入需要的jar包比如我原创 2020-06-06 13:30:38 · 190 阅读 · 0 评论 -
java框架SSM学习——持久层Mybatis学习目录
注意:这个学习目录我是用XML配置文件开发,注解开发暂不考虑,往后再讲。因为我要讲动态代理,所以编写实现类的方法我以后单独再讲。Mybatis学习目录1.Mybatis的环境搭建2.动态代理(重要)3.基于XML的CRUD操作(重要)4.XML配置的各种标签使用和功能(掌握)5.动态Sql(掌握)6.多表查询(掌握)7.延迟加载和缓存(掌握)...原创 2020-06-06 10:19:46 · 232 阅读 · 0 评论