1.概述 有时项目里里需要抽取不同系统中的数据源,需要访问不同的数据库,本文介绍在Springboot+Mybatis项目中如何支持多数据源操作. 有需要的同学可以下载 示例代码 项目结构如下: 2.建数据源 首先,我们建两个测试库 test1 test2,分别建两个表,分别添加一些测试数据 CREATE TABLE `groupidinfo` ( `id` ) NOT NULL AUTO_INCREMENT, `groupId` ) DEFAULT NULL, `version` ) DEFA…
Junit这种老技术,现在又拿出来说,不为别的,某种程度上来说,更是为了要说明它在项目中的重要性. 凭本人的感觉和经验来说,在项目中完全按标准都写Junit用例覆盖大部分业务代码的,应该不会超过一半. 刚好前段时间写了一些关于SpringBoot的帖子,正好现在把Junit再拿出来从几个方面再说一下,也算是给一些新手参考了. 那么先简单说一下为什么要写测试用例 1. 可以避免测试点的遗漏,为了更好的进行测试,可以提高测试效率 2. 可以自动测试,可以在项目打包前进行测试校验 3. 可以及时发现因…
在springBoot+Mybatis日志显示SQL的执行情况的最简单方法就是在properties新增: logging.level.com.dy.springboot.server.mapper=debug 注意:其中com.dy.springboot.server.mapper是要打印sql 语句的包,logging.level.com.你的Mapper包=日志等级…
在开发中因需求在项目中需要实现多数据源(虽然项目框架是SpringCloud,但是因其中只是单独的查询操作,觉得没必要开发一个项目,所以采用多数据源来进行实现) 1.在配置文件中创建多个数据连接配置 spring.datasource.primary.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.primary.url=jdbc:mysql://127.0.0.1:3306/test1?useUnicode=true&…
Jackson允许配置多态类型处理,当JSON面对的转换对象是一个接口.抽象类或者一个基类的时候,可以通过一定配置实现JSON的转换.在实际项目中,Controller层接收入参以及在Dao层将对象以json的形式存入数据库时都可能会遇到这个问题.而Springboot和mp都支持使用Jackson处理json,从而可以利用Jackson的特点,解决这一问题. 注意 为了代码简洁,这里的代码忽略了set和get方法和构造函数 在本例中,父类Zoo有两个子类Dog和Cat类 public stat…
==================================Shiro 的加深理解:==================================1. Shiro 和 Spring 系组件的对标, Shiro = Spring Security + Spring Session. 就是说 Shiro 不仅仅是一个安全框架, 同时也是一个 Session 管理框架. 其实这也是很自然的事情, Shiro 会拦截所有的 web 请求, 通过 SecurityManager 进行安全审核…
swagger的三个项目及其作用 我们打开swagger的官网,会发现有三个swagger相关的项目,它们分别是 swagger-editor 作用是通过写代码,生成文档描述(一个json文件或其他格式的api元数据文件) swagger-ui 通过请求文档描述(一个json文件)的数据,把api的文档显示在页面上 swagger-codegenerator 通过文档描述,来生成实现的代码 如何在spring-boot项目中集成swagger? 我们使用springfox-swagger这个项目…
问题描述: 在用Vue脚手架 编写出一个页面之后, 部署到后台项目中, 因为做的是一个页面 按理来说 怎么都能够在服务器上运行 , 我也在自己的node环境测试 , 在同学的springboot上运行 ,但是放到公司的大项目中就出现了问题 只能加载出来头部内容 , 其他内容消失不见了 发现问题所在 F12 我F12查看界面结构 , 发现App.vue 这个文件的内容都加载出来了 , 其他的组件还有一些其他的东西都没有 . 需要重写 我不得不重新编写一遍 , 这次不使用脚手架 , 就像 jquer…
maven文件 <!-- redis --> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>${jedis.version}</version> </dependency> <dependency> <groupId>org.springframewo…
前言 本篇文章主要讲述的是SpringBoot整合Mybatis.Druid和PageHelper 并实现多数据源和分页.其中SpringBoot整合Mybatis这块,在之前的的一篇文章中已经讲述了,这里就不过多说明了.重点是讲述在多数据源下的如何配置使用Druid和PageHelper . Druid介绍和使用 在使用Druid之前,先来简单的了解下Druid. Druid是一个数据库连接池.Druid可以说是目前最好的数据库连接池!因其优秀的功能.性能和扩展性方面,深受开发人员的青睐. D…
开发环境介绍:IDEA + maven + springboot2.1.4 1.用IDEA搭建SpringBoot项目:File - New - Project - Spring Initializr,(在选引用功能界面时,什么都不选)再一直Next即可,最后生成的项目结构如下:(首先记得在File - Settings - 搜索maven,将maven路径改成你本地配置的) 然后我们在SpringBoot启动文件Sb001Application下,启动项目,出现 Started Sb001Ap…
项目背景:项目开发中数据库使用了读写分离,所有查询语句走从库,除此之外走主库. 最简单的办法其实就是建两个包,把之前数据源那一套配置copy一份,指向另外的包,但是这样扩展很有限,所有采用下面的办法. 参考了两篇文章如下: http://blog.csdn.net/zl3450341/article/details/20150687 http://www.blogjava.net/hoojo/archive/2013/10/22/405488.html 这两篇文章都对原理进行了分析,下面只写自己…
springboot的原则是简化配置,本文试图不通过xml配置,使用configuration配置数据源,并进行简单的数据访问. 并且配置了多数据源,在开发过程中这种场景很容易遇到. 1.依赖 springboot的starter mybatis的springboot集成包 jdbc <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId&g…
 要搭建的项目的项目结构如下(使用的框架为:Spring.SpingMVC.MyBatis): 2.pom.xml中的配置如下(注意,本工程分为几个小的子工程,另外两个工程最终是jar包): 其中pom.xml中的内容如下,其中${ip}为ip地址: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"…
