Advertisement
Guest User

Untitled

a guest
May 10th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.05 KB | None | 0 0
  1. package database;
  2.  
  3. import org.junit.Test;
  4.  
  5. import java.io.IOException;
  6. import java.sql.*;
  7.  
  8. public class Main {
  9.  
  10.     private final static String URL ="jdbc:mysql://localhost:3306/catalog?useSSL=false";
  11.     private final static String USERNAME = "root";
  12.     private final static String PASSWORD = "root";+
  13.     private final static String FILEPATH = "./src/main/resources/input.txt";
  14.  
  15.     public static void main(String[] args) throws SQLException, IOException {
  16.       Reader reader = new Reader(FILEPATH);
  17.       StudentParser parser = new StudentParser();
  18.       DatabaseWriter dbWriter = new DatabaseWriter(URL, USERNAME, PASSWORD);
  19.  
  20.    try {
  21.         while (reader.hasNext()==true){
  22.             String line = reader.next();
  23.             Student student = parser.parse(line);
  24.             dbWriter.writeStudent(student);
  25.             }
  26.         }
  27.         catch (NullPointerException e){
  28.         e.printStackTrace();
  29.         }finally {
  30.             dbWriter.close();
  31.             reader.close();
  32.         }
  33.     }
  34. }
  35. package database;
  36.  
  37. import org.junit.jupiter.api.Test;
  38.  
  39. import java.util.LinkedList;
  40.  
  41. public class StudentParser {
  42.  
  43.     public Student parse(String line){
  44.         String [] words = line.split(",");
  45.         Student student = null;
  46.         int lenght = words.length;
  47.  
  48.         if(lenght == 1){
  49.             student = new Student(words[0]," "," ");
  50.         }
  51.         else
  52.         if (lenght == 2) {
  53.           student = new Student(words[0], words[1], " ");
  54.  
  55.         } else
  56.         if(lenght == 3) {
  57.             student = new Student(words[0], words[1], words[2]);
  58.         }
  59.         return student;
  60.     }
  61. }
  62. package database;
  63.  
  64. import java.io.Closeable;
  65. import java.io.IOException;
  66. import java.sql.Connection;
  67. import java.sql.PreparedStatement;
  68. import java.sql.SQLException;
  69.  
  70. public class DatabaseWriter implements Closeable {
  71.     private final static String INSERT = "INSERT INTO students VALUES(?,?,?,?)";
  72.     private String URL,USERNAME,PASSWORD;
  73.     int count = 1;
  74.     DatabaseWriter(String URL,String USERNAME,String PASSWORD) throws SQLException {
  75.         this.URL = URL;
  76.         this.USERNAME = USERNAME;
  77.         this.PASSWORD = PASSWORD;
  78.         DBConnector dbc = new DBConnector();
  79.         Connection conn = dbc.getConnection(URL,USERNAME,PASSWORD);
  80.         PreparedStatement preparedStatement = conn.prepareStatement(INSERT);
  81.     }
  82.  
  83.     public void writeStudent(Student student) throws SQLException {
  84.         PreparedStatement preparedStatement = conn.prepareStatement(INSERT);
  85.         preparedStatement.setInt(1, count);
  86.         preparedStatement.setString(2, student.getFirstName());
  87.         preparedStatement.setString(3, student.getLastName());
  88.         preparedStatement.setString(4, student.getAge());
  89.         preparedStatement.execute();
  90.         count++;
  91.     }
  92.  
  93.     @Override
  94.     public void close() throws IOException {
  95.         conn.close();
  96.     }
  97. }
  98. package database;
  99.  
  100. import com.mysql.fabric.jdbc.FabricMySQLDriver;
  101.  
  102. import java.sql.Connection;
  103. import java.sql.DriverManager;
  104. import java.sql.SQLException;
  105.  
  106. public class DBConnector {
  107.     private Connection connection;
  108.     public DBConnector() throws SQLException{
  109.         DriverManager.registerDriver(new FabricMySQLDriver());
  110.     }
  111.  
  112.     public Connection getConnection(String url, String username, String password) throws SQLException{
  113.         if(connection != null)
  114.             return connection;
  115.         connection = DriverManager.getConnection(url, username, password);
  116.         return connection;
  117.     }
  118. }
  119. package database;
  120.  
  121. public class Student {
  122.     private   String firstName,lastName,age;
  123.  
  124.     Student(String name,String surname,String StudentAge){
  125.         firstName = name;
  126.         lastName = surname;
  127.         age = StudentAge;
  128.     }
  129.  
  130.     public String toString(){
  131.         return this.firstName + " " + this.lastName + " " + this.age;
  132.     }
  133.     public String getFirstName(){
  134.         return firstName;
  135.     }
  136.  
  137.     public String getLastName(){
  138.         return lastName;
  139.     }
  140.  
  141.     public String getAge(){
  142.         return age;
  143.     }
  144. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement