Com qual lib desenvolvo minha interface gráfica nesse projeto com aplicação de sockets e pool de threads em JAVA?

Esboço do meu projeto

Então estou emperrado em meu projeto da faculdade (JAVA) programo à pouco tempo e não sei oq utilizar… tentei usar o javaFX pra fazer toda interface gráfica mas não consegui por não conseguir achar bons materiais na net, apenas aplicações para projetos simples de “Hello world” ou coisas do tipo que não me ajudam muito na hora da implementação de um projeto um pouco mais complexo. Como o professor exigiu apenas java (não autorizou usar Spring ou nenhuma outra framework, o que facilitaria muito a minha vida, mas enfim…).

Se alguém puder contribuir com dicas na estrutura do projeto e (principalmente) enviando bons materiais que possam me ajudar a decidir uma boa biblioteca pra desenvolver o front da aplicação agradeceria muito!

Copular minha tabela html com o map do javascript

Estou tentando copular uma tabela do Semantic Ui com os dados, porém não estou conseguindo entender qual estrutura de repetição eu devo fazer pra copular essa tabela.

Eu tentei algo como:

<Table.Body>      <Table.Row>          <Table.Cell> {this.props.funcionarios.map((funcionario) =>                  <Funcionario key={funcionario.Id} funcionario={funcionario} />)}          </Table.Cell>      </Table.Row>  </Table.Body> 

E então no meu componente de funcionário eu retornei:

 {this.props.funcionario.Nome}                 {this.props.funcionario.Cpf}                 {this.props.funcionario.Cargo}                 {this.props.funcionario.UfNasc}                 {this.props.funcionario.Salario}                 {this.props.funcionario.Status} 

mas as tabelas não foram copuladas corretamente.

Não está encontrando minha api no go

Estou tentando fazer uma função POST para inserir dados no meu banco usando golang.

No meu arquivo app.go eu declarei essa struct:

type App struct {     Router   *mux.Router     Database *sql.DB } 

Meu modelo:

type Funcstruct {     Name      string `json:"Name"`     Status    string `json:"Status"` } 

Meu setup router:

func (app *App) SetupRouter() {     app.Router.         Methods("POST").         Path("api/func").         HandlerFunc(app.createFunc)  } 

Minha função POST:

//POST FUNC func (app *App) createFunc(w http.ResponseWriter, r *http.Request) {      decoder := json.NewDecoder(r.Body)      var data Func     err := decoder.Decode(&data)     if err != nil {         panic(err)     }      Name := data.Name     Status := data.Status      database, err := db.CreateDatabase()     if err != nil {         log.Fatal("Not connect to db")     }     _, err = database.Exec("INSERT INTO `func` (Data, Name) VALUES ($  1, $  2)", Name, Status)     if err != nil {         log.Fatal("Error inserting data")     }      log.Println("Alright!")     w.WriteHeader(http.StatusOK) } 

Então eu faço um go build e depois um ./nomeprojeto para rodar o projeto.

Então, no postman eu tento fazer uma requisição http para o endpoint http://localhost:8000/api/func passando o nome e o status, mas eu recebo:

404 page not found

Meu arquivo main.go:

//Utility Struct type App struct {     Router   *mux.Router     Database *sql.DB }  func main() {     database, err := db.CreateDatabase()     if err != nil {         log.Fatal("Não foi possível se conectar com o bd")     }     app := &app.App{         Router:   mux.NewRouter().StrictSlash(true),         Database: database,     }      app.SetupRouter()     //Serve     log.Fatal(http.ListenAndServe(":8000", app.Router))  } 

Meu arquivo db.go:

