mengff
11 months ago
commit
0058180cc3
22 changed files with 686 additions and 0 deletions
@ -0,0 +1,8 @@ |
|||
# Default ignored files |
|||
/shelf/ |
|||
/workspace.xml |
|||
# Editor-based HTTP Client requests |
|||
/httpRequests/ |
|||
# Datasource local storage ignored files |
|||
/dataSources/ |
|||
/dataSources.local.xml |
@ -0,0 +1,13 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<project version="4"> |
|||
<component name="ActiveTabHighlighterConfiguration"> |
|||
<option name="background"> |
|||
<PersistentColor> |
|||
<option name="enabled" value="true" /> |
|||
<option name="red" value="173" /> |
|||
<option name="green" value="46" /> |
|||
<option name="blue" value="156" /> |
|||
</PersistentColor> |
|||
</option> |
|||
</component> |
|||
</project> |
@ -0,0 +1,18 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<project version="4"> |
|||
<component name="CompilerConfiguration"> |
|||
<annotationProcessing> |
|||
<profile name="Maven default annotation processors profile" enabled="true"> |
|||
<sourceOutputDir name="target/generated-sources/annotations" /> |
|||
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" /> |
|||
<outputRelativeToContentRoot value="true" /> |
|||
<module name="device-status" /> |
|||
</profile> |
|||
</annotationProcessing> |
|||
</component> |
|||
<component name="JavacSettings"> |
|||
<option name="ADDITIONAL_OPTIONS_OVERRIDE"> |
|||
<module name="device-status" options="-parameters" /> |
|||
</option> |
|||
</component> |
|||
</project> |
@ -0,0 +1,6 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<project version="4"> |
|||
<component name="Encoding"> |
|||
<file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" /> |
|||
</component> |
|||
</project> |
@ -0,0 +1,20 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<project version="4"> |
|||
<component name="RemoteRepositoriesConfiguration"> |
|||
<remote-repository> |
|||
<option name="id" value="central" /> |
|||
<option name="name" value="Central Repository" /> |
|||
<option name="url" value="https://repo.maven.apache.org/maven2" /> |
|||
</remote-repository> |
|||
<remote-repository> |
|||
<option name="id" value="central" /> |
|||
<option name="name" value="Maven Central repository" /> |
|||
<option name="url" value="https://repo1.maven.org/maven2" /> |
|||
</remote-repository> |
|||
<remote-repository> |
|||
<option name="id" value="jboss.community" /> |
|||
<option name="name" value="JBoss Community repository" /> |
|||
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" /> |
|||
</remote-repository> |
|||
</component> |
|||
</project> |
@ -0,0 +1,12 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<project version="4"> |
|||
<component name="ExternalStorageConfigurationManager" enabled="true" /> |
|||
<component name="MavenProjectsManager"> |
|||
<option name="originalFiles"> |
|||
<list> |
|||
<option value="$PROJECT_DIR$/pom.xml" /> |
|||
</list> |
|||
</option> |
|||
</component> |
|||
<component name="ProjectRootManager" version="2" languageLevel="JDK_18" default="true" project-jdk-name="18" project-jdk-type="JavaSDK" /> |
|||
</project> |
@ -0,0 +1,6 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<project version="4"> |
|||
<component name="VcsDirectoryMappings"> |
|||
<mapping directory="$PROJECT_DIR$" vcs="Git" /> |
|||
</component> |
|||
</project> |
@ -0,0 +1,3 @@ |
|||
# device-status |
|||
|
|||
## **用于济菏高速设备定时获取其状态信息** |
@ -0,0 +1,103 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4"> |
|||
<component name="FacetManager"> |
|||
<facet type="Spring" name="Spring"> |
|||
<configuration /> |
|||
</facet> |
|||
<facet type="web" name="Web"> |
|||
<configuration> |
|||
<webroots /> |
|||
<sourceRoots> |
|||
<root url="file://$MODULE_DIR$/src/main/java" /> |
|||
<root url="file://$MODULE_DIR$/src/main/resources" /> |
|||
</sourceRoots> |
|||
</configuration> |
|||
</facet> |
|||
</component> |
|||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8"> |
|||
<output url="file://$MODULE_DIR$/target/classes" /> |
|||
<output-test url="file://$MODULE_DIR$/target/test-classes" /> |
|||
<content url="file://$MODULE_DIR$"> |
|||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" /> |
|||
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" /> |
|||
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" /> |
|||
<excludeFolder url="file://$MODULE_DIR$/target" /> |
|||
</content> |
|||
<orderEntry type="inheritedJdk" /> |
|||
<orderEntry type="sourceFolder" forTests="false" /> |
|||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.2.5.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.2.5.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.2.5.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.2.5.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.2.5.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.3" level="project" /> |
|||
<orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.3" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.12.1" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.12.1" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.30" level="project" /> |
|||
<orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" /> |
|||
<orderEntry type="library" scope="RUNTIME" name="Maven: org.yaml:snakeyaml:1.25" level="project" /> |
|||
<orderEntry type="library" name="Maven: com.zaxxer:HikariCP:3.4.2" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.30" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework:spring-jdbc:5.2.4.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.2.4.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework:spring-tx:5.2.4.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.2.5.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.2.5.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.10.2" level="project" /> |
|||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.10.2" level="project" /> |
|||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.10.2" level="project" /> |
|||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.10.2" level="project" /> |
|||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.10.2" level="project" /> |
|||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.10.2" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.2.5.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.31" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-el:9.0.31" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.31" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-validation:2.2.5.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: jakarta.validation:jakarta.validation-api:2.0.2" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.hibernate.validator:hibernate-validator:6.0.18.Final" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.4.1.Final" level="project" /> |
|||
<orderEntry type="library" name="Maven: com.fasterxml:classmate:1.5.1" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework:spring-web:5.2.4.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.2.4.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework:spring-aop:5.2.4.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework:spring-context:5.2.4.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework:spring-expression:5.2.4.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.mybatis.spring.boot:mybatis-spring-boot-starter:2.1.1" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.mybatis.spring.boot:mybatis-spring-boot-autoconfigure:2.1.1" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.mybatis:mybatis:3.5.3" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.mybatis:mybatis-spring:2.0.3" level="project" /> |
|||
<orderEntry type="library" scope="RUNTIME" name="Maven: mysql:mysql-connector-java:8.0.19" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-starter-test:2.2.5.RELEASE" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test:2.2.5.RELEASE" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.2.5.RELEASE" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: com.jayway.jsonpath:json-path:2.4.0" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: net.minidev:json-smart:2.3" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: net.minidev:accessors-smart:1.2" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.ow2.asm:asm:5.0.4" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: jakarta.xml.bind:jakarta.xml.bind-api:2.3.2" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: jakarta.activation:jakarta.activation-api:1.2.2" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter:5.5.2" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-api:5.5.2" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.apiguardian:apiguardian-api:1.1.0" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.opentest4j:opentest4j:1.2.0" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.junit.platform:junit-platform-commons:1.5.2" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-params:5.5.2" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-engine:5.5.2" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.junit.platform:junit-platform-engine:1.5.2" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.mockito:mockito-junit-jupiter:3.1.0" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.assertj:assertj-core:3.13.2" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest:2.1" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.mockito:mockito-core:3.1.0" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: net.bytebuddy:byte-buddy:1.10.8" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: net.bytebuddy:byte-buddy-agent:1.10.8" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.objenesis:objenesis:2.6" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.skyscreamer:jsonassert:1.5.0" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: com.vaadin.external.google:android-json:0.0.20131108.vaadin1" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.2.4.RELEASE" level="project" /> |
|||
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.2.4.RELEASE" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:5.2.4.RELEASE" level="project" /> |
|||
<orderEntry type="library" scope="TEST" name="Maven: org.xmlunit:xmlunit-core:2.6.3" level="project" /> |
|||
</component> |
|||
</module> |
@ -0,0 +1,61 @@ |
|||
/* |
|||
Navicat Premium Data Transfer |
|||
|
|||
Source Server : mysql8 |
|||
Source Server Type : MySQL |
|||
Source Server Version : 80027 |
|||
Source Host : 39.106.31.193:3307 |
|||
Source Schema : device |
|||
|
|||
Target Server Type : MySQL |
|||
Target Server Version : 80027 |
|||
File Encoding : 65001 |
|||
|
|||
Date: 05/01/2024 09:34:02 |
|||
*/ |
|||
|
|||
SET NAMES utf8mb4; |
|||
SET FOREIGN_KEY_CHECKS = 0; |
|||
|
|||
-- ---------------------------- |
|||
-- Table structure for device |
|||
-- ---------------------------- |
|||
DROP TABLE IF EXISTS `device`; |
|||
CREATE TABLE `device` ( |
|||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '设备ID', |
|||
`device_no` varchar(30) COLLATE utf8_bin DEFAULT NULL COMMENT '设备编号', |
|||
`device_name` varchar(255) COLLATE utf8_bin DEFAULT NULL COMMENT '设备名称', |
|||
`device_ip` varchar(255) COLLATE utf8_bin DEFAULT NULL COMMENT '设备IP', |
|||
PRIMARY KEY (`id`) |
|||
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin; |
|||
|
|||
-- ---------------------------- |
|||
-- Records of device |
|||
-- ---------------------------- |
|||
BEGIN; |
|||
INSERT INTO `device` VALUES (1, '1001', '千里眼', '192.168.1'); |
|||
INSERT INTO `device` VALUES (2, '1002', '智慧眼', '192.168.2'); |
|||
INSERT INTO `device` VALUES (3, '1003', '摄像机', '192.168.3'); |
|||
INSERT INTO `device` VALUES (4, '1004', '随身行', '10.168.77.88'); |
|||
COMMIT; |
|||
|
|||
-- ---------------------------- |
|||
-- Table structure for status |
|||
-- ---------------------------- |
|||
DROP TABLE IF EXISTS `status`; |
|||
CREATE TABLE `status` ( |
|||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '设备状态ID', |
|||
`device_no` varchar(30) COLLATE utf8_bin DEFAULT NULL COMMENT '设备编号', |
|||
`device_name` varchar(255) COLLATE utf8_bin DEFAULT NULL COMMENT '设备名称', |
|||
`device_status` int DEFAULT NULL COMMENT '设备状态', |
|||
`time` datetime DEFAULT NULL COMMENT '插入时间', |
|||
PRIMARY KEY (`id`) |
|||
) ENGINE=InnoDB AUTO_INCREMENT=48 DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin; |
|||
|
|||
-- ---------------------------- |
|||
-- Records of status |
|||
-- ---------------------------- |
|||
BEGIN; |
|||
COMMIT; |
|||
|
|||
SET FOREIGN_KEY_CHECKS = 1; |
@ -0,0 +1,63 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
|||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> |
|||
<modelVersion>4.0.0</modelVersion> |
|||
<parent> |
|||
<groupId>org.springframework.boot</groupId> |
|||
<artifactId>spring-boot-starter-parent</artifactId> |
|||
<version>2.2.5.RELEASE</version> |
|||
<relativePath/> <!-- lookup parent from repository --> |
|||
</parent> |
|||
<groupId>com.example</groupId> |
|||
<artifactId>device-status</artifactId> |
|||
<version>0.0.1-SNAPSHOT</version> |
|||
<name>demo</name> |
|||
<description>Demo project for Spring Boot</description> |
|||
|
|||
<properties> |
|||
<java.version>1.8</java.version> |
|||
</properties> |
|||
|
|||
<dependencies> |
|||
<dependency> |
|||
<groupId>org.springframework.boot</groupId> |
|||
<artifactId>spring-boot-starter-jdbc</artifactId> |
|||
</dependency> |
|||
<dependency> |
|||
<groupId>org.springframework.boot</groupId> |
|||
<artifactId>spring-boot-starter-web</artifactId> |
|||
</dependency> |
|||
<dependency> |
|||
<groupId>org.mybatis.spring.boot</groupId> |
|||
<artifactId>mybatis-spring-boot-starter</artifactId> |
|||
<version>2.1.1</version> |
|||
</dependency> |
|||
|
|||
<dependency> |
|||
<groupId>mysql</groupId> |
|||
<artifactId>mysql-connector-java</artifactId> |
|||
<scope>runtime</scope> |
|||
</dependency> |
|||
<dependency> |
|||
<groupId>org.springframework.boot</groupId> |
|||
<artifactId>spring-boot-starter-test</artifactId> |
|||
<scope>test</scope> |
|||
<exclusions> |
|||
<exclusion> |
|||
<groupId>org.junit.vintage</groupId> |
|||
<artifactId>junit-vintage-engine</artifactId> |
|||
</exclusion> |
|||
</exclusions> |
|||
</dependency> |
|||
</dependencies> |
|||
|
|||
<build> |
|||
<plugins> |
|||
<plugin> |
|||
<groupId>org.springframework.boot</groupId> |
|||
<artifactId>spring-boot-maven-plugin</artifactId> |
|||
</plugin> |
|||
</plugins> |
|||
</build> |
|||
|
|||
</project> |
@ -0,0 +1,22 @@ |
|||
package com.example.device; |
|||
|
|||
import org.mybatis.spring.annotation.MapperScan; |
|||
import org.springframework.boot.SpringApplication; |
|||
import org.springframework.boot.autoconfigure.SpringBootApplication; |
|||
import org.springframework.scheduling.annotation.EnableScheduling; |
|||
|
|||
/** |
|||
* @author mengff |
|||
* @Date 2024/01/04 |
|||
*/ |
|||
|
|||
@EnableScheduling |
|||
@MapperScan("com.example.device.mapper") //扫描的mapper
|
|||
@SpringBootApplication |
|||
public class DeviceApplication { |
|||
|
|||
public static void main(String[] args) { |
|||
SpringApplication.run(DeviceApplication.class, args); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,55 @@ |
|||
package com.example.device.controller; |
|||
import com.example.device.entity.Device; |
|||
import com.example.device.entity.Status; |
|||
import com.example.device.service.DeviceService; |
|||
import com.example.device.service.StatusService; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.scheduling.annotation.EnableScheduling; |
|||
import org.springframework.scheduling.annotation.Scheduled; |
|||
import org.springframework.stereotype.Component; |
|||
import java.io.IOException; |
|||
import java.net.InetAddress; |
|||
import java.time.LocalDateTime; |
|||
import java.util.List; |
|||
|
|||
@Component |
|||
@EnableScheduling |
|||
public class DeviceStatus { |
|||
@Autowired |
|||
private DeviceService deviceService; |
|||
|
|||
@Autowired |
|||
private StatusService statusService; |
|||
|
|||
|
|||
//每天凌晨开始执行,每4小时执行一次
|
|||
@Scheduled(cron = "0 0 4/0 * * ?") |
|||
public void generateDeviceStatus(){ |
|||
deviceStatus(); |
|||
} |
|||
public void deviceStatus() { |
|||
Status status=new Status(); |
|||
List<Device> deviceList = deviceService.SelectList(); |
|||
for (Device device : deviceList) { |
|||
try { |
|||
InetAddress address = InetAddress.getByName(device.getDeviceIp()); |
|||
boolean reachable = address.isReachable(5000); // Timeout: 5 seconds
|
|||
status.setDeviceNo(device.getDeviceNo()); |
|||
status.setDeviceName(device.getDeviceName()); |
|||
LocalDateTime localDateTime = LocalDateTime.now(); |
|||
status.setTime(localDateTime); |
|||
//1-在线 0-离线
|
|||
if (reachable) { |
|||
status.setDeviceStatus(1); |
|||
} else { |
|||
status.setDeviceStatus(0); |
|||
} |
|||
statusService.Add(status); |
|||
} catch (IOException e) { |
|||
System.out.println("Error pinging " + device.getDeviceIp() + ": " + e.getMessage()); |
|||
} |
|||
} |
|||
} |
|||
|
|||
} |
|||
|
@ -0,0 +1,55 @@ |
|||
package com.example.device.entity; |
|||
|
|||
/** |
|||
* @author mengff |
|||
* @Date 2020/03/03 |
|||
*/ |
|||
public class Device { |
|||
private long id; |
|||
|
|||
public String getDeviceNo() { |
|||
return deviceNo; |
|||
} |
|||
|
|||
public void setDeviceNo(String deviceNo) { |
|||
this.deviceNo = deviceNo; |
|||
} |
|||
|
|||
public String getDeviceName() { |
|||
return deviceName; |
|||
} |
|||
|
|||
public void setDeviceName(String deviceName) { |
|||
this.deviceName = deviceName; |
|||
} |
|||
|
|||
public String getDeviceIp() { |
|||
return deviceIp; |
|||
} |
|||
|
|||
@Override |
|||
public String toString() { |
|||
return "Device{" + |
|||
"id=" + id + |
|||
", deviceNo='" + deviceNo + '\'' + |
|||
", deviceName='" + deviceName + '\'' + |
|||
", deviceIp='" + deviceIp + '\'' + |
|||
'}'; |
|||
} |
|||
|
|||
public Device(long id, String deviceNo, String deviceName, String deviceIp) { |
|||
this.id = id; |
|||
this.deviceNo = deviceNo; |
|||
this.deviceName = deviceName; |
|||
this.deviceIp = deviceIp; |
|||
} |
|||
|
|||
public void setDeviceIp(String deviceIp) { |
|||
this.deviceIp = deviceIp; |
|||
} |
|||
|
|||
private String deviceNo; |
|||
private String deviceName; |
|||
private String deviceIp; |
|||
|
|||
} |
@ -0,0 +1,74 @@ |
|||
package com.example.device.entity; |
|||
|
|||
import java.time.LocalDateTime; |
|||
|
|||
/** |
|||
* @author mengff |
|||
* @Date 2024/01/04 |
|||
*/ |
|||
public class Status { |
|||
public LocalDateTime getTime() { |
|||
return time; |
|||
} |
|||
|
|||
public void setTime(LocalDateTime time) { |
|||
this.time = time; |
|||
} |
|||
|
|||
public String getDeviceNo() { |
|||
return deviceNo; |
|||
} |
|||
|
|||
public Status(long id, String deviceNo, String deviceName, int deviceStatus) { |
|||
this.id = id; |
|||
this.deviceNo = deviceNo; |
|||
this.deviceName = deviceName; |
|||
this.deviceStatus = deviceStatus; |
|||
} |
|||
|
|||
public Status() { |
|||
} |
|||
|
|||
public void setDeviceNo(String deviceNo) { |
|||
this.deviceNo = deviceNo; |
|||
} |
|||
|
|||
public String getDeviceName() { |
|||
return deviceName; |
|||
} |
|||
|
|||
public void setDeviceName(String deviceName) { |
|||
this.deviceName = deviceName; |
|||
} |
|||
|
|||
public int getDeviceStatus() { |
|||
return deviceStatus; |
|||
} |
|||
|
|||
public void setDeviceStatus(int deviceStatus) { |
|||
this.deviceStatus = deviceStatus; |
|||
} |
|||
|
|||
private long id; |
|||
|
|||
private String deviceNo; |
|||
|
|||
@Override |
|||
public String toString() { |
|||
return "Status{" + |
|||
"id=" + id + |
|||
", deviceNo='" + deviceNo + '\'' + |
|||
", deviceName='" + deviceName + '\'' + |
|||
", deviceStatus=" + deviceStatus + |
|||
", time=" + time + |
|||
'}'; |
|||
} |
|||
|
|||
|
|||
|
|||
private String deviceName; |
|||
private int deviceStatus; |
|||
|
|||
private LocalDateTime time; |
|||
|
|||
} |
@ -0,0 +1,17 @@ |
|||
package com.example.device.mapper; |
|||
|
|||
import com.example.device.entity.Device; |
|||
import org.apache.ibatis.annotations.Param; |
|||
import org.springframework.stereotype.Repository; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @author mengff |
|||
* @Date 2024/01/04 |
|||
*/ |
|||
@Repository |
|||
public interface DeviceMapper { |
|||
|
|||
List<Device> SelectList(); |
|||
} |
@ -0,0 +1,18 @@ |
|||
package com.example.device.mapper; |
|||
|
|||
import com.example.device.entity.Status; |
|||
import org.apache.ibatis.annotations.Param; |
|||
import org.springframework.stereotype.Repository; |
|||
|
|||
/** |
|||
* @author mengff |
|||
* @Date 2024/01/04 |
|||
*/ |
|||
@Repository |
|||
public interface StatusMapper { |
|||
|
|||
|
|||
|
|||
int Add(@Param("status")Status status); |
|||
|
|||
} |
@ -0,0 +1,23 @@ |
|||
package com.example.device.service; |
|||
|
|||
import com.example.device.entity.Device; |
|||
import com.example.device.mapper.DeviceMapper; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @author mengff |
|||
* @Date 2024/01/04 |
|||
*/ |
|||
@Service |
|||
public class DeviceService { |
|||
@Autowired |
|||
DeviceMapper deviceMapper; |
|||
|
|||
public List<Device> SelectList() { |
|||
return deviceMapper.SelectList(); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,28 @@ |
|||
package com.example.device.service; |
|||
|
|||
import com.example.device.entity.Status; |
|||
import com.example.device.mapper.StatusMapper; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
/** |
|||
* @author mengff |
|||
* @Date 2024/01/04 |
|||
*/ |
|||
@Service |
|||
public class StatusService { |
|||
@Autowired |
|||
StatusMapper statusMapper; |
|||
|
|||
|
|||
public String Add(Status status) { |
|||
int a = statusMapper.Add(status); |
|||
if (a == 1) { |
|||
return "添加成功"; |
|||
} else { |
|||
return "添加失败"; |
|||
} |
|||
} |
|||
|
|||
|
|||
} |
@ -0,0 +1,19 @@ |
|||
server: |
|||
port: 8089 |
|||
|
|||
spring: |
|||
datasource: |
|||
username: root |
|||
password: root |
|||
url: jdbc:mysql://39.106.31.193:3307/device?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=GMT%2B8 |
|||
driver-class-name: com.mysql.cj.jdbc.Driver |
|||
|
|||
mybatis: |
|||
mapper-locations: classpath:mapping/*Mapper.xml |
|||
type-aliases-package: com.example.entity.demo |
|||
|
|||
logging: |
|||
level: |
|||
com: |
|||
example: |
|||
mapper : debug |
@ -0,0 +1,16 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.example.device.mapper.DeviceMapper"> |
|||
|
|||
<resultMap id="BaseResultMap" type="com.example.device.entity.Device"> |
|||
<result column="id" jdbcType="BIGINT" property="id"/> |
|||
<result column="device_no" jdbcType="VARCHAR" property="deviceNo"/> |
|||
<result column="device_name" jdbcType="VARCHAR" property="deviceName"/> |
|||
<result column="device_ip" jdbcType="VARCHAR" property="deviceIp"/> |
|||
</resultMap> |
|||
|
|||
<select id="SelectList" resultType="com.example.device.entity.Device"> |
|||
select * from device |
|||
</select> |
|||
|
|||
</mapper> |
@ -0,0 +1,46 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.example.device.mapper.StatusMapper"> |
|||
|
|||
<resultMap id="BaseResultMap" type="com.example.device.entity.Status"> |
|||
<result column="id" jdbcType="BIGINT" property="id"/> |
|||
<result column="device_no" jdbcType="VARCHAR" property="deviceNo"/> |
|||
<result column="device_name" jdbcType="VARCHAR" property="deviceName"/> |
|||
<result column="device_status" jdbcType="INTEGER" property="deviceStatus"/> |
|||
</resultMap> |
|||
|
|||
|
|||
|
|||
<insert id="Add" parameterType="com.example.device.entity.Status"> |
|||
INSERT INTO status |
|||
<trim prefix="(" suffix=")" suffixOverrides=","> |
|||
<if test="status.deviceNo != null"> |
|||
device_no, |
|||
</if> |
|||
<if test="status.deviceName != null"> |
|||
device_name, |
|||
</if> |
|||
<if test="status.deviceStatus != null"> |
|||
device_status, |
|||
</if> |
|||
<if test="status.time != null"> |
|||
time, |
|||
</if> |
|||
</trim> |
|||
<trim prefix="VALUES (" suffix=")" suffixOverrides=","> |
|||
<if test="status.deviceNo != null"> |
|||
#{status.deviceNo,jdbcType=VARCHAR}, |
|||
</if> |
|||
<if test="status.deviceName != null"> |
|||
#{status.deviceName,jdbcType=VARCHAR}, |
|||
</if> |
|||
<if test="status.deviceStatus != null"> |
|||
#{status.deviceStatus,jdbcType=INTEGER}, |
|||
</if> |
|||
<if test="status.time != null"> |
|||
#{status.time,jdbcType=DATE}, |
|||
</if> |
|||
</trim> |
|||
</insert> |
|||
|
|||
</mapper> |
Loading…
Reference in new issue