Java&react Rough
Java&react Rough
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Scanner;
class JDBCApp {
private static final String DB_URL = "jdbc:mysql://localhost:3306/ri_db";
private static final String DB_USER = "test";
private static final String DB_PASSWORD = "test123";
public static void createUser(Connection connection, String name, Double salary,
String country) throws
SQLException {
String sql = "INSERT INTO users (name, salary, country) VALUES (?, ?, ?)";
try (PreparedStatement statement = connection.prepareStatement(sql)) {
statement.setString(1, name);
statement.setDouble(2, salary);
statement.setString(3, country);
int rowsInserted = statement.executeUpdate();
if (rowsInserted > 0) {
} catch (SQLException e) {
System.out.println("Error in main: " + e.getMessage());
e.printStackTrace();
}
}
}
Servlet
<body>
<h2>Login Form</h2>
<form action="login" method="post">
Name: <input type="text" name="name"><br>
Password: <input type="password" name="password"><br>
<input type="submit" value="Submit">
</form>
</body>
</html>
2. Create the Servlet (LoginServlet.java):
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/login")
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws
ServletException, IOException {
// Retrieve parameters from the request
String name = request.getParameter("name");
String password = request.getParameter("password");
// Check credentials
if (VALID_NAME.equals(name) && VALID_PASSWORD.equals(password)) {
response.getWriter().println("Welcome");
} else {
response.getWriter().println("Please check the username or password");
}
}
}
3. Configure the Servlet (web.xml):
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
</web-app>
app
// src/App.js
import React, { Component } from 'react';
import TaskForm from './components/TaskForm';
import TaskList from './components/TaskList';
import './App.css';
render() {
return (
<div className="App">
<h1>Task Tracker</h1>
<TaskForm addTask={this.addTask} />
<TaskList
tasks={this.state.tasks}
deleteTask={this.deleteTask}
toggleTaskCompletion={this.toggleTaskCompletion}
/>
</div>
);
}
}
TL
// src/components/TaskList.jsx
import React from 'react';
import TaskItem from './TaskItem';
import './TaskList.css';
TI
// src/components/TaskItem.jsx
import React from 'react';
import './TaskItem.css';