diff --git a/README.md b/README.md index 2a8ca34..d6a5561 100644 --- a/README.md +++ b/README.md @@ -11,3 +11,6 @@ The client need to send JWT token for each request .By implementing the abstract 1)Create a JSON with SignUP request and submit to /signup api. 2)Create the JSON for SignIn request with username and password.The JWT rest API will return JWT token. 3)Send the token in authorization request headeralong along with request for api call + + +Check \ No newline at end of file diff --git a/authandautherization/src/main/java/com/innovativeintelli/authandautherization/ExampleUsage.java b/authandautherization/src/main/java/com/innovativeintelli/authandautherization/ExampleUsage.java new file mode 100644 index 0000000..b0d0818 --- /dev/null +++ b/authandautherization/src/main/java/com/innovativeintelli/authandautherization/ExampleUsage.java @@ -0,0 +1,43 @@ +import java.util.Calendar; + +public class ExampleUsage { + public static void main(String[] args) { + // Create an instance of DummyTableValues + DummyTableValues dummyTableValues = new DummyTableValues(); + + // Set values for the parameters (example values used here) + dummyTableValues.setParam1(1); // Assuming this is a Number + dummyTableValues.setParam2(Calendar.getInstance()); // Assuming this is a Calendar instance + dummyTableValues.setParam3(100.0); // Assuming this is a Number + dummyTableValues.setParam4(200.0); // Assuming this is a Number + dummyTableValues.setParam5(50.0); // Assuming this is a Number + dummyTableValues.setParam6(300.0); // Assuming this is a Number + dummyTableValues.setParam7(25.0); // Assuming this is a Number + dummyTableValues.setParam8(400.0); // Assuming this is a Number + dummyTableValues.setParam9(150.0); // Assuming this is a Number + dummyTableValues.setParam10(1000); // Assuming this is a Number + dummyTableValues.setParam11(2000); // Assuming this is a Number + dummyTableValues.setParam12(500); // Assuming this is a Number + dummyTableValues.setParam13(10000); // Assuming this is a Number + dummyTableValues.setParam14(15000); // Assuming this is a Number + + // Create Calendar instances for param15 and param16 + Calendar param15 = Calendar.getInstance(); + Calendar param16 = Calendar.getInstance(); + + // Set these Calendar instances to dummyTableValues + dummyTableValues.setParam15(param15); + dummyTableValues.setParam16(param16); + + // Assuming you have an instance of the class containing insertDummyTableValues method + ExampleUsage exampleUsage = new ExampleUsage(); + exampleUsage.insertDummyTableValues(dummyTableValues); + } + + // Method to invoke the insertDummyTableValues + public void insertDummyTableValues(DummyTableValues dummyTableValues) { + + MyDAO.insertDummyTableValues(dummyTableValues); + + } +} diff --git a/authandautherization/src/main/java/com/innovativeintelli/authandautherization/MyDAO.java b/authandautherization/src/main/java/com/innovativeintelli/authandautherization/MyDAO.java new file mode 100644 index 0000000..9025932 --- /dev/null +++ b/authandautherization/src/main/java/com/innovativeintelli/authandautherization/MyDAO.java @@ -0,0 +1,29 @@ +public class MyDAO extends HibernateSessionManager { + +private static final String INSERT_DUMMY_TABLE_VALUES = + "INSERT INTO DUMMY_TABLE " + + "(COLUMN_1, COLUMN_2, COLUMN_3, COLUMN_4, COLUMN_5, " + + "COLUMN_6, COLUMN_7, COLUMN_8, COLUMN_9, " + + "COLUMN_10, COLUMN_11, COLUMN_12, COLUMN_13, COLUMN_14, COLUMN_15, " + + "COLUMN_16, COLUMN_17, COLUMN_18, COLUMN_19, " + + "COLUMN_20) VALUES " + + "(TO_NUMBER(:param1), TO_DATE(:param2,'mm/dd/yyyy'), TO_NUMBER(:param3), TO_NUMBER(:param4), TO_NUMBER(:param5), " + + "TO_NUMBER(:param6), TO_NUMBER(:param7), TO_NUMBER(:param8), TO_NUMBER(:param9), " + + "TO_NUMBER(:param10), TO_NUMBER(:param11), TO_NUMBER(:param12), TO_NUMBER(:param13), TO_NUMBER(:param14), " + + ":param15, :param16, TO_NUMBER(:param17), TO_NUMBER(:param18), TO_NUMBER(:param19), " + + "TO_NUMBER(:param20))"; + + @SuppressWarnings({ "rawtypes" }) +public static void insertDummyTableValues(DummyTableValues dummyTableValues) { + logger.info(" Inside insertDummyTableValues method "); + try { + LinkedHashMap param = setQueryParameters(dummyTableValues, true); + this.createNativeQueryCUD(INSERT_DUMMY_TABLE_VALUES, param); + this.flush(); + logger.info(" Exiting insertDummyTableValues method "); + } catch (Exception exception) { + logger.error("DummyTableValuesDAO.insertDummyTableValues(): ", exception); + throw new IISSystemException("DummyTableValuesDAO.insertDummyTableValues(): ", exception); + } +} +} diff --git a/authandautherization/src/main/java/com/innovativeintelli/authandautherization/coderabbbit/DemoFile.java b/authandautherization/src/main/java/com/innovativeintelli/authandautherization/coderabbbit/DemoFile.java new file mode 100644 index 0000000..1315580 --- /dev/null +++ b/authandautherization/src/main/java/com/innovativeintelli/authandautherization/coderabbbit/DemoFile.java @@ -0,0 +1,90 @@ +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.Statement; +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; + +public class CodeWithIssues { + private static final String DB_URL = "jdbc:mysql://localhost:3306/test"; + private static final String USER = "root"; + private static final String PASS = "password"; + private static List list = new ArrayList<>(); + + public static void main(String[] args) { + String str = null; + System.out.println(str.length()); + + while (true) { + list.add("Leaking memory..."); + } + + if (false) { + System.out.println("This will never be executed."); + } + + for (int i = 0; i < 10; i++) { + System.out.println("Iteration: " + i); + } + + int[] arr = {1, 2, 3}; + for (int i = 0; i <= arr.length; i++) { + System.out.println(arr[i]); + } + + if (true || str == null) { + System.out.println("This condition is always true."); + } + + return; + System.out.println("This code is unreachable."); + + String userInput = "admin' OR '1'='1"; + String query = "SELECT * FROM users WHERE username = '" + userInput + "'"; + executeQuery(query); + + ExecutorService executor = Executors.newFixedThreadPool(2); + Runnable task1 = () -> { list.add("Task 1"); }; + Runnable task2 = () -> { list.remove(0); }; + executor.submit(task1); + executor.submit(task2); + + final String resource1 = "Resource 1"; + final String resource2 = "Resource 2"; + Thread t1 = new Thread(() -> { + synchronized (resource1) { + try { Thread.sleep(100); } catch (InterruptedException e) {} + synchronized (resource2) { + System.out.println("Thread 1 locked both resources."); + } + } + }); + + Thread t2 = new Thread(() -> { + synchronized (resource2) { + try { Thread.sleep(100); } catch (InterruptedException e) {} + synchronized (resource1) { + System.out.println("Thread 2 locked both resources."); + } + } + }); + + t1.start(); + t2.start(); + } + + private static void executeQuery(String query) { + try { + Connection conn = DriverManager.getConnection(DB_URL, USER, PASS); + Statement stmt = conn.createStatement(); + ResultSet rs = stmt.executeQuery(query); + while (rs.next()) { + System.out.println(rs.getString(1)); + } + } catch (Exception e) { + e.printStackTrace(); + } + } +}