当前位置: 首页 > news >正文

游乐网站设计div嵌套影响网站收录

游乐网站设计,div嵌套影响网站收录,建设派网站,wordpress 为什么流行本文主要讲解mall整合SpringBootMyBatis搭建基本骨架#xff0c;以商品品牌为例实现基本的CRUD操作及通过PageHelper实现分页查询。 mysql数据库环境搭建 下载并安装mysql5.7版本#xff0c;下载地址#xff1a;dev.mysql.com/downloads/i…设置数据库帐号密码#xff1a;r…本文主要讲解mall整合SpringBootMyBatis搭建基本骨架以商品品牌为例实现基本的CRUD操作及通过PageHelper实现分页查询。 mysql数据库环境搭建 下载并安装mysql5.7版本下载地址dev.mysql.com/downloads/i…设置数据库帐号密码root root下载并安装客户端连接工具Navicat,下载地址www.formysql.com/xiazai.html创建数据库mall导入mall的数据库脚本脚本地址github.com/macrozheng/…项目使用框架介绍 SpringBoot SpringBoot可以让你快速构建基于Spring的Web应用程序内置多种Web容器(如Tomcat)通过启动入口程序的main函数即可运行。 PagerHelper MyBatis分页插件简单的几行代码就能实现分页在与SpringBoot整合时只要整合了PagerHelper就自动整合了MyBatis。 PageHelper.startPage(pageNum, pageSize); //之后进行查询操作将自动进行分页 ListPmsBrand brandList brandMapper.selectByExample(new PmsBrandExample()); //通过构造PageInfo对象获取分页信息如当前页码总页数总条数 PageInfoPmsBrand pageInfo new PageInfoPmsBrand(list); 复制代码Druid alibaba开源的数据库连接池号称Java语言中最好的数据库连接池。 Mybatis generator MyBatis的代码生成器可以根据数据库生成model、mapper.xml、mapper接口和Example通常情况下的单表查询不用再手写mapper。 项目搭建 使用IDEA初始化一个SpringBoot项目 添加项目依赖 在pom.xml中添加相关依赖。 parentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.1.3.RELEASE/versionrelativePath/ !-- lookup parent from repository --/parentdependencies!--SpringBoot通用依赖模块--dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-actuator/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-aop/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependency!--MyBatis分页插件--dependencygroupIdcom.github.pagehelper/groupIdartifactIdpagehelper-spring-boot-starter/artifactIdversion1.2.10/version/dependency!--集成druid连接池--dependencygroupIdcom.alibaba/groupIdartifactIddruid-spring-boot-starter/artifactIdversion1.1.10/version/dependency!-- MyBatis 生成器 --dependencygroupIdorg.mybatis.generator/groupIdartifactIdmybatis-generator-core/artifactIdversion1.3.3/version/dependency!--Mysql数据库驱动--dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion8.0.15/version/dependency/dependencies 复制代码修改SpringBoot配置文件 在application.yml中添加数据源配置和MyBatis的mapper.xml的路径配置。 server:port: 8080spring:datasource:url: jdbc:mysql://localhost:3306/mall?useUnicodetruecharacterEncodingutf-8serverTimezoneAsia/Shanghaiusername: rootpassword: rootmybatis:mapper-locations:- classpath:mapper/*.xml- classpath*:com/**/mapper/*.xml 复制代码项目结构说明 Mybatis generator 配置文件 配置数据库连接Mybatis generator生成model、mapper接口及mapper.xml的路径。 ?xml version1.0 encodingUTF-8? !DOCTYPE generatorConfigurationPUBLIC -//mybatis.org//DTD MyBatis Generator Configuration 1.0//ENhttp://mybatis.org/dtd/mybatis-generator-config_1_0.dtdgeneratorConfigurationproperties resourcegenerator.properties/context idMySqlContext targetRuntimeMyBatis3 defaultModelTypeflatproperty namebeginningDelimiter value/property nameendingDelimiter value/property namejavaFileEncoding valueUTF-8/!-- 为模型生成序列化方法--plugin typeorg.mybatis.generator.plugins.SerializablePlugin/!-- 为生成的Java模型创建一个toString方法 --plugin typeorg.mybatis.generator.plugins.ToStringPlugin/!--可以自定义生成model的代码注释--commentGenerator typecom.macro.mall.tiny.mbg.CommentGenerator!-- 是否去除自动生成的注释 true是 false:否 --property namesuppressAllComments valuetrue/property namesuppressDate valuetrue/property nameaddRemarkComments valuetrue//commentGenerator!--配置数据库连接--jdbcConnection driverClass${jdbc.driverClass}connectionURL${jdbc.connectionURL}userId${jdbc.userId}password${jdbc.password}!--解决mysql驱动升级到8.0后不生成指定数据库代码的问题--property namenullCatalogMeansCurrent valuetrue //jdbcConnection!--指定生成model的路径--javaModelGenerator targetPackagecom.macro.mall.tiny.mbg.model targetProjectmall-tiny-01\src\main\java/!--指定生成mapper.xml的路径--sqlMapGenerator targetPackagecom.macro.mall.tiny.mbg.mapper targetProjectmall-tiny-01\src\main\resources/!--指定生成mapper接口的的路径--javaClientGenerator typeXMLMAPPER targetPackagecom.macro.mall.tiny.mbg.mappertargetProjectmall-tiny-01\src\main\java/!--生成全部表tableName设为%--table tableNamepms_brandgeneratedKey columnid sqlStatementMySql identitytrue//table/context /generatorConfiguration 复制代码运行Generator的main函数生成代码 package com.macro.mall.tiny.mbg;import org.mybatis.generator.api.MyBatisGenerator; import org.mybatis.generator.config.Configuration; import org.mybatis.generator.config.xml.ConfigurationParser; import org.mybatis.generator.internal.DefaultShellCallback;import java.io.InputStream; import java.util.ArrayList; import java.util.List;/*** 用于生产MBG的代码* Created by macro on 2018/4/26.*/ public class Generator {public static void main(String[] args) throws Exception {//MBG 执行过程中的警告信息ListString warnings new ArrayListString();//当生成的代码重复时覆盖原代码boolean overwrite true;//读取我们的 MBG 配置文件InputStream is Generator.class.getResourceAsStream(/generatorConfig.xml);ConfigurationParser cp new ConfigurationParser(warnings);Configuration config cp.parseConfiguration(is);is.close();DefaultShellCallback callback new DefaultShellCallback(overwrite);//创建 MBGMyBatisGenerator myBatisGenerator new MyBatisGenerator(config, callback, warnings);//执行生成代码myBatisGenerator.generate(null);//输出警告信息for (String warning : warnings) {System.out.println(warning);}} } 复制代码添加MyBatis的Java配置 用于配置需要动态生成的mapper接口的路径 package com.macro.mall.tiny.config;import org.mybatis.spring.annotation.MapperScan; import org.springframework.context.annotation.Configuration;/*** MyBatis配置类* Created by macro on 2019/4/8.*/ Configuration MapperScan(com.macro.mall.tiny.mbg.mapper) public class MyBatisConfig { }复制代码实现Controller中的接口 实现PmsBrand表中的添加、修改、删除及分页查询接口。 package com.macro.mall.tiny.controller;import com.macro.mall.tiny.common.api.CommonPage; import com.macro.mall.tiny.common.api.CommonResult; import com.macro.mall.tiny.mbg.model.PmsBrand; import com.macro.mall.tiny.service.PmsBrandService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*;import java.util.List;/*** 品牌管理Controller* Created by macro on 2019/4/19.*/ Controller RequestMapping(/brand) public class PmsBrandController {Autowiredprivate PmsBrandService demoService;private static final Logger LOGGER LoggerFactory.getLogger(PmsBrandController.class);RequestMapping(value listAll, method RequestMethod.GET)ResponseBodypublic CommonResultListPmsBrand getBrandList() {return CommonResult.success(demoService.listAllBrand());}RequestMapping(value /create, method RequestMethod.POST)ResponseBodypublic CommonResult createBrand(RequestBody PmsBrand pmsBrand) {CommonResult commonResult;int count demoService.createBrand(pmsBrand);if (count 1) {commonResult CommonResult.success(pmsBrand);LOGGER.debug(createBrand success:{}, pmsBrand);} else {commonResult CommonResult.failed(操作失败);LOGGER.debug(createBrand failed:{}, pmsBrand);}return commonResult;}RequestMapping(value /update/{id}, method RequestMethod.POST)ResponseBodypublic CommonResult updateBrand(PathVariable(id) Long id, RequestBody PmsBrand pmsBrandDto, BindingResult result) {CommonResult commonResult;int count demoService.updateBrand(id, pmsBrandDto);if (count 1) {commonResult CommonResult.success(pmsBrandDto);LOGGER.debug(updateBrand success:{}, pmsBrandDto);} else {commonResult CommonResult.failed(操作失败);LOGGER.debug(updateBrand failed:{}, pmsBrandDto);}return commonResult;}RequestMapping(value /delete/{id}, method RequestMethod.GET)ResponseBodypublic CommonResult deleteBrand(PathVariable(id) Long id) {int count demoService.deleteBrand(id);if (count 1) {LOGGER.debug(deleteBrand success :id{}, id);return CommonResult.success(null);} else {LOGGER.debug(deleteBrand failed :id{}, id);return CommonResult.failed(操作失败);}}RequestMapping(value /list, method RequestMethod.GET)ResponseBodypublic CommonResultCommonPagePmsBrand listBrand(RequestParam(value pageNum, defaultValue 1) Integer pageNum,RequestParam(value pageSize, defaultValue 3) Integer pageSize) {ListPmsBrand brandList demoService.listBrand(pageNum, pageSize);return CommonResult.success(CommonPage.restPage(brandList));}RequestMapping(value /{id}, method RequestMethod.GET)ResponseBodypublic CommonResultPmsBrand brand(PathVariable(id) Long id) {return CommonResult.success(demoService.getBrand(id));} }复制代码添加Service接口 package com.macro.mall.tiny.service;import com.macro.mall.tiny.mbg.model.PmsBrand;import java.util.List;/*** PmsBrandService* Created by macro on 2019/4/19.*/ public interface PmsBrandService {ListPmsBrand listAllBrand();int createBrand(PmsBrand brand);int updateBrand(Long id, PmsBrand brand);int deleteBrand(Long id);ListPmsBrand listBrand(int pageNum, int pageSize);PmsBrand getBrand(Long id); }复制代码实现Service接口 package com.macro.mall.tiny.service.impl;import com.github.pagehelper.PageHelper; import com.macro.mall.tiny.mbg.mapper.PmsBrandMapper; import com.macro.mall.tiny.mbg.model.PmsBrand; import com.macro.mall.tiny.mbg.model.PmsBrandExample; import com.macro.mall.tiny.service.PmsBrandService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;import java.util.List;/*** PmsBrandService实现类* Created by macro on 2019/4/19.*/ Service public class PmsBrandServiceImpl implements PmsBrandService {Autowiredprivate PmsBrandMapper brandMapper;Overridepublic ListPmsBrand listAllBrand() {return brandMapper.selectByExample(new PmsBrandExample());}Overridepublic int createBrand(PmsBrand brand) {return brandMapper.insertSelective(brand);}Overridepublic int updateBrand(Long id, PmsBrand brand) {brand.setId(id);return brandMapper.updateByPrimaryKeySelective(brand);}Overridepublic int deleteBrand(Long id) {return brandMapper.deleteByPrimaryKey(id);}Overridepublic ListPmsBrand listBrand(int pageNum, int pageSize) {PageHelper.startPage(pageNum, pageSize);brandMapper.selectByExample(new PmsBrandExample());return brandMapper.selectByExample(new PmsBrandExample());}Overridepublic PmsBrand getBrand(Long id) {return brandMapper.selectByPrimaryKey(id);} }复制代码项目源码地址 github.com/macrozheng/… 公众号 mall项目全套学习教程连载中关注公众号第一时间获取。 转载于:https://juejin.im/post/5cf7c4a7e51d4577790c1c50
http://www.zqtcl.cn/news/725221/

