自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(168)
  • 资源 (2)
  • 论坛 (1)

原创 SpringMVC--ModelAttribute注解的使用

Spring MVC中@ModelAttribute注解的使用通过 org.springframework.web.bind.annotation.ModelAttribute 注解类型可经常实现以下两个功能:1)绑定请求参数到实体对象(表单的命令对象)@RequestMapping("/register")public String register(@ModelAttribute("u...

2019-10-31 19:17:23 368

原创 SpringMVC--应用@Autowired和@Service进行依赖注入

Spring MVC应用@Autowired和@Service进行依赖注入Spring MVC 框架本身就是一个非常优秀的 MVC 框架,它具有依赖注入的优点,可以通过 org.springframework.beans.factory. annotation.Autowired 注解类型将依赖注入到一个属性(成员变量)或方法,例如:@Autowiredpublic UserService ...

2019-10-31 19:05:27 706

原创 SpringMVC--Formatter(数据格式化)详解

Spring MVC FormatterSpring MVC 框架的 Formatter 与 Converter<S,T> 一样,也是一个可以将一种数据类型转换成另一种数据类型的接口。不同的是,Formatter 的源数据类型必须是 String 类型,而 Converter<S,T> 的源数据类型是任意数据类型。在 Web 应用中由 HTTP 发送的请求数据到控制器中...

2019-10-31 16:40:27 554

原创 SpringMVC--Converter(类型转换器)详解

Spring MVC ConverterSpring MVC 框架的 Converter<S,T> 是一个可以将一种数据类型转换成另一种数据类型的接口,这里 S 表示源类型,T 表示目标类型。开发者在实际应用中使用框架内置的类型转换器基本上就够了,但有时需要编写具有特定功能的类型转换器。内置的类型转换器在 Spring MVC 框架中,对于常用的数据类型,开发者无须创建自己的类型...

2019-10-31 16:11:54 1555 2

原创 SpringMVC--类型转换的意义

Spring MVC类型转换的意义以一个简单应用(JSP+Servlet)为示例来介绍类型转换的意义。如图 1 所示的添加商品页面用于收集用户输入的商品信息,商品信息包括商品名称(字符串类型 String)、商品价格(双精度浮点类型 double)、商品数量(整数类型 int)。addGoods.jsp页面的代码如下:<%@ page language="java" contentTy...

2019-10-31 10:29:12 777

原创 SpringMVC--转发与重定向

SpringMVC的转发与重定向重定向是将用户从当前处理请求定向到另一个视图(例如 JSP)或处理请求,以前的请求(request)中存放的信息全部失效,并进入一个新的 request 作用域;转发是将用户对当前处理的请求转发给另一个视图或处理请求,以前的 request 中存放的信息不会失效。转发是服务器行为,重定向是客户端行为。1)转发过程客户浏览器发送 http 请求,Web 服务器...

2019-10-30 21:27:29 373

原创 SpringMVC--获取参数的几种常见方式

通过实体 Bean 接收请求参数通过一个实体 Bean 来接收请求参数,适用于 get 和 post 提交请求方式。需要注意的是,Bean 的属性名称必须与请求参数名称相同。1)创建工程并导入相关JAR包2)完善配置文件web.xml<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://ww...

2019-10-30 20:25:23 432

原创 SpringMVC--@Controller和@RequestMapping注解详解

基于注解的控制器使用基于注解的控制器具有以下两个优点:在基于注解的控制器类中可以编写多个处理方法,进而可以处理多个请求(动作),这就允许将相关的操作编写在同一个控制器类中,从而减少控制器类的数量,方便以后的维护。基于注解的控制器不需要在配置文件中部署映射,仅需要使用 RequestMapping 注释类型注解一个方法进行请求处理。Controller 注解类型在 Spring MVC...

2019-10-30 18:43:41 547

原创 SpringMVC--视图解析器概述和前缀prefix、后缀suffix

Spring MVC视图解析器配置Spring 视图解析器是 Spring MVC 中的重要组成部分,用户可以在配置文件中定义 Spring MVC 的一个视图解析器(ViewResolver),示例代码如下:<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" > &...

2019-10-30 18:21:37 5842

原创 SpringMVC--基础环境搭建、第一个SpringMVC程序

基础环境搭建1)创建 Web 应用并引入 JAR 包在 Eclipse 中创建一个名为 springMVCDemo 的 Web 应用,在 springMVCDemo的 lib 目录中添加 Spring MVC 程序所需要的 JAR 包。2)在 web.xml 文件中部署 DispatcherServlet在开发 Spring MVC 应用时需要在 web.xml 中部署 Dispatch...

2019-10-30 18:12:02 275

原创 SpringMVC--处理用户请求的完整流程

