SpringBoot之Mybatis的扩展使用
扩展1:Mybatis分页
使用pageHelper组件进行优化、简化操作。
在上述mybatis的pom文件上引入pagehelper-spring-boot-starter启动器
12345<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.5</version></dependenc ...
SpringBoot之JdbcTemplate和Mybatis的初步使用
SpringBoot JdbcTemplate
Spring DAO:JdbcTemplate、JdbcDaoSupport、JDBC事务(AOP)、异常处理DataAccessException
SpringBoot中提供JdbcTemplateAutoConfiguration自动配置组件,自动创建一个JdbcTemplate对象。
利用自动配置创建连接池对象(参考以前过程)
创建Maven项目,在pom.xml文件中导入dependecy
1234567891011121314151617181920212223242526<dependencies> <de ...
SpringBoot之启动类的@SpringBootApplication和用连接池访问数据库
@SpringBootApplication
@SpringBootApplication是boot类中一个多功能标记,由以下几个标记组成。
@SpringBootConfiguration //开启Bean定义支持
@EnableAutoConfiguration //开启自动配置
@ComponentScan //开启组件扫描
@SpringBootConfiguration
用于支持@Bean组件定义,等价于之前XML中的< bean>.常用于jar包中、特殊bean采用此方法定义,纳入spring容器中。
1234567891011121314151617 ...
SpringBoot之分布式和微服务、SpringBoot的含义和初步使用
分布式和微服务
单体应用:系统界面、静态资源、业务组件等都会在一个工程里,将来发布需要全部发布到一台tomcat服务器上。
分布式:将一个系统的界面、静态资源、业务处理进行拆分,发布到不同的服务器上,然后用户请求过来,调用多个服务器资源处理,给用户响应。
微服务:属于开发分布式应用的架构思想,将大型系统的业务处理部分,进行微型化拆分,拆分出的业务可以独立部署,这些业务之间可以通过协议进行调用,从而实现一个完整业务处理。优点:提升系统的性能、扩展性。
微服务架构技术主流有以下两种:
SpringBoot+SpringCloud (国外,Pivotal)
Dubbo+Zokeerper(国 ...
Spring之Spring和Mybatis整合的批量产生Mapper实现类、ssm架构
指定包批量扫描产生Mapper实现类
在Spring配置文件(applicationContext.xml)中配置MapperScannerConfigurer
1234<!-- 把生成Mapper的单个实现类的MapperFactoryBean删除 --><bean id="mapperScanner" class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" va ...
Spring之Mybatis的参数处理、分页实现、数据库字段不匹配以及与Spring的整合
Mybatis多个参数的处理
通过Map或者对象类型包装多个参数
12345678910111213<select id="findAccountByAccNoAndAccPassword" parameterType="com.xdl.bean.XdlBankAccount" resultType="com.xdl.bean.XdlBankAccount"> select * from xdl_bank_account_30 where acc_no = #{param1,jdbcTy ...
Spring之Mybatis的定义和使用
Mybatis的作用
它支持普通的SQL操作以及存储过程的调用
它是一个高级的ORM框架 (以面向对象的思想操作数据库)
它封装了几乎的jdbc操作以及参数的手工设置
自动检索结果集(自动把结果集转换成对象甚至关联的对象)
MyBatis框架的构成
实体bean 封装数据信息
SQL定义文件 封装SQL语句的XML
主配置文件 定义连接数据库的信息的加载sql定义文件等
框架的API 涉及到SqlSession对象的创建,还有SqlSession对应的API,主要完成增删改查
以根据id查询银行账户为例,编写Mybatis程序
建立一个项目,导入jar包(mybatis ...
Spring之AOP的定义和使用
什么是AOP
Aspect Oriented Programming(面向切面编程或者面向方面编程)
它是对面向对象的一个扩展,可以不修改原有代码的情况下,给原有的逻辑增加功能,降低了共通业务逻辑和原有逻辑的耦合度
因为共同业务逻辑可以通过配置手段加入到原有逻辑中
AOP中涉及到概念
切面 Aspect 封装共通业务逻辑的
连接点 JoinPoint 共通业务逻辑所要嵌入的位置 一般封装了方法的信息
切点 Pointcut 它是一堆连接点 可以看成连接点的集合 (切点表达式)
目标 Target ...
Spring之文件上传、Controlle返回json、MVC对rest架构的支持
文件上传
写一个文件上传的页面
第一必须以post提交,enctype=“multipart/form-data”,type=“file”
12345678910111213141516<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><!DOCTYPE html><html><head><meta charset="utf-8&qu ...
Spring之Controller的重定向、post的中文乱码、拦截器和异常处理
Controller组件实现重定向
控制器方法返回String
12345678 @RequestMapping("/register6.do") public String register6( @ModelAttribute("account") XdlBankAccount account) { //不能重定向jsp,只能通过RequestMapping跳转到jsp上//return "redirect:toLogin.do";//转发,account能传递过去,同理只能寻找RequestM ...