相关文章:

  • 永康住房和城乡建设部网站做网站 万户
  • 可信赖的常州网站建设做直播券的网站有多少
  • 网络营销案例分析pptseo策略是什么意思
  • 论坛网站建设视频青岛网站设计软件
  • 租用网站服务器价格清远医院网站建设方案
  • 房地产网站建设方案书福田所有车型
  • 网站功能描述高清视频网络服务器免费
  • 天台做网站微博推广效果怎么样
  • 苏州专门网站网站站长统计怎么做
  • 社交网站开发注意事项call_user_func_array() wordpress
  • 泉州企业免费建站个人网站设计与开发
  • 网站建设流程书籍互联网行业黑话
  • 山亭 网站建设wordpress 添加头像
  • 龙南县建设局网站新手如何做网络推广
  • 网站开发建设赚钱吗巩义旅游网站建设公司
  • 网站建设代码介绍网站顶部导航代码
  • 帮别人做网站需要什么能力sem专员
  • 无锡网站建设 app推广软件
  • 免费入驻的外贸网站网站建设怎么打开
  • 怎么做中英文网站网站建设费做什么
  • 信阳网站建设汉狮怎么样做曖視頻网站
  • 做电影电视剧网站推广移动应用开发是什么意思
  • 网站排名优化策划中山搜索引擎优化
  • 网站建设培训证书平台型网站建设预算表
  • 网站建设后压缩代码网站如何做进一步优化
  • 大型旅游网站源码 织梦襄阳网站建设楚翼网络
  • 快速搭建网站服务器做历史卷子的网站
  • 淘口令微信网站怎么做通化seo招聘
  • 帮人做传销网站违法吗深圳也放开了
  • 发布程序后网站有很多促销策略