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

网站制作钱朝阳区建设工作办公室网站

网站制作钱,朝阳区建设工作办公室网站,没网站可以做seo吗,搜索引擎推广方式有哪些本文主要讲解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/382273/

相关文章:

  • 合肥网站快速优化排名全球人口多少亿
  • 中山网站关键字优化使用动易模版制作网站
  • 深圳营销网站建设报价广西住房建设厅网站
  • 爱站网appwordpress图片500
  • 北京网站排名制作图片点击就能跳转网站怎么做的
  • dw网站建设的数据库网站建设托管pfthost
  • 牛商网做网站成品网站1688入口
  • 涿鹿县建设局网站网络营销的定义和特点
  • 网站建设朋友圈怎么写深圳宝安区松岗
  • 苏州网站的建设哪个网站上做自媒体最好
  • 传送门网站是怎么做的wordpress seo标题
  • 曲靖 曲靖网站建设软件(app)开发视频一页网站怎么做
  • 互联网公司网站建设ppt模板下载wordpress 图片2m
  • 箱包官方网站模板平台开发软件
  • 佛山网站改版动漫视频制作软件
  • 易企互联网站建设创办公司需要多少资金
  • wordpress主题页脚添加联系信息百度seo优化排名软件
  • 深圳微信商城网站设计价格广东省自然资源厅事务中心
  • 云服务器做网站视屏工程建设最好的网站
  • 宁夏建设工程质量安全监督网站电商网站需求分析
  • wordpress函数教程十堰seo优化哪家公司好
  • 直播app开发哪家好东莞整站优化火速公司
  • 平江高端网站建设wordpress如何添加广告
  • 网站建设得多钱搜索引擎推广网站
  • 建立网站的流程多少钱网站建设不用备案的
  • 广州城市建设档案网站扬州工程建设招标网
  • 邦策网站建设dedecms医院网站wap模板(橙色)4512345
  • 阿里云空间可以做网站吗专业的传媒行业网站开发
  • 网站制作新报价橄榄树网站建设
  • 网站建设及服务合同小程序代码教程