继续接着上一节,大家应该知道驼峰命名法吧!就是我们javabean中属性一般命名是lastName,userName这种类型的,而数据库中列名一般都是last_name,user_name这种的,要让对应起来,在springboot中可以设置 另外大家可以看看我们用了mybatis依赖之后,导入了一些什么jar包,比较关键的是那个autoconfigure,其实内部就跟之前我们手写的那个starter原理差不多 我们也可以用xxxCustomizer来定制功能,以上面的驼峰命名为例,就可以使用这…
前言 本文将总结项目中用到的一些springboot 的技巧,持续更新. Mybatis-Plus 的运用 使用原因: 主要是节省了Mapper层的编写,通过继承BaseMapper可以直接调用通用的sql 1. 修改pom.xml文件,加入mybatis-plus-boot-starter包,去掉mybatis-spring-boot-starter包.pom.xml如下: <dependency> <groupId>org.springframework.boot</gr…
注意点有:1. 不要启用 spring-boot-devtools, 如果启用 devtools 后, 不管是热启动还是手工重启, devtools总是试图重新恢复之前的session数据, 很有可能会导致session混乱.2. 在配置 Shiro 的filterChainDefinitionMap时, 登陆的 url 也要使用 authc filter. 3. 自定义 Realm 类的 doGetAuthenticationInfo() 方法, 仅生成 AuthenticationInfo…
首先 spring 配置文件中引入 数据源配置 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.spr…
springboot_data_access_demo基于rapid,根据自定义模版生成的基于mybatis+mysql的数据库访问示例项目.简单配置数据库信息,配置不同的生成策略生成可以直接运行访问数据库的项目,吸取了mybatis generator的动态条件优势,同时又稍有扩展.可以生成简单易懂的sql,支持大部分单表操作,一般情况下不需要自己动手写sql.模板可以根据自己需求做相应的修改(如有需要可以提供springboot_data_access_demo项目的生成模板).支持的方法有…
1.代码生成器: [正反双向](单表.主表.明细表.树形表,快速开发利器)freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本.处理类.service等完整模块2.多数据源:(支持同时连接无数个数据库,可以不同的模块连接不同数的据库)支持N个数据源3.阿里数据库连接池druid,安全权限框架 shiro(菜单权限和按钮权限), 缓存框架 ehcache4.代码编辑器,在线模版编辑,仿开发工具编辑器5.调用摄像头拍照 自定义裁剪编辑头像,头像图片色度调节6.we…
记录一下java开发中多数据源的配置过程, 参考博客:https://blog.csdn.net/weinichendian/article/details/72903757,我在这里进行了整理,使用yml:排除了里边在springboot2.0报错的内容,以及里边没有说太清楚的内容,进行了详细的说明 1.配置文件application.yml personnel:#数据源1 driver-class-name: com.mysql.cj.jdbc.Driver jdbc-url: jdbc:m…
今天在玩儿mybatis的时候遇到一个蛮有东西的事情:抛了一个让我折腾几个小时的错误,所以记录一下 这个错误有意思的地方就在于这里: 当使用useSSL安全连接时,抛出了上述的错误把useSSL改为false时,项目成功运行了 我最后喝了三杯咖啡.吸了两杆烟之后,得出结论是: 1.是因为查询类已经序列化了,外加IDEA的小bug,这时通过Maven管理工具的清除工具(即:Lifecycle中的clean)清除一下,然后再update classes and resources.重新编译程序就可以…
前言 DAO(Data Access Object) 是数据访问层,说白了就是跟数据库打交道的,而数据库都有哪几种操作呢?没错,就是增删改查.这就意味着Dao层要提供增删改查操作. 不知道大家是怎么写Dao层的接口的.如果你没有一个好的思路,那就看看我的思路吧.如果你有更好的思路,欢迎指正. 正文 1.每一个实体类对应一个Dao接口文件和一个mybatis文件 结构如下: 2.UserDao采用统一写法 Dao层只写六个接口就能解决百分之九十的问题 User.java package com.e…
解决方法: 先将模板路径放置templates目录下,发现可以访问,说明th:replace是可以用的. 那可能是出现在路径问题上面. 于是我开始调错,改路径. 后来在网上查找资料.说了很多种方法. 第一种,见截图: 但上面应该写错了,不应该是ServletContextTemplateResolver,而应该是SpringResourceTemplateResolver.而且应该交给spring容器进行管理,而不是放在构造方法中. 另外第二种方案就是: 尝试不带〜{}的情况调用th:repla…
import javax.annotation.Resource; import javax.persistence.EntityManager; @Resource private EntityManager entityManager; 笔记参考.…
1. 将此标签内容放到pom.xml仅次于project标签下 <repositories> <repository> <id>github</id> <url>https://raw.github.com/deadzq/web-sso-core/master</url> <snapshots> <enabled>true</enabled> <updatePolicy>always&l…
在Springboot出现之前配置数据源以及相关的事物,缓存等内容一直是个繁琐的工作,但是Springboot出现后这些基本都可以靠默认配置搞定,就变得很轻松了.这就是现在推崇模板>配置的原因,不过话说回来,如果你想配和模板不同,该繁琐的地方仍然一样繁琐,比如今天要讲的,在Springboot项目中配多数据源.接下来逐渐讲一下. 为项目添加Druid依赖 直接去Maven仓库搜最新的Druid和log4j,阿里的Druid强依赖log4j,却没加到Maven依赖中,实际上,不装log4j的话会报…
Web项目中加入struts2 的支持 在lib下加入strut2的jar包 2. 在web.xml中添加配置 <filter> <filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter </filter-class> </filter> <filt…
一.基本使用: 1.所需文件架包 A. Ckeditor基本文件包,比如:ckeditor_3.6.2.zip 下载地址:http://ckeditor.com/download 2.配置使用 A.将下载下来的CKEditor压缩解压,将解压后的文件夹(“ckeditor”)拷贝进项目里面,比如我是放在”WebContent”的”commons”文件夹下: B.在需要使用CKEditor的页面引入CKEditor的支持javascript <head> <script type=&quo…
CocoaPods是什么? 当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等.可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其他类库又用到其他类库,“子子孙孙无穷尽也”,这也许是比较特殊的情况.总之小编的意思就是,手动一个个去下载所需类库十分麻烦.另外一种常见情况是,你项目中用到的类库有更新,你必须得重新下载新版本,重新加入到项目中,十分麻烦.如果能有什么工具能解决这些恼人的问题,那将“善莫大焉”.所以,你需要 Coco…