1. java + react 实现 HRM
1. 云服务的三种方式
1.1 IAAS 基础设施即服务 ,只会提供基础的设施,eg:服务器,网络等 ;
1.2 PAAS 平台即服务 ,提供平台,可以把自己写好的代码部署到平台上 ;
1.3 SAAS 软甲即服务 eg:hrm,cms,crm等 ;提供所有的服务 ;【部署到互联网】;
2. 使用技术
后端:sprinboot 全家桶 ;jdk1.8 ; maven ; 数据库 mysql ;
j前端:react ;
3. 框架搭建
1. 新建maven 项目 【父目录】
<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <groupId>org.example</groupId>
<artifactId>java_hrm</artifactId>
<version>1.0-SNAPSHOT</version> <!-- <properties>-->
<!-- <maven.compiler.source>8</maven.compiler.source>-->
<!-- <maven.compiler.target>8</maven.compiler.target>-->
<!-- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>-->
<!-- </properties>--> <packaging>pom</packaging>
<name>ihrm_parent</name>
<description>IHRM-黑马程序员</description>
<modules>
<module>ihrm_common</module>
<module>ihrm_common</module>
<module>ihrm_common_model</module>
</modules> <!-- springboot 版本-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.5.RELEASE</version>
<relativePath/>
</parent> <!-- 项目属性 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<fastjson.version>1.2.47</fastjson.version>
</properties> <!-- 使用 springBoot 需要相关的坐标 -->
<!-- 使用 maven install 坐标 -->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>${fastjson.version}</version>
</dependency> <!-- lombok插件 快速生成 get set 方法 -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.16</version>
</dependency>
</dependencies> <repositories>
<repository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories> <pluginRepositories>
<pluginRepository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
<build>
<plugins>
<!--编译插件-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
</configuration>
</plugin> <!--单元测试插件-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12.4</version>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
</plugins>
</build> </project>
2. 新建公共类 ihrm_common
引入坐标
<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.example</groupId>
<artifactId>java_hrm</artifactId>
<version>1.0-SNAPSHOT</version>
</parent> <artifactId>ihrm_common</artifactId> <properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> <dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.example</groupId>
<artifactId>java_hrm</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies> </project>
3. 新建实体类 ihrm_common_model
引入坐标
<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.example</groupId>
<artifactId>java_hrm</artifactId>
<version>1.0-SNAPSHOT</version>
</parent> <artifactId>ihrm_common_model</artifactId> <properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> <dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<!-- 这是对父级的依赖 -->
<groupId>org.example</groupId>
<artifactId>java_hrm</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies> </project>
4. 简化引入实体类写入 get set 方法
使用插件 lombok
公司实体类案列:
package com.ihrm.domain.company; import lombok.Getter;
import lombok.Setter; // 引入了注解 import java.io.PrintStream; import static java.lang.System.*; // 每次都写 get set 太麻烦了 怎么办 ? 使用 lombok插件 目的:使用注解的形式替换 get set 构造方法
//如何使用:
// 1. 安装插件 【工程中引入插件的坐标即可-在父工程中】 2. 使用注解配置
//<dependency>
//<groupId>org.projectlombok</groupId>
//<artifactId>lombok</artifactId>
//<version>1.16.16</version>
//</dependency>
@Setter
@Getter
public class Company {
private String id;
private String name; // alt + ins 快捷键 快速写入get set 方法 不推荐了 使用插件开苏写入
// psvm 入口函数
public static void main(String[] args) {
PrintStream PrintStreamout = new PrintStream(out); // 新建打印流类
Company company = new Company();
company.setName("朱龙旭"); // 修改了name值
out.print("company.name");
out.print(company.name);
}
}
1. java + react 实现 HRM的更多相关文章
- SegmentedControlIOS使用
		代码: import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, SegmentedContr ... 
- Spark案例分析
		一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ... 
- React java.lang.UnsatisfiedLinkError: dlopen failed: "/data/data/com.edaixi.activity/lib-main/libgnustl_shared.so" is 32-bit instead of 64-bit
		E/AndroidRuntime: FATAL EXCEPTION: main Process: com.edaixi.activity, PID: 3659 at java.lang.Runtime ... 
- React+ajax+java  上传图片并预览
		之前有在网上找ajax上传图片的资料,大部分的人写得都是用jQuery,但是在这里用JQuery就大才小用了,所以我就自己写了,先上图. 由上图,首先点击上面的选择文件,在选择图片之后,将会自动上传图 ... 
