《一步步搭建Springboot+zk+dubbo分布式微服务博客》之基础框架搭建篇4:测试mybatisplus操作mysql(version4)

《一步步搭建Springboot+zk+dubbo分布式微服务博客》之基础框架搭建篇4:测试mybatisplus操作mysql(version4)

创建子项目sdubbo-web用于前端统一显示模块,测试mybatisplus能否操作mysql

 

注意目前本节创建的用户及实体只是临时测试用的,以后会抽取到用户服务里。

 

 

============sdubbo-web=====pom.xml========

<?xml version="1.0"?>

<project

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"

xmlns="http://maven.apache.org/POM/4.0.0"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<modelVersion>4.0.0</modelVersion>

<parent>

<groupId>org.it123</groupId>

<artifactId>sdubbo</artifactId>

<version>0.0.1-SNAPSHOT</version>

</parent>

<artifactId>sdubbo-web</artifactId>

<name>springboot-dubbo-web</name>

<url>http://www.it123.org</url>

<properties>

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

</properties>

<dependencies>



<dependency>

<groupId>io.springfox</groupId>

<artifactId>springfox-swagger2</artifactId>

<version>2.9.2</version>

</dependency>

<dependency>

<groupId>io.springfox</groupId>

<artifactId>springfox-swagger-ui</artifactId>

<version>2.9.2</version>

</dependency>



<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter</artifactId>

<exclusions>

<exclusion>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-logging</artifactId>

</exclusion>

</exclusions>

</dependency>





<dependency>

<groupId>org.apache.curator</groupId>

<artifactId>curator-framework</artifactId>

<version>2.12.0</version>

<exclusions>

<exclusion>

<groupId>log4j</groupId>

<artifactId>log4j</artifactId>

</exclusion>

</exclusions>

</dependency>



<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

<exclusions>

<exclusion>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-logging</artifactId>

</exclusion>

</exclusions>

</dependency>



<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-jdbc</artifactId>

<exclusions>

<exclusion>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-logging</artifactId>

</exclusion>

</exclusions>

</dependency>





<!-- Log4j2 -->

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-log4j2</artifactId>

</dependency>



<dependency>

<groupId>org.it123</groupId>

<artifactId>sdubbo-common-face</artifactId>

<version>0.0.1-SNAPSHOT</version>

</dependency>



<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-freemarker</artifactId>

</dependency>



<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-security</artifactId>

</dependency>






<dependency>

<groupId>org.apache.storm</groupId>

<artifactId>storm-core</artifactId>

<version>1.2.2</version>

</dependency>



<!-- <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId>

<optional>true</optional> </dependency> -->





</dependencies>

</project>

 

 

==========application.properties文件内容:=======

 

spring.application.name=sdubbo-web

server.port=80


#项目名字

dubbo.application.name=sdubbo-web

demo.service.version=1.0.0

dubbo.protocol.name=dubbo

dubbo.protocol.port=20880



#dubbo注册中心的地址和端口,主要是获取服务地址用

dubbo.registry.address=zookeeper://localhost:2181

sdubbo-web.timeout = 5000


#异常抛出

spring.mvc.throw-exception-if-no-handler-found=true



#redis

spring.redis.host=127.0.0.1

spring.redis.port=6379

spring.redis.password=



#

spring.redis.timeout=3000

spring.session.store-type=redis



#

spring.freemarker.suffix=.html

spring.freemarker.request-context-attribute=request


#本地内容映射/挂载到springboot的静态static目录中

web.upload-path=D:/home/oss/file

spring.mvc.static-path-pattern=/**

spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,\classpath:/static/,classpath:/public/,file:${web.upload-path}

//启用aop

spring.aop.auto=true


#mysql的链接配置,临时本节用的,以后web层都不能链接mysql
spring.datasource.url=jdbc:mysql://localhost:3306/sdubbo?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

=========Users服务临时测试用的=以后我们会抽取到单一的服务作为用户服务=========

Users 实体类

package org.it123.sdubbo.model.system;



import java.util.List;



import com.baomidou.mybatisplus.annotation.TableName;



/**

 * 用户实体类

 */



@TableName("tab_sys_users")