Spring MVC 工作流程Spring MVC 框架主要由 DispatcherServlet、处理器映射、控制器、视图解析器、视图组成,其工作原理如下图所示:Spring MVC 的工作流程如下:客户端请求提交到 DispatcherServlet。由 DispatcherServlet 控制器寻找一个或多个 HandlerMapping,找到处理请求的 Controller。...

2019-10-29 17:39:55 441

原创 MyBatis--与Spring的整合步骤

导入相关JAR包1)MyBatis 框架所需的 JAR 包MyBatis 框架所需的 JAR 包包括它的核心包和依赖包。2)Spring 框架所需的 JAR 包Spring 框架所需的 JAR 包包括它的核心模块 JAR、AOP 开发使用的 JAR、JDBC 和事务的 JAR 包(其中依赖包不需要再导入,因为 MyBatis 已提供),具体如下:aopalliance-1.0.jar...

2019-10-29 15:29:29 461

原创 MyBatis--BlobTypeHandler读取Blob类型字段

BlobTypeHandler读取Blob类型字段MyBatis 对数据库的 Blob 字段也进行了支持,它提供了一个 BlobTypeHandler,为了应付更多的场景,它还提供了 ByteArrayTypeHandler,只是它不太常用,这里为读者展示 BlobTypeHandler 的使用方法。首先建一个表。create table file( id int(12) not nu...

2019-10-29 15:21:30 1565

原创 MyBatis--自定义TypeHandler处理枚举

自定义TypeHandler处理枚举在绝大多数情况下,typeHandler 因为枚举而使用,MyBatis 已经定义了两个类作为枚举类型的支持,这两个类分别是:EnumOrdinalTypeHandler。EnumTypeHandler。示例:创建一个性别枚举类:SexEnumpackage com.mybatis.po;public enum SexEnum { M...

2019-10-29 15:17:55 309

原创 MyBatis--自定义TypeHandler

自定义TypeHandler要实现 typeHandler 就需要去实现接口 typeHandler,或者继承 BaseTypeHandler(实际上,BaseTypeHandler 实现了 typeHandler 接口)。自定义String类型的TypeHandler:import java.sql.CallableStatement;import java.sql.PreparedSt...

2019-10-29 09:18:16 296

原创 MyBatis--系统定义的TypeHandler、BaseTypeHandler和StringTypeHandler源码分析

系统定义的TypeHandlerMyBatis 内部定义了许多有用的 typeHandler,如下表所示。类型处理器Java类型JDBC类型BooleanTypeHandlerjava.lang.Boolean,boolean数据库兼容的 BOOLEANByteTypeHandlerjava.lang.Byte,byte数据库兼容的 NUMERIC 或 BY...

2019-10-29 09:10:13 1495

原创 MyBatis--TypeHandler类型转换器概述

TypeHandler类型转换器在 JDBC 中,需要在 PreparedStatement 对象中设置那些已经预编译过的 SQL 语句的参数。执行 SQL 后,会通过 ResultSet 对象获取得到数据库的数据,而这些 MyBatis 是根据数据的类型通过 typeHandler 来实现的。在 typeHandler 中,分为 jdbcType 和 javaType,其中 jdbcType...

2019-10-29 08:53:44 343

原创 MyBatis--多对多关联查询(级联查询)

多对多关联查询创建表及准备数据:create table book( bid int primary key auto_increment, bname varchar(20) );create table category( cid int primary key auto_increm...

2019-10-28 23:29:12 332

原创 MyBatis一对多关联查询(级联查询)

一对多级联查询创建表及准备数据:CREATE TABLE `user` ( `uid` tinyint(2) NOT NULL, `uname` varchar(20) DEFAULT NULL, `usex` varchar(10) DEFAULT NULL, PRIMARY KEY (`uid`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;...

2019-10-28 22:25:35 377

原创 MyBatis--一对一关联查询(级联查询)的三种方式

一对一关联查询在 MyBatis 中,通过 元素的子元素 处理这种一对一级联关系。在 元素中通常使用以下属性。property:指定映射到实体类的对象属性。column:指定表中对应的字段(即查询返回的列名)javaType:指定映射到实体对象属性的类型。select:指定引入嵌套查询的子 SQL 语句,该属性用于关联映射中的嵌套查询。示例下面以个人与身份证之间的关系为例...

2019-10-28 18:21:54 895

原创 UML--状态图的基本概念和作用

状态图的含义1)状态机状态机是一种记录下给定时刻状态的设备,它可以根据各种不同的输入对每个给定的变化改变其状态或引发一个动作。比如:计算机操作系统中的进程调度和缓冲区调度都是一个状态机。在UML中,状态机由对象的各个状态和连接这些状态的转换组成, 是展示状态与状态转换的图。在面向对象的软件系统中,一个对象无论多么简单或者多么复杂,都必然会经历一个从开始创建到最终消亡的完整过程,这个过程通常...

2019-10-27 20:56:55 2888

原创 MyBatis--动态sql之foreach标签

<foreach>标签 元素主要用在构建 in 条件中,它可以在 SQL 语句中迭代一个集合。 元素的属性主要有 item、index、collection、open、separator、close。item 表示集合中每一个元素进行迭代时的别名。index 指定一个名字,用于表示在迭代过程中每次迭代到的位置。open 表示该语句以什么开始。separator 表示在每次...

2019-10-27 19:04:53 311

原创 MyBatis--动态sql之bind标签

<bing>标签在进行模糊查询时,如果使用“${}”拼接字符串,则无法防止 SQL 注入问题。如果使用字符串拼接函数或连接符号,但不同数据库的拼接函数或连接符号不同。例如 MySQL 的 concat 函数、Oracle 的连接符号“||”,这样 SQL 映射文件就需要根据不同的数据库提供不同的实现,显然比较麻烦,且不利于代码的移植。幸运的是,MyBatis 提供了 <bin...

2019-10-27 18:16:12 779

原创 MyBatis--动态sql之trim、where、set标签

<trim>元素<trim> 元素的主要功能是可以在自己包含的内容前加上某些前缀,也可以在其后加上某些后缀,与之对应的属性是 prefix 和 suffix。可以把包含内容的首部某些内容覆盖,即忽略,也可以把尾部的某些内容覆盖,对应的属性是 prefixOverrides 和 suffixOverrides。正因为 <trim> 元素有这样的功能,所以也可以...

2019-10-27 18:13:24 394

原创 MyBatis--动态sql之choose、when、otherwise标签

choose、when和otherwise有些时候不想用到所有的条件语句,而只想从中择取一二,针对这种情况,MyBatis 提供了 元素,它有点像 Java 中的 switch 语句。示例1)添加 SQL 映射语句:<!--使用choose、when、otherwise元素根据条件动态查询用户信息--><select id="selectUserByChoose" r...

2019-10-27 17:33:31 801

原创 MyBatis--动态sql之if标签:条件判断

if标签动态 SQL 通常要做的事情是有条件地包含 where 子句的一部分,所以在 MyBatis 中 <if> 元素是最常用的元素,它类似于 Java 中的 if 语句。示例1)添加 SQL 映射语句:<!--使用 if 元素根据条件动态查询用户信息--><select id="selectUserByIf" resultType="com.po.MyU...

2019-10-27 17:25:06 433

原创 MyBatis--resultMap元素的结构及使用

resultMap元素的结构<resultMap id="" type=""> <constructor><!-- 类再实例化时用来注入结果到构造方法 --> <idArg/><!-- ID参数,结果为ID --> <arg/><!-- 注入到构造方法的一个普通结果 -->...

2019-10-27 17:12:33 648

原创 MyBatis中的insert、update、delete和sql标签

insert 元素用于映射插入语句,MyBatis 执行完一条插入语句后将返回一个整数表示其影响的行数。keyProperty:该属性的作用是将插入或更新操作时的返回值赋给 PO 类的某个属性,通常会设置为主键对应的属性。如果是联合主键,可以将多个值用逗号隔开。keyColumn:该属性用于设置第几列是主键,当主键列不是表中的第 1 列时需要设置。如果是联合主键,可以将多个值用逗号隔开。...

2019-10-27 17:05:01 996

原创 Mybatis--select标签传递多个参数(Map方式、JavaBean方式)

SELECT标签在 SQL 映射文件中 元素用于映射 SQL 的 select 语句,其示例代码如下<!--根据uid查询一个用户信息 --><select id="selectUserById" parameterType="Integer" resultType="com.mybatis.po.MyUser"> select * from user wh...

2019-10-27 16:49:54 825

原创 MyBatis--执行SQL的两种方式:SqlSession和Mapper接口

SqlSession 发送 SQL有了映射器就可以通过 SqlSession 发送 SQL 了。我们以 getRole 这条 SQL 为例看看如何发送 SQL。Role role = (Role)sqlSession.select("com.mybatis.mapper.RoleMapper.getRole",1L);selectOne 方法表示使用查询并且只返回一个对象,而参数则是一个 ...

2019-10-27 10:35:51 535

原创 MyBatis--SqlSession概述

SqlSession概述在 MyBatis 中,SqlSession 是其核心接口。在 MyBatis 中有两个实现类,DefaultSqlSession 和 SqlSessionManager。DefaultSqlSession 是单线程使用的,而 SqlSessionManager 在多线程环境下使用。SqlSession 的作用类似于一个 JDBC 中的 Connection 对象,代表...

2019-10-27 10:30:03 343

原创 MyBatis--实现映射器的2种方式:XML文件形式和注解形式

映射器是 MyBatis 中最重要、最复杂的组件,它由一个接口和对应的 XML 文件(或注解)组成。它可以配置以下内容:描述映射规则。提供 SQL 语句,并可以配置 SQL 参数类型、返回类型、缓存刷新等信息。配置缓存。提供动态 SQL。准备一张表:CREATE TABLE `role` ( `id` bigint(20) NOT NULL, `role_name`...

2019-10-27 10:19:11 728 1

原创 MyBatis--配置typeAliases(别名)详解

typeAliases由于类的全限定名称很长,需要大量使用的时候,总写那么长的名称不方便。在 MyBatis 中允许定义一个简写来代表这个类,这就是别名,别名分为系统定义别名和自定义别名。在 MyBatis 中别名由类 TypeAliasRegistry(org.apache.ibatis.type.TypeAliasRegistry)去定义。注意: 在 MyBatis 中别名不区分大小写。...

2019-10-26 10:21:43 344

原创 MyBatis--settings属性配置详解

settings在 MyBatis 中 settings 是最复杂的配置,它能深刻影响 MyBatis 底层的运行,但是在大部分情况下使用默认值便可以运行,所以在大部分情况下不需要大量配置它,只需要修改一些常用的规则即可,比如自动映射、驼峰命名映射、级联规则、是否启动缓存、执行器(Executor)类型等。settings 配置项说明,如下表所示:配置项作用配置选项默认值...

2019-10-26 10:01:53 589

原创 MyBatis--核心配置文件properties元素

propertiesproperties 属性可以给系统配置一些运行参数,可以放在 XML 文件或者 properties 文件中,而不是放在 Java 编码中,这样的好处在于方便参数修改,而不会引起代码的重新编译。一般而言,MyBatis 提供了 3 种方式让我们使用 properties,它们是:property 子元素。properties 文件。程序代码传递。property...

2019-10-26 09:44:44 605

原创 MyBatis--配置文件详解

MyBatis配置文件详解<?xml version="1.0" encoding="utf-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration&gt...

2019-10-26 09:38:07 597

原创 MyBatis--SqlSessionFactoryBuilder、SqlSessionFactory和SqlSession的作用域以及生命周期

SqlSessionFactoryBuilderSqlSessionFactoryBuilder 的作用在于创建 SqlSessionFactory,创建成功后,SqlSessionFactoryBuilder 就失去了作用,所以它只能存在于创建 SqlSessionFactory 的方法中,而不要让其长期存在。因此 SqlSessionFactoryBuilder 实例的最佳作用域是方法作用域...

2019-10-25 22:41:04 811

原创 MyBatis--单表增删改查

准备表创建项目并导包创建User类package pers.zhang.po;import java.io.Serializable;import java.util.Date;public class User implements Serializable { /** * */ private static final long serialVersionUI...

2019-10-25 20:00:12 316

原创 MyBatis--核心组件:SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession和SQL Mapper

核心组件MyBatis 的核心组件分为 4 个部分。SqlSessionFactoryBuilder(构造器):它会根据配置或者代码来生成 SqlSessionFactory,采用的是分步构建的 Builder 模式。SqlSessionFactory(工厂接口):依靠它来生成 SqlSession,使用的是工厂模式。SqlSession(会话):一个既可以发送 SQL 执行返回结果,也...

2019-10-25 17:21:19 343

原创 MyBatis--SqlSessionFactory概述及创建方式

SqlSessionFactory概述使用 MyBatis 首先是使用配置或者代码去生产 SqlSessionFactory,而 MyBatis 提供了构造器 SqlSessionFactoryBuilder。MyBatis提供了一个类org.apache.ibatis.session.Configuration 作为引导,采用的是 Builder 模式。具体的分步则是在 Configurat...

2019-10-25 11:50:42 343

vuedevtools安装.zip

用于Chrome本地安装vue-devtools,无脑安装!!!! 安装过程: 1.Chrome=》设置=》更多工具=》扩展程序 2.打开开发者模式 3.加载已解压的扩展程序=》选择解压后的文件夹 4.重启浏览器 5.如果失败,在加载后的vuedevtools设置页面开启“允许访问文件网址”

2019-10-27

软考历年真题.zip

2009年开始一直到2018年,历年的软考中级-软件设计师真题。历年的上午+下午真题,全部为PDF格式。题目清晰,完整。

2019-09-09

吴声子夜歌的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也
提示
确定要删除当前文章?
取消 删除