From 181cfd02223bb93f33c8bc80965f0be484424bbd Mon Sep 17 00:00:00 2001 From: "@t2652009480" <2652009480@qq.com> Date: Wed, 9 Aug 2023 17:34:33 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BA=94=E7=94=A8=E4=B8=AD=E5=BF=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 8 +- .../controller/ApplicationController.java | 37 ++++++ .../application/entity/Application.java | 32 +++++ .../application/entity/Directory.java | 17 +++ .../application/mapper/ApplicationMapper.java | 9 ++ .../application/mapper/DirectoryMapper.java | 9 ++ .../service/ApplicationService.java | 13 ++ .../service/impl/ApplicationServiceImpl.java | 61 ++++++++++ .../application/util/ConvertUtil.java | 115 ++++++++++++++++++ .../application/vo/ApplicationVo.java | 21 ++++ src/main/resources/application.yml | 7 +- .../resources/mapper/ApplicationMapper.xml | 5 + 12 files changed, 328 insertions(+), 6 deletions(-) create mode 100644 src/main/java/com/zhiyun/zhiyun03/application/controller/ApplicationController.java create mode 100644 src/main/java/com/zhiyun/zhiyun03/application/entity/Application.java create mode 100644 src/main/java/com/zhiyun/zhiyun03/application/entity/Directory.java create mode 100644 src/main/java/com/zhiyun/zhiyun03/application/mapper/ApplicationMapper.java create mode 100644 src/main/java/com/zhiyun/zhiyun03/application/mapper/DirectoryMapper.java create mode 100644 src/main/java/com/zhiyun/zhiyun03/application/service/ApplicationService.java create mode 100644 src/main/java/com/zhiyun/zhiyun03/application/service/impl/ApplicationServiceImpl.java create mode 100644 src/main/java/com/zhiyun/zhiyun03/application/util/ConvertUtil.java create mode 100644 src/main/java/com/zhiyun/zhiyun03/application/vo/ApplicationVo.java create mode 100644 src/main/resources/mapper/ApplicationMapper.xml diff --git a/pom.xml b/pom.xml index d04fd0f..adbb0e8 100644 --- a/pom.xml +++ b/pom.xml @@ -44,10 +44,16 @@ 2.1.4 + + com.baomidou + mybatis-plus-boot-starter + 3.5.2 + + mysql mysql-connector-java - 8.0.24 + 5.0.7 diff --git a/src/main/java/com/zhiyun/zhiyun03/application/controller/ApplicationController.java b/src/main/java/com/zhiyun/zhiyun03/application/controller/ApplicationController.java new file mode 100644 index 0000000..a319737 --- /dev/null +++ b/src/main/java/com/zhiyun/zhiyun03/application/controller/ApplicationController.java @@ -0,0 +1,37 @@ +package com.zhiyun.zhiyun03.application.controller; + +import com.zhiyun.zhiyun03.application.entity.Application; +import com.zhiyun.zhiyun03.application.service.ApplicationService; +import com.zhiyun.zhiyun03.application.vo.ApplicationVo; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.context.annotation.ApplicationScope; + +import javax.annotation.Resource; +import java.util.List; + +@RestController +@RequestMapping("application") +public class ApplicationController { + @Resource + ApplicationService applicationService; + + @RequestMapping("query") + public List queryApplication(){ + List list = applicationService.queryApplication(); + return list; + } + + @RequestMapping("queryDir") + public String queryDir(){ +// int result = applicationService.addApplication(); + return ""; + } + + @RequestMapping("add") + public String addApplication(@RequestBody ApplicationVo applicationVo){ + int result = applicationService.addApplication(applicationVo); + return ""; + } +} diff --git a/src/main/java/com/zhiyun/zhiyun03/application/entity/Application.java b/src/main/java/com/zhiyun/zhiyun03/application/entity/Application.java new file mode 100644 index 0000000..4802f89 --- /dev/null +++ b/src/main/java/com/zhiyun/zhiyun03/application/entity/Application.java @@ -0,0 +1,32 @@ +package com.zhiyun.zhiyun03.application.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +@Data +@TableName(value = "application") +public class Application { + private static final long serialVersionUID = 1L; + + @TableId(type = IdType.AUTO) + private int id; + + @TableField(value = "app_name") + private String appName; + + @TableField(value = "app_biref") + private String appBiref; + + @TableField(value = "app_url") + private String appUrl; + + @TableField(value = "dir_id") + private int dirId; + + @TableField(value = "app_icon") + private String appIcon; + +} diff --git a/src/main/java/com/zhiyun/zhiyun03/application/entity/Directory.java b/src/main/java/com/zhiyun/zhiyun03/application/entity/Directory.java new file mode 100644 index 0000000..a175daa --- /dev/null +++ b/src/main/java/com/zhiyun/zhiyun03/application/entity/Directory.java @@ -0,0 +1,17 @@ +package com.zhiyun.zhiyun03.application.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +@TableName(value = "directory") +@Data +public class Directory { + + @TableId + private int id; + + @TableField(value = "dir_name") + private String dirName; +} diff --git a/src/main/java/com/zhiyun/zhiyun03/application/mapper/ApplicationMapper.java b/src/main/java/com/zhiyun/zhiyun03/application/mapper/ApplicationMapper.java new file mode 100644 index 0000000..3408c5c --- /dev/null +++ b/src/main/java/com/zhiyun/zhiyun03/application/mapper/ApplicationMapper.java @@ -0,0 +1,9 @@ +package com.zhiyun.zhiyun03.application.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.zhiyun.zhiyun03.application.entity.Application; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface ApplicationMapper extends BaseMapper { +} diff --git a/src/main/java/com/zhiyun/zhiyun03/application/mapper/DirectoryMapper.java b/src/main/java/com/zhiyun/zhiyun03/application/mapper/DirectoryMapper.java new file mode 100644 index 0000000..2de95b0 --- /dev/null +++ b/src/main/java/com/zhiyun/zhiyun03/application/mapper/DirectoryMapper.java @@ -0,0 +1,9 @@ +package com.zhiyun.zhiyun03.application.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.zhiyun.zhiyun03.application.entity.Directory; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface DirectoryMapper extends BaseMapper { +} diff --git a/src/main/java/com/zhiyun/zhiyun03/application/service/ApplicationService.java b/src/main/java/com/zhiyun/zhiyun03/application/service/ApplicationService.java new file mode 100644 index 0000000..8f537d9 --- /dev/null +++ b/src/main/java/com/zhiyun/zhiyun03/application/service/ApplicationService.java @@ -0,0 +1,13 @@ +package com.zhiyun.zhiyun03.application.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.zhiyun.zhiyun03.application.entity.Application; +import com.zhiyun.zhiyun03.application.vo.ApplicationVo; + +import java.util.List; + +public interface ApplicationService extends IService { + List queryApplication(); + + int addApplication(ApplicationVo applicationVo); +} diff --git a/src/main/java/com/zhiyun/zhiyun03/application/service/impl/ApplicationServiceImpl.java b/src/main/java/com/zhiyun/zhiyun03/application/service/impl/ApplicationServiceImpl.java new file mode 100644 index 0000000..80ccf7b --- /dev/null +++ b/src/main/java/com/zhiyun/zhiyun03/application/service/impl/ApplicationServiceImpl.java @@ -0,0 +1,61 @@ +package com.zhiyun.zhiyun03.application.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.zhiyun.zhiyun03.application.entity.Application; +import com.zhiyun.zhiyun03.application.entity.Directory; +import com.zhiyun.zhiyun03.application.mapper.ApplicationMapper; +import com.zhiyun.zhiyun03.application.mapper.DirectoryMapper; +import com.zhiyun.zhiyun03.application.service.ApplicationService; +import com.zhiyun.zhiyun03.application.util.ConvertUtil; +import com.zhiyun.zhiyun03.application.vo.ApplicationVo; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; + +@Service +public class ApplicationServiceImpl extends ServiceImpl implements ApplicationService { + + @Resource + ApplicationMapper applicationMapper; + + @Resource + DirectoryMapper directoryMapper; + + + /** + * 应用中心查询 + */ + @Override + public List queryApplication() { + QueryWrapper qwa=new QueryWrapper<>(); + List applications = applicationMapper.selectList(qwa); + QueryWrapper qwd=new QueryWrapper<>(); + List directories = directoryMapper.selectList(qwd); + ConvertUtil convertUtil=new ConvertUtil(); + List applicationVos = convertUtil.entityToVoList(applications, ApplicationVo.class); + + for (int i = 0; i < applications.size(); i++) { + for (int j = 0; j + */ + public T entityToVo(Object source, Class target) { + if (source == null) { + return null; + } + T targetObject = null; + try { + targetObject = target.newInstance(); + BeanUtils.copyProperties(source, targetObject); + } catch (Exception e) { + e.printStackTrace(); + } + return targetObject; + } + + /** + * Vo转Entity + * @param source + * @param target + * @return + * @param + */ + public T VoToEntity(Object source, Class target) { + if (source == null) { + return null; + } + T targetObject = null; + try { + targetObject = target.newInstance(); + BeanUtils.copyProperties(source, targetObject); + } catch (Exception e) { + e.printStackTrace(); + } + return targetObject; + } + + /** + * 列表实体转VO + * @param sourceList + * @param target + * @return + * @param + */ + public List entityToVoList(Collection sourceList, Class target) { + if (sourceList == null) { + return null; + } + List targetList = new ArrayList<>(sourceList.size()); + + try { + for (Object source : sourceList) { + T targetObject = target.newInstance(); + BeanUtils.copyProperties(source, targetObject); + targetList.add(targetObject); + } + } catch (Exception e) { + logger.error("convert error ", e); + } + return targetList; + } + + /** + * VO转列表实体 + * @param sourceList + * @param target + * @return + * @param + */ + public List VoListToEntity(Collection sourceList, Class target) { + if (sourceList == null) { + return null; + } + List targetList = new ArrayList<>(sourceList.size()); + + try { + for (Object source : sourceList) { + T targetObject = target.newInstance(); + BeanUtils.copyProperties(source, targetObject); + targetList.add(targetObject); + } + } catch (Exception e) { + logger.error("convert error ", e); + } + return targetList; + } + + +} \ No newline at end of file diff --git a/src/main/java/com/zhiyun/zhiyun03/application/vo/ApplicationVo.java b/src/main/java/com/zhiyun/zhiyun03/application/vo/ApplicationVo.java new file mode 100644 index 0000000..fa2be24 --- /dev/null +++ b/src/main/java/com/zhiyun/zhiyun03/application/vo/ApplicationVo.java @@ -0,0 +1,21 @@ +package com.zhiyun.zhiyun03.application.vo; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +@Data +public class ApplicationVo { + @TableId + private int id; + + private String appName; + + private String appBiref; + + private String appUrl; + + private String dirName; + + private String appIcon; +} diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 27bac68..0653c9e 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -12,12 +12,9 @@ mybatis: spring: datasource: type: com.alibaba.druid.pool.DruidDataSource - driverClassName: com.mysql.cj.jdbc.Driver + driverClassName: com.mysql.jdbc.Driver druid: url: jdbc:mysql://localhost:3306/zhiyun?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai username: root - password: root + password: 123456 - -swagger: - enabled: true \ No newline at end of file diff --git a/src/main/resources/mapper/ApplicationMapper.xml b/src/main/resources/mapper/ApplicationMapper.xml new file mode 100644 index 0000000..36235d8 --- /dev/null +++ b/src/main/resources/mapper/ApplicationMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file