绘制主界面
This commit is contained in:
@@ -1,32 +1,35 @@
|
|||||||
package com.dayrain;
|
package com.dayrain;
|
||||||
|
|
||||||
import com.dayrain.entity.Configuration;
|
import com.dayrain.entity.Configuration;
|
||||||
import com.dayrain.entity.ConfigurationHolder;
|
|
||||||
import com.dayrain.entity.RequestType;
|
import com.dayrain.entity.RequestType;
|
||||||
import com.dayrain.entity.Server;
|
import com.dayrain.entity.Server;
|
||||||
import com.dayrain.entity.ServerConfig;
|
import com.dayrain.entity.ServerConfig;
|
||||||
import com.dayrain.entity.ServerUrl;
|
import com.dayrain.entity.ServerUrl;
|
||||||
|
import com.dayrain.views.HomePage;
|
||||||
import javafx.application.Application;
|
import javafx.application.Application;
|
||||||
|
import javafx.scene.Scene;
|
||||||
|
import javafx.scene.control.Label;
|
||||||
|
import javafx.scene.control.TitledPane;
|
||||||
import javafx.stage.Stage;
|
import javafx.stage.Stage;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public class ApplicationStarter extends Application {
|
public class ApplicationStarter extends Application {
|
||||||
|
Configuration configuration = configInit();
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
ConfigurationHolder.reload(get());
|
|
||||||
Configuration configuration = ConfigurationHolder.get();
|
|
||||||
List<ServerConfig> serverConfigs = configuration.getServerConfigs();
|
// List<ServerConfig> serverConfigs = configuration.getServerConfigs();
|
||||||
for (ServerConfig serverConfig : serverConfigs) {
|
// for (ServerConfig serverConfig : serverConfigs) {
|
||||||
Server server = new Server(serverConfig);
|
// Server server = new Server(serverConfig);
|
||||||
Thread thread = new Thread(server);
|
// Thread thread = new Thread(server);
|
||||||
thread.start();
|
// thread.start();
|
||||||
}
|
// }
|
||||||
// launch(args);
|
launch(args);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static Configuration get() {
|
private static Configuration configInit() {
|
||||||
Configuration configuration = new Configuration();
|
Configuration configuration = new Configuration();
|
||||||
configuration.setServerConfigs(new ArrayList<ServerConfig>(){
|
configuration.setServerConfigs(new ArrayList<ServerConfig>(){
|
||||||
{
|
{
|
||||||
@@ -45,12 +48,14 @@ public class ApplicationStarter extends Application {
|
|||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
configuration.setWidth(1200);
|
||||||
|
configuration.setHeight(800);
|
||||||
|
|
||||||
return configuration;
|
return configuration;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void start(Stage primaryStage) throws Exception {
|
public void start(Stage primaryStage) throws Exception {
|
||||||
|
new HomePage(primaryStage, configuration).start();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,8 +4,22 @@ import java.util.List;
|
|||||||
|
|
||||||
public class Configuration {
|
public class Configuration {
|
||||||
|
|
||||||
|
private String projectName;
|
||||||
|
|
||||||
|
private int width;
|
||||||
|
|
||||||
|
private int height;
|
||||||
|
|
||||||
private List<ServerConfig>serverConfigs;
|
private List<ServerConfig>serverConfigs;
|
||||||
|
|
||||||
|
public String getProjectName() {
|
||||||
|
return projectName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setProjectName(String projectName) {
|
||||||
|
this.projectName = projectName;
|
||||||
|
}
|
||||||
|
|
||||||
public List<ServerConfig> getServerConfigs() {
|
public List<ServerConfig> getServerConfigs() {
|
||||||
return serverConfigs;
|
return serverConfigs;
|
||||||
}
|
}
|
||||||
@@ -13,4 +27,20 @@ public class Configuration {
|
|||||||
public void setServerConfigs(List<ServerConfig> serverConfigs) {
|
public void setServerConfigs(List<ServerConfig> serverConfigs) {
|
||||||
this.serverConfigs = serverConfigs;
|
this.serverConfigs = serverConfigs;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int getWidth() {
|
||||||
|
return width;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setWidth(int width) {
|
||||||
|
this.width = width;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getHeight() {
|
||||||
|
return height;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setHeight(int height) {
|
||||||
|
this.height = height;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,18 +0,0 @@
|
|||||||
package com.dayrain.entity;
|
|
||||||
|
|
||||||
public class ConfigurationHolder {
|
|
||||||
|
|
||||||
private static Configuration configuration;
|
|
||||||
|
|
||||||
public static void init() {
|
|
||||||
configuration = new Configuration();
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void reload(Configuration config) {
|
|
||||||
configuration = config;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Configuration get() {
|
|
||||||
return configuration;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -45,7 +45,6 @@ public class RequestHandler implements HttpHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void response(HttpExchange exchange, String jsonBody) {
|
private void response(HttpExchange exchange, String jsonBody) {
|
||||||
setHeaders(exchange);
|
|
||||||
try {
|
try {
|
||||||
exchange.sendResponseHeaders(200, jsonBody.length());
|
exchange.sendResponseHeaders(200, jsonBody.length());
|
||||||
exchange.setAttribute("Content-Type","application/json; charset=utf-8");
|
exchange.setAttribute("Content-Type","application/json; charset=utf-8");
|
||||||
@@ -56,33 +55,4 @@ public class RequestHandler implements HttpHandler {
|
|||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setHeaders(HttpExchange exchange) {
|
|
||||||
Map<String, String> headerMap = serverUrl.getHeaderMap();
|
|
||||||
if(headerMap != null && headerMap.size() > 0) {
|
|
||||||
Headers responseHeaders = exchange.getResponseHeaders();
|
|
||||||
for (String header : headerMap.keySet()) {
|
|
||||||
responseHeaders.add(header, headerMap.get(header));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Map<String,String> formData2Dic(String formData ) {
|
|
||||||
Map<String,String> result = new HashMap<>();
|
|
||||||
if(formData== null || formData.trim().length() == 0) {
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
final String[] items = formData.split("&");
|
|
||||||
Arrays.stream(items).forEach(item ->{
|
|
||||||
final String[] keyAndVal = item.split("=");
|
|
||||||
if( keyAndVal.length == 2) {
|
|
||||||
try{
|
|
||||||
final String key = URLDecoder.decode( keyAndVal[0],"utf8");
|
|
||||||
final String val = URLDecoder.decode( keyAndVal[1],"utf8");
|
|
||||||
result.put(key,val);
|
|
||||||
}catch (UnsupportedEncodingException ignored) {}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
68
src/com/dayrain/views/HomePage.java
Normal file
68
src/com/dayrain/views/HomePage.java
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
package com.dayrain.views;
|
||||||
|
|
||||||
|
import com.dayrain.entity.Configuration;
|
||||||
|
import javafx.geometry.Pos;
|
||||||
|
import javafx.scene.Scene;
|
||||||
|
import javafx.scene.control.Button;
|
||||||
|
import javafx.scene.control.Label;
|
||||||
|
import javafx.scene.control.Menu;
|
||||||
|
import javafx.scene.control.MenuBar;
|
||||||
|
import javafx.scene.control.MenuItem;
|
||||||
|
import javafx.scene.control.TitledPane;
|
||||||
|
import javafx.scene.input.MouseEvent;
|
||||||
|
import javafx.scene.layout.BorderPane;
|
||||||
|
import javafx.scene.layout.HBox;
|
||||||
|
import javafx.scene.layout.VBox;
|
||||||
|
import javafx.stage.Stage;
|
||||||
|
|
||||||
|
public class HomePage {
|
||||||
|
private Stage primaryStage;
|
||||||
|
private Configuration configuration;
|
||||||
|
|
||||||
|
public HomePage(Stage primaryStage, Configuration configuration) {
|
||||||
|
this.primaryStage = primaryStage;
|
||||||
|
this.configuration = configuration;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void start() {
|
||||||
|
|
||||||
|
BorderPane borderPane = new BorderPane();
|
||||||
|
|
||||||
|
//菜单栏
|
||||||
|
MenuBar menuBar = new MenuBar();
|
||||||
|
Menu menu1 = new Menu("文件");
|
||||||
|
MenuItem menuItem1 = new MenuItem("新建");
|
||||||
|
MenuItem menuItem2 = new MenuItem("导入");
|
||||||
|
MenuItem menuItem3 = new MenuItem("导出");
|
||||||
|
menu1.getItems().addAll(menuItem1, menuItem2, menuItem3);
|
||||||
|
|
||||||
|
Menu menu2 = new Menu("日志");
|
||||||
|
Menu menu3 = new Menu("帮助");
|
||||||
|
menuBar.getMenus().addAll(menu1, menu2, menu3);
|
||||||
|
borderPane.setTop(menuBar);
|
||||||
|
|
||||||
|
|
||||||
|
//服务列表
|
||||||
|
VBox serverBox = new VBox();
|
||||||
|
|
||||||
|
HBox urlBox = new HBox();
|
||||||
|
Label nameLabel = new Label("登录");
|
||||||
|
Label urlLabel = new Label("/wms/login");
|
||||||
|
Button configButton = new Button("配置");
|
||||||
|
Button deleteButton = new Button("删除");
|
||||||
|
urlBox.setSpacing(20d);
|
||||||
|
urlBox.setAlignment(Pos.CENTER_LEFT);
|
||||||
|
urlBox.getChildren().addAll(nameLabel, urlLabel, configButton, deleteButton);
|
||||||
|
|
||||||
|
TitledPane titledPane = new TitledPane("众华WMS", urlBox);
|
||||||
|
titledPane.setPrefWidth(600d);
|
||||||
|
serverBox.getChildren().addAll(titledPane);
|
||||||
|
|
||||||
|
borderPane.setLeft(serverBox);
|
||||||
|
|
||||||
|
primaryStage.setScene(new Scene(borderPane));
|
||||||
|
primaryStage.setWidth(configuration.getWidth());
|
||||||
|
primaryStage.setHeight(configuration.getHeight());
|
||||||
|
primaryStage.show();
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user