public class Users implements Serializable  {



/**

 *

 */

private static final long serialVersionUID = 1L;

private String id;



private String name;



private String faceImg;



private String email;



private String password;



private String state;



public String getName() {

return name;

}



public void setName(String name) {

this.name = name;

}



public String getEmail() {

return email;

}



public void setEmail(String email) {

this.email = email;

}



public String getPassword() {

return password;

}



public void setPassword(String password) {

this.password = password;

}



public String getFaceImg() {

return faceImg;

}



public void setFaceImg(String faceImg) {

this.faceImg = faceImg;

}



public String getState() {

return state;

}



public void setState(String state) {

this.state = state;

}



@Override

public String toString() {

return "Users [name=" + name + ", faceImg=" + faceImg + ", email=" + email + ", password=" + password

+ ", state=" + state + "]";

}



}



==============UsersService 接口==============

package org.it123.sdubbo.web.service;



import org.it123.sdubbo.web.model.Users;

import org.springframework.stereotype.Service;





@Service

public interface UsersService {



int add(Users users);









}







=============UsersServiceImpl 实现类=========

package org.it123.sdubbo.web.service.impl;



import org.it123.sdubbo.web.dao.UsersDao;

import org.it123.sdubbo.web.model.Users;

import org.it123.sdubbo.web.service.UsersService;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Service;





@Service

public class UsersServiceImpl implements UsersService {



@Autowired

private UsersDao usersDao;



@Override

public int add(Users users) {

return usersDao.insert(users);



}



}





操作层类

package org.it123.sdubbo.web.dao;



import org.it123.sdubbo.web.model.Users;

import org.springframework.stereotype.Repository;



import com.baomidou.mybatisplus.core.mapper.BaseMapper;



@Repository

public interface UsersDao extends BaseMapper<Users> {



}





控制器层



package org.it123.sdubbo.web.controller;



import org.it123.sdubbo.web.model.Users;

import org.it123.sdubbo.web.service.UsersService;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.web.bind.annotation.GetMapping;

import org.springframework.web.bind.annotation.RestController;



@RestController

public class UsersController {



@Autowired

private UsersService usersService;



@GetMapping("/demo")

public String demo() {



Users users = new Users();

users.setName("1");

users.setName("IT123私塾");



users.setPassword("123456");



int mum = usersService.add(users);



if (mum > 0) {



return "增加成功";

} else {

return "增加失败";



}



}



}





入口文件启动类



package org.it123.sdubbo.web;



import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.EnableAutoConfiguration;

import org.springframework.boot.autoconfigure.SpringBootApplication;

import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;

import org.springframework.context.annotation.ComponentScan;

import org.springframework.context.annotation.EnableAspectJAutoProxy;



import com.alibaba.dubbo.config.spring.context.annotation.EnableDubbo;



import springfox.documentation.swagger2.annotations.EnableSwagger2;





@EnableSwagger2

@EnableDubbo

@ComponentScan(basePackages = {"org.it123.sdubbo.*"})

@SpringBootApplication

@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})

@EnableAspectJAutoProxy(proxyTargetClass=true)

public class webApplication {



public static void main(String[] args) {

SpringApplication.run(webApplication.class, args);

}

}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 愿景我们的愿景是成为 MyBatis 超好的搭档,就像 魂斗罗 中的 1P、2P,基友搭配,效率翻倍。 特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求支持 Lambda 形式调用:通过 Lambda 表达式,方便的编写各类查询条件,无需再担心字段写错支持主键自动生成:支持多达 4 种主键策略(内含分布式唯一 ID 生成器 - Sequence),可自由配置,完美解决主键问题支持 ActiveRecord 模式:支持 ActiveRecord 形式调用,实体类只需继承 Model 类即可进行强大的 CRUD 操作支持自定义全局通用操作:支持全局通用方法注入( Write once, use anywhere )内置代码生成器:采用代码或者 Maven 插件可快速生成 Mapper 、 Model 、 Service 、 Controller 层代码,支持模板引擎,更有超多自定义配置等您来使用内置分页插件:基于 MyBatis 物理分页,开发者无需关心具体操作,配置好插件之后,写分页等同于普通 List 查询分页插件支持多种数据库:支持 MySQL、MariaDB、Oracle、DB2、H2、HSQL、SQLite、Postgre、SQLServer 等多种数据库内置性能分析插件:可输出 Sql 语句以及其执行时间,建议开发测试时启用该功能,能快速揪出慢查询内置全局拦截插件:提供全表 delete 、 update 操作智能分析阻断,也可自定义拦截规则,预防误操作 我们将通过理论与实操的方式来阐述 MyBatis-Plus 的强大功能,体验和学习MyBatis-Plus技术。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mastudy老师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值