- React Natived打包报错java.io.IOException: Could not delete path '...\android\support\v7'解决
		问题详情 React Native打包apk时在第二次编译时候报错: java.io.IOException: Could not delete path 'D:\mycode\reactnative ... 
- 教程视频、项目源码、全部干货【微信小程序、React Native、Java、iOS、数据结构】
		把我收藏多年的教学视频.项目源码分享给大家,大神就可以忽略了,很多东西都是基础性的,都是期初学习阶段收集的东西. 微信小程序(入门级,有web前端基础的人群): 链接: https://pan.bai ... 
- Java SpringBoot React Redux
		1.字符串转换相关 - React 前端JS部分 JSON.parse(JSON.stringify(copyRow)); 2.字符串分隔相关,弹出confirm确认框,显示换行信息 - React ... 
- React++ node.js ++SQL Sever ++MySQL++ python ++ php ++ java ++  c++ c#++ java ++ android ++ ios  ++Linux+
		"C语言在它诞生的那个年代,是非常不错的语言,可惜没有OOP.当项目臃肿到一定程度,人类就不可控了. 为了弥补这个缺陷,C++诞生了.而为了应对各种情况,C++设计的大而全,太多复杂的特性, ... 
- 基于 react 的Java web 应用—— 组件复用(后续需更新)
		前言 实习第二周,被告知要用React与导师进行基于React的Javaweb 的开发,jinzhangaaaaa~由于React 这款框架没学过,看了一峰老师的基础入门教程,硬着头皮开始上了... ... 
- Vue.js 2.0 和 React、Augular等其他框架的全方位对比
		引言 这个页面无疑是最难编写的,但也是非常重要的.或许你遇到了一些问题并且先前用其他的框架解决了.来这里的目的是看看Vue是否有更好的解决方案.那么你就来对了. 客观来说,作为核心团队成员,显然我们会 ... 
随机推荐
- 2、SpringMVC之入门案例
			2.1.环境搭建 2.1.1.右击project创建新module 2.1.2.选择maven 2.1.3.设置module名称和路径 2.1.4.module初始状态 2.1.5.配置打包方式 注意 ... 
- 【JavaScript】下滑线命名转驼峰命名处理
			同事写接口返回的JSON属性名称始终不一致,一会下划线一会驼峰 然后自己封装了一个: function toHump(name){ var newName = name.toLowerCase(); ... 
- Ubuntu 18.04.4 安装docker18.09 (使用阿里云的源)
			由于AI_Station 是使用容器构建环境的,而且只提供镜像上传下载功能,不为容易提供网络功能,因此需要在平台上把镜像拉取到本地,并安装一些必备软件然后再打包成镜像上传回去,因此需要在本地构建doc ... 
- jax中对单步操作的缓存对性能造成的影响
			代码: import jax.numpy as jnp from jax import grad, jit, vmap from jax import random def selu(x, alpha ... 
- 关于python:pip安装选项“ ignore-installed”和“ force-reinstall”之间的区别
			参考: https://www.codenong.com/51913361/ ==================================================== 官方文档解释: ... 
- 最佳实践:解读GaussDB(DWS) 统计信息自动收集方案
			摘要:现在商用优化器大多都是基于统计信息进行查询代价评估,因此统计信息是否实时且准确对查询影响很大,特别是分布式数据库场景.本文详细介绍GaussDB(DWS)如何实现了一种轻量.实时.准确的统计信息 ... 
- 一文搞懂DevOps、DataOps、MLOps、AIOps:所有“Ops”的比较
			引言 近年来,"Ops"一词在 IT 运维领域的使用迅速增加.IT 运维正在向自动化过程转变,以改善客户交付.传统的应用程序开发采用 DevOps 实施持续集成(CI)和持续部署( ... 
- CF208E 题解
			Blood Cousins 前置知识:线段树合并. 我们先把题目转化一下.这里先设 \(v\) 的 \(p\) 级祖先为 \(u\),事实上要求的东西就是 \(u\) 的 \(p\) 级后代的个数减 ... 
- 联想小新Air14使用傲梅分区助手进行硬盘克隆出现的问题,克隆完显示RAW格式解决方案,win10家庭版硬盘BitLocker上锁解锁方法
			联想小新Air14使用傲梅分区助手进行硬盘克隆出现的问题,克隆完显示RAW格式解决方案 买电脑时没考虑到512会不够用,也没注意到小新Air14是单插槽的,所以有了今天的故事. 本文会就自己的经历,提 ... 
- LeetCode300.最长递增子序列
			LeetCode300.最长递增子序列 力扣题目链接(opens new window) 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度. 子序列是由数组派生而来的序列,删除(或不删除 ... 