func CreateDatabase() (*sql.DB, error) {     serverName := "localhost:3306"     user := "root"     password := "x"     dbName := "func"      connectionString := fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8mb4&collation=utf8mb4_unicode_ci&parseTime=true&multiStatements=true", user, password, serverName, dbName)     db, err := sql.Open("mysql", connectionString)     if err != nil {         return nil, err     }      return db, nil } 

Minha navbar responsiva não abre o menu

<html lang="en"> 

BarCode

  <nav class="navbar navbar-expand-lg navbar-light fixed-top" id="mainNav"> <div class="container">   <a class="navbar-brand js-scroll-trigger" href="#page-top"><img class="col-lg-4" src="img/logo.jpeg"></a>   <button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse"     data-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false"     aria-label="Toggle navigation">     <span class="navbar-toggler-icon"></span>   </button>   <div class="collapse navbar-collapse" id="navbarResponsive">     <ul class="navbar-nav mr-auto">       <li class="nav-item">         <a class="nav-link js-scroll-trigger" href="#services">Serviços</a>       </li>       <li class="nav-item">         <a class="nav-link js-scroll-trigger" href="#orcamento">Contato</a>       </li>       <li class="nav-item">         <a class="nav-link js-scroll-trigger" href="#time">Time</a>       </li>       <li class="nav-item">         <a class="nav-link js-scroll-trigger" href="#ods">Sobre</a>       </li>       <li class="nav-item">         <a class="nav-link js-scroll-trigger" href="/index-english.html#about">English</a>       </li>     </ul>   </div> </div> 

body { 

font-family: ‘Lato’, ‘Helvetica Neue’, Helvetica, Arial, sans-serif; }

h1, h2, h3, h4, h5, h6 { font-family: ‘Lato’, ‘Helvetica Neue’, Helvetica, Arial, sans-serif; font-weight: 700; }

header.masthead { position: relative; background-color: #343a40; background: url(“../img/capa1.png”) no-repeat center center; background-size: cover; padding-top: 8rem; padding-bottom: 8rem; }

header.masthead .overlay { position: absolute; background-color: #212529; height: 100%; width: 100%; top: 0; left: 0; opacity: 0.7; }

header.masthead h1 { font-size: 2rem; }

@media (min-width: 768px) { header.masthead { padding-top: 12rem; padding-bottom: 12rem; } header.masthead h1 { font-size: 3rem; } }

.showcase .showcase-text { padding: 3rem; }

.showcase .showcase-img { min-height: 30rem; background-size: cover; }

@media (min-width: 768px) { .showcase .showcase-text { padding: 7rem; } }

.features-icons { padding-top: 7rem; padding-bottom: 7rem; }

.features-icons .features-icons-item { max-width: 20rem; }

.features-icons .features-icons-item .features-icons-icon { height: 7rem; }

.features-icons .features-icons-item .features-icons-icon i { font-size: 4.5rem; }

.features-icons .features-icons-item:hover .features-icons-icon i { font-size: 5rem; }

.testimonials { padding-top: 2rem; padding-bottom: 2rem; }

.testimonials .testimonial-item { max-width: 18rem; }

.testimonials .testimonial-item img { max-width: 12rem; -webkit-box-shadow: 0px 5px 5px 0px #adb5bd; box-shadow: 0px 5px 5px 0px #adb5bd; }

.call-to-action { position: relative; background-color: #343a40; background: url(“../img/fale.png”) no-repeat center center; background-size: cover; padding-top: 7rem; padding-bottom: 7rem; }

.call-to-action .overlay { position: absolute; background-color: #212529; height: 100%; width: 100%; top: 0; left: 0; opacity: 0.3; }

footer.footer { padding-top: 4rem; padding-bottom: 4rem; }

mainNav {

border-bottom: 1px solid rgba(33, 37, 41, 0.1); background-color: #fff; font-family: ‘Open Sans’, ‘Helvetica Neue’, Arial, sans-serif; -webkit-transition: all 0.2s; transition: all 0.2s; }

Problemas para logar na minha conta no wordpress

Iniciei o desenvolvimento de projetos na plataforma wordpress, porém sempre que estou tentando logar está dando um erro, resumi pegando apenas dois paragráfos pois o erro é realmente muito grande:

Erro no banco de dados do WordPress: [Tablespace is missing for table portifolio.wp_users.] CREATE TABLE wp_users ( ID bigint(20) unsigned NOT NULL auto_increment, user_login varchar(60) NOT NULL default ”, user_pass varchar(255) NOT NULL default ”, user_nicename varchar(50) NOT NULL default ”, user_email varchar(100) NOT NULL default ”, user_url varchar(100) NOT NULL default ”, user_registered datetime NOT NULL default ‘0000-00-00 00:00:00’, user_activation_key varchar(255) NOT NULL default ”, user_status int(11) NOT NULL default ‘0’, display_name varchar(250) NOT NULL default ”, PRIMARY KEY (ID), KEY user_login_key (user_login), KEY user_nicename (user_nicename), KEY user_email (user_email) ) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci

Erro no banco de dados do WordPress: [Tablespace is missing for table portifolio.wp_usermeta.] CREATE TABLE wp_usermeta ( umeta_id bigint(20) unsigned NOT NULL auto_increment, user_id bigint(20) unsigned NOT NULL default ‘0’, meta_key varchar(255) default NULL, meta_value longtext, PRIMARY KEY (umeta_id), KEY user_id (user_id), KEY meta_key (meta_key(191)) ) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci

Essa aqui é a tela que sempre aparece quando tento abrir o wordpress(pelo laragon, a instalação também foi feita via laragon):

inserir a descrição da imagem aqui

Eu já tinha um projeto quase concluído na plataforma, mas como não estou conseguindo acessar não dá para avançar. Me ajudem a resolver por gentileza.

Como acessar minha API de backend

Preciso acessar minha API de backend em node para que a mesma envie emails com informação de um formulário de contato. Hospedei minha aplicação no King Host e aparece dessa forma o endereço da minha aplicação está mais ou menos assim a questão é que, como sou meio novato no node, não sei acessar a minha aplicação remotamente para fazer o encaminhamento dos formulários ja tentei utilizar ambos os endereços com o nome da rota no final exemplo: urldomeusite.com:num-porta/contato e urldomeusite.com/meusite/contato e não funcionou… Se alguém puder me ajudar fico bastante agradecido!

Não consigo mais rodar minha aplicação para ios

Eu antes conseguia rodar tranquilamente a minha aplicação, só que agora pouco tinha sumido da lista debug a opção de rodar no ios ficou apenas android e uwp. agora voltou a aparecer só que não consigo mais rodar. aparece essa mensagem de erro no visual studio, ja tentei reicinia a o visual, reparei ele tambem e até testei em outra maquina o meu projeto mas da o mesmo erro, ja tentei fazer o que a imagem pede também.

inserir a descrição da imagem aqui inserir a descrição da imagem aqui

Psql -c está deixando o nome da minha tabela em minúsculo

Olá,

Estou executando o seguinte comando:

psql -d copia-local -U postgres -c “COPY “Questions” FROM ‘/home/pedro/Documents/PostGre/data/cooked/Questions_cooked.txt’ WITH DELIMITER ‘|’ NULL AS ””

ERROR: relation “questions” does not exist

O interessante é que se eu executo o comando dentro do banco de dados do Postgre, funciona:

copia-local=# COPY “Questions” FROM ‘/home/pedro/Documents/PostGre/data/cooked/Questions_cooked.txt’ WITH DELIMITER ‘|’ NULL AS ”; COPY 1342

Pesquisei sobre os parâmetros do psql mas não achei nada sobre respeitar o nome da tabela, parece que quando eu rodo pelo psql ele da lowercase no nome da tabela.

Alguém tem alguma idéia do que fazer ?

Estou usando o NetBeans, porém quero alterar o ícone padrão da minha aplicação. Mas, me deparei com este erro

/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package projeto2018.br.com.infoq.telas;

import java.awt.Image; import java.awt.Toolkit; import java.net.URL; import javax.swing.JFrame;

/** * * @author Helvio */ public class frmLogin extends javax.swing.JFrame { private Image Toolkit;

/**  * Creates new form frmLogin  */ public frmLogin() {     initComponents();     setIcon();    }  /**  * This method is called from within the constructor to initialize the form.  * WARNING: Do NOT modify this code. The content of this method is always  * regenerated by the Form Editor.  */ @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code">                           private void initComponents() {      jLabel4 = new javax.swing.JLabel();     txt_usuario = new javax.swing.JTextField();     txt_senha = new javax.swing.JPasswordField();     btn_exit = new javax.swing.JButton();     btn_login = new javax.swing.JButton();     jLabel1 = new javax.swing.JLabel();     jLabel3 = new javax.swing.JLabel();     jLabel5 = new javax.swing.JLabel();     jLabel6 = new javax.swing.JLabel();      jLabel4.setText("jLabel4");      setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);     setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));     getContentPane().setLayout(null);     getContentPane().add(txt_usuario);     txt_usuario.setBounds(230, 80, 191, 30);     getContentPane().add(txt_senha);     txt_senha.setBounds(230, 140, 189, 30);      btn_exit.setText("Exit");     btn_exit.addActionListener(new java.awt.event.ActionListener() {         public void actionPerformed(java.awt.event.ActionEvent evt) {             btn_exitActionPerformed(evt);         }     });     getContentPane().add(btn_exit);     btn_exit.setBounds(230, 190, 93, 33);      btn_login.setText("Login");     getContentPane().add(btn_login);     btn_login.setBounds(330, 190, 88, 33);      jLabel1.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N     jLabel1.setText("Usuário :");     getContentPane().add(jLabel1);     jLabel1.setBounds(230, 60, 54, 17);      jLabel3.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N     jLabel3.setText("Senha");     getContentPane().add(jLabel3);     jLabel3.setBounds(230, 120, 38, 17);      jLabel5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/projeto2018/br.com.infoq.icon/login-icon.png"))); // NOI18N     getContentPane().add(jLabel5);     jLabel5.setBounds(0, 30, 220, 170);      jLabel6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/projeto2018/br.com.infoq.icon/Como-cambiar-la-imagen-de-fondo-del-inicio-de-sesion-en-tu-Mac-professor-falken.com_.jpg"))); // NOI18N     getContentPane().add(jLabel6);     jLabel6.setBounds(0, 0, 450, 250);      setSize(new java.awt.Dimension(466, 291));     setLocationRelativeTo(null); }// </editor-fold>                          private void btn_exitActionPerformed(java.awt.event.ActionEvent evt) {                                              System.exit(0); }                                          /**  * @param args the command line arguments  */ public static void main(String args[]) {      /* Set the Nimbus look and feel */     //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">     /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.      * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html       */     try {         for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {             if ("Nimbus".equals(info.getName())) {                 javax.swing.UIManager.setLookAndFeel(info.getClassName());                 break;             }         }     } catch (ClassNotFoundException ex) {         java.util.logging.Logger.getLogger(frmLogin.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);     } catch (InstantiationException ex) {         java.util.logging.Logger.getLogger(frmLogin.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);     } catch (IllegalAccessException ex) {         java.util.logging.Logger.getLogger(frmLogin.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);     } catch (javax.swing.UnsupportedLookAndFeelException ex) {         java.util.logging.Logger.getLogger(frmLogin.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);     }     //</editor-fold>      /* Create and display the form */     java.awt.EventQueue.invokeLater(new Runnable() {         public void run() {             new frmLogin().setVisible(true);         }     }); }  // Variables declaration - do not modify                      private javax.swing.JButton btn_exit; private javax.swing.JButton btn_login; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel3; private javax.swing.JLabel jLabel4; private javax.swing.JLabel jLabel5; private javax.swing.JLabel jLabel6; private javax.swing.JPasswordField txt_senha; private javax.swing.JTextField txt_usuario; // End of variables declaration                     private void setIcon() {     setIconImage ( Toolkit . getDefaultToolkit (). getImage ( getClass (). getResource ( "im.png" ))); } 

}