Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * 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 omtenta.ik1004;
- import java.io.BufferedReader;
- import java.io.BufferedWriter;
- import java.io.File;
- import java.io.FileReader;
- import java.io.IOException;
- import java.nio.charset.StandardCharsets;
- import java.nio.file.Files;
- import java.nio.file.Paths;
- import java.nio.file.StandardOpenOption;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Statement;
- import java.text.DateFormat;
- import java.text.SimpleDateFormat;
- import java.util.ArrayList;
- import java.util.Calendar;
- import java.util.List;
- import javafx.collections.FXCollections;
- import javafx.collections.ObservableList;
- import javafx.geometry.Insets;
- 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.TableView;
- import javafx.scene.control.TextArea;
- import javafx.scene.image.Image;
- import javafx.scene.image.ImageView;
- import javafx.scene.layout.BorderPane;
- import javafx.scene.layout.GridPane;
- import javafx.scene.layout.HBox;
- import javafx.scene.layout.VBox;
- /**
- *
- * @author h15andma
- */
- public class ServicePane extends BorderPane {
- private Connection con;
- Image surImage;
- Image gladImage;
- Image neutralImage;
- ImageView imageView = new ImageView();
- private ObservableList<betyg> obsListBetyg = FXCollections.observableArrayList(getBetygen());
- Label surCount;
- Label neutralCount;
- Label gladCount;
- private TableView<betyg> tableView;
- int surCounter = 0;
- int neutralCounter = 0;
- int gladCounter = 0;
- TextArea tArea = new TextArea();
- private String[] betygColumns = {"sur", "varken", "glad"};
- private String[] betygProperties = {"sur", "varken", "glad"};
- public ServicePane() {
- surImage = new Image("file:sur.png", 50, 50, false, false);
- gladImage = new Image("file:glad.jpg", 50, 50, false, false);
- neutralImage = new Image("file:neutral.png", 50, 50, false, false);
- setTop(getVboxMenu());
- setCenter(getCenterPane());
- setBottom(getBottomTableView());
- }
- private GridPane getCenterPane() {
- GridPane gp = new GridPane();
- HBox hbox = new HBox(70);
- HBox labelBox = new HBox(150);
- gp.setPadding(new Insets(10, 10, 10, 10));
- hbox.setPadding(new Insets(10, 10, 10, 10));
- labelBox.setPadding(new Insets(10,10,10,10));
- Button sur = new Button();
- sur.setOnAction(e -> addSurCount());
- sur.setGraphic(new ImageView(surImage));
- surCount = new Label(String.valueOf(surCounter));
- Button neutral = new Button();
- neutral.setOnAction(e -> addNeutralCount());
- neutral.setGraphic(new ImageView(neutralImage));
- neutralCount = new Label(String.valueOf(neutralCounter));
- Button glad = new Button();
- glad.setOnAction(e -> addGladCount());
- glad.setGraphic(new ImageView(gladImage));
- gladCount = new Label(String.valueOf(gladCounter));
- hbox.getChildren().addAll(sur, neutral, glad);
- labelBox.getChildren().addAll(surCount, neutralCount, gladCount);
- gp.add(labelBox,0, 2);
- gp.add(hbox, 0, 1);
- return gp;
- }
- private VBox getVboxMenu() {
- VBox topContainer = new VBox();
- MenuBar mainMenu = new MenuBar();
- topContainer.getChildren().add(mainMenu);
- Menu file = new Menu("Arkiv");
- MenuItem spara = new MenuItem("Spara till textfil");
- spara.setOnAction(e -> sparaTillText());
- MenuItem visa = new MenuItem("Visa textfil");
- visa.setOnAction(e -> visaText());
- file.getItems().addAll(spara, visa);
- mainMenu.getMenus().add(file);
- return topContainer;
- }
- public List getBetygen() {
- List betygish = new ArrayList();
- int sCount = surCounter;
- int nCount = neutralCounter;
- int gCount = gladCounter;
- betygish.add(new betyg(sCount, nCount, gCount));
- return betygish;
- }
- public List<betyg> getBetyg() {
- List<betyg> betygen = new ArrayList();
- try {
- Connection con = getConnection();
- Statement stmt = con.createStatement();
- String sql = "SELECT sur, varken, glad from h15andma_service";
- ResultSet rs = stmt.executeQuery(sql);
- while (rs.next()) {
- int surCount = rs.getInt("sur");
- int neutralCount = rs.getInt("varken");
- int gladCount = rs.getInt("glad");
- betygen.add(new betyg(surCount, neutralCount, gladCount));
- }
- rs.close();
- stmt.close();
- con.close();
- return betygen;
- } catch (SQLException ex) {
- System.out.println(ServicePane.class.getName() + ex.getMessage());
- }
- return null;
- }
- private Connection getConnection() {
- try {
- con = DriverManager.getConnection(
- "jdbc:mysql://utb-mysql.du.se:3306/db30",
- "db30",
- "FJJAcyMU");
- return con;
- } catch (SQLException ex) {
- System.out.println(ServicePane.class.getName() + ex.getMessage());
- }
- return null;
- }
- public GridPane getBottomTableView() {
- GridPane bottomPane = new GridPane();
- HBox hbox = new HBox();
- hbox.setPadding(new Insets(10, 10, 10, 10));
- tArea.setText("");
- hbox.getChildren().add(tArea);
- bottomPane.add(hbox, 0, 1);
- return bottomPane;
- }
- public void addSurCount() {
- surCounter++;
- System.out.println(surCounter);
- surCount.setText(String.valueOf(surCounter));
- try {
- con = getConnection();
- String updateSur = "UPDATE h15andma_service SET sur=? WHERE `h15andma_service`.`sur`=?";
- PreparedStatement preparedStatement = con.prepareStatement(updateSur);
- preparedStatement.setInt(1, surCounter);
- preparedStatement.setInt(2, surCounter - 1);
- preparedStatement.executeUpdate();
- preparedStatement.close();
- con.close();
- } catch (SQLException ex) {
- System.out.println(ServicePane.class.getName() + ex.getMessage());
- }
- }
- public void addNeutralCount() {
- neutralCounter++;
- System.out.println(neutralCounter);
- neutralCount.setText(String.valueOf(neutralCounter));
- try {
- con = getConnection();
- String updateNeutral = "UPDATE h15andma_service SET varken=? WHERE `h15andma_service`.`varken` =?";
- PreparedStatement preparedStatement = con.prepareStatement(updateNeutral);
- preparedStatement.setInt(1, neutralCounter);
- preparedStatement.setInt(2, neutralCounter - 1);
- preparedStatement.executeUpdate();
- preparedStatement.close();
- con.close();
- } catch (SQLException ex) {
- System.out.println(ServicePane.class.getName() + ex.getMessage());
- }
- }
- public void addGladCount() {
- gladCounter++;
- System.out.println(gladCounter);
- gladCount.setText(String.valueOf(gladCounter));
- try {
- con = getConnection();
- String updateGlad = "UPDATE h15andma_service SET glad=? WHERE `h15andma_service`.`glad` =?";
- PreparedStatement preparedStatement = con.prepareStatement(updateGlad);
- preparedStatement.setInt(1, gladCounter);
- preparedStatement.setInt(2, gladCounter - 1);
- preparedStatement.executeUpdate();
- preparedStatement.close();
- con.close();
- } catch (SQLException ex) {
- System.out.println(ServicePane.class.getName() + ex.getMessage());
- }
- }
- public void sparaTillText() {
- DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd");
- Calendar cal = Calendar.getInstance();
- try {
- BufferedWriter writer = null;
- writer = Files.newBufferedWriter(Paths.get("betyg.txt"), StandardCharsets.UTF_8, StandardOpenOption.APPEND);
- writer.write(dateFormat.format(cal.getTime()) + "," + surCounter + "," + neutralCounter + "," + gladCounter);
- writer.newLine();
- writer.close();
- } catch (IOException ex) {
- System.out.println(ServicePane.class.getName() + ex.getMessage());
- }
- }
- public void visaText() {
- try{
- File file = new File("betyg.txt");
- BufferedReader rd = new BufferedReader(new FileReader(file));
- String line;
- while ((line = rd.readLine()) != null)
- tArea.appendText(line + "\n");
- rd.close();
- }catch(IOException ex) {
- System.out.println(ServicePane.class.getName() + ex.getMessage());
- }
- }
- private BufferedReader getReader() {
- try {
- BufferedReader reader = null;
- reader = Files.newBufferedReader(Paths.get("filmer.txt"), StandardCharsets.UTF_8);
- return reader;
- }catch (IOException ex) {
- System.out.println(ServicePane.class.getName() + ex.getMessage());
- }
- return null;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement