Code:
import java.io.*;
import java.net.*;
class Server {
public static void main(String[] args) { try
{
ServerSocket serverSocket = new ServerSocket(5000);
System.out.println("Server is listening on port 5000...");
Socket socket = serverSocket.accept(); System.out.println("Client
connected.");
BufferedReader in = new BufferedReader(new
InputStreamReader(socket.getInputStream()));
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
String clientMessage = in.readLine(); System.out.println("Client
says: " + clientMessage);
out.println("Hello from Server! You said: " + clientMessage);
socket.close();
serverSocket.close();
} catch (IOException e) { e.printStackTrace();
}
}
}
class Client {
public static void main(String[] args) { try
{
Socket socket = new Socket("localhost", 5000);
System.out.println("Connected to the server.");
BufferedReader in = new BufferedReader(new
InputStreamReader(socket.getInputStream()));
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
String message = "Hello Server!";
out.println(message);
String serverResponse = in.readLine();
System.out.println("Server says: " + serverResponse);
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Output:
John
John
Code:
import java.applet.*;
import java.awt.*;
public class MyApplet extends Applet {
public void init() {
System.out.println("Applet Initialized");
}
public void start() {
System.out.println("Applet Started");
}
public void paint(Graphics g) {
g.drawString("Hello, this is a Java Applet!", 50, 50);
}
public void stop() {
System.out.println("Applet Stopped");
}
public void destroy() {
System.out.println("Applet Destroyed");
}
}
Output:
Code:
// Example demonstrating multithreading in Java
class MyThread extends Thread {
private String threadName;
MyThread(String name) {
threadName = name;
}
public void run() {
for (int i = 1; i <= 5; i++) {
System.out.println(threadName + " is running: " + i);
try {
Thread.sleep(500); // Simulating time-consuming task
} catch (InterruptedException e) {
System.out.println(threadName + " interrupted.");
}
}
System.out.println(threadName + " has finished execution.");
}
}
public class MultithreadingDemo {
public static void main(String[] args) {
MyThread t1 = new MyThread("Thread 1");
MyThread t2 = new MyThread("Thread 2");
MyThread t3 = new MyThread("Thread 3");
t1.start();
t2.start();
t3.start();
}
}
Output:
Code:
import java.applet.Applet;
import java.awt.*;
import java.util.Calendar;
public class ClockApplet extends Applet {
public void paint(Graphics g) {
int hours = 18;
int minutes = 10;
int seconds = 6;
g.setColor(Color.BLACK);
g.drawOval(50, 50, 200, 200);
g.setFont(new Font("Arial", Font.BOLD, 16));
g.drawString("12", 140, 70);
g.drawString("3", 240, 155);
g.drawString("6", 145, 240);
g.drawString("9", 55, 155);
int centerX = 150, centerY = 150, radius = 80;
double hourAngle = Math.toRadians((hours % 12) * 30 + minutes * 0.5 - 90);
double minuteAngle = Math.toRadians(minutes * 6 - 90);
double secondAngle = Math.toRadians(seconds * 6 - 90);
int hourX = centerX + (int) (radius * 0.5 * Math.cos(hourAngle));
int hourY = centerY + (int) (radius * 0.5 * Math.sin(hourAngle));
g.setColor(Color.BLUE);
g.drawLine(centerX, centerY, hourX, hourY);
int minX = centerX + (int) (radius * 0.7 * Math.cos(minuteAngle));
int minY = centerY + (int) (radius * 0.7 * Math.sin(minuteAngle));
g.setColor(Color.GREEN);
g.drawLine(centerX, centerY, minX, minY);
int secX = centerX + (int) (radius * 0.9 * Math.cos(secondAngle));
int secY = centerY + (int) (radius * 0.9 * Math.sin(secondAngle));
g.setColor(Color.RED);
g.drawLine(centerX, centerY, secX, secY);
}
}
Output:
Code:
1:) Create a file named EmployeeBean.java
import java.io.Serializable;
public class EmployeeBean implements Serializable {
private static final long serialVersionUID = 1L;
private String name;
private int age;
private double salary;
public EmployeeBean() {}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
}
2:) Create a file named JavaBeanDemo.java
public class JavaBeanDemo {
public static void main(String[] args) {
EmployeeBean emp = new EmployeeBean();
emp.setName("John Doe");
emp.setAge(21);
emp.setSalary(100000);
System.out.println("Employee Details:");
System.out.println("Name: " + emp.getName());
System.out.println("Age: " + emp.getAge());
System.out.println("Salary: $" + emp.getSalary());
}
}
Output:
John Doe
20
Code:
SQL QUERY:
CREATE
TABLE users( id int NOT NULL AUTO_INCREMENT,
first_name varchar(50),
last_name varchar(50),
city_name varchar(50), email
varchar(50), PRIMARY
KEY(id)
);
Index.html:
< !DOCTYPE html >
<html>
<body>
<form method="post" action="process.jsp">
First name: <input type="text" name="first_name">
<br><br>
Last name: <input type="text" name="last_name">
<br><br>
City name: <input type="text" name="city_name">
<br><br>
Email Id: <input type="email" name="email">
<br><br>
<input type="submit" value="submit">
</form>
</body>
</html> process.jsp:
<%@ page language="java" contentType="text/html"; charset=ISO-8859-1"
pageEncoding="ISO8859-1"%>
<%@page import="java.sql.*,java.util.*"%>
<%
String first_name=request.getParameter("first_name "); String
last_name=request.getParameter("last_name"
); String city_name=request.getParameter("city_name"
); String email=request.getParameter("email"); try {
Class.forName("com.mysql.jdbc.Driver");
DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "");
Statement st=conn.createStatement();
int i=st.executeUpdate("insert into
users(first_name,last_name,city_name,email)values('"+first_name+"','"+last_name+"'
,'"+city_name+"','"
+ema il+"')");
out.println("Data is successfully inserted!");
}
Output:
John
Doe
[email protected]
Code:
Form to accept username and password: login.jsp
<% @page contentType = "text/html" pageEncoding = "UTF-8" %>
< !DOCTYPE html >
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Login Page</title>
</head>
<body>
<h1>User Details</h1>
<form method="get" action="acceptuser.jsp">
Enter Username : <input type="text" name="user"><br /><br /> Enter
Password : <input type="password" name="pass"><br />
<input type="submit" value="SUBMIT">
</html>
JSP to accept form data and verify a user: acceptuser.jsp
<% @page contentType = "text/html" pageEncoding = "UTF-8" %>
< !DOCTYPE html >
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Accept User Page</title>
</head>
<body>
<h1>Verifying Details</h1>
<jsp:useBean id="snr" class="John.ValidateUser" />
<p>Username : <jsp:getProperty name="snr" property="user" /></p>
<p>Password : <jsp:getProperty name="snr" property="pass" /></p>
<%if(snr.validate(“John, Doe", “John6969")){%> Welcome!
You are a VALID USER<br />
<%}else{%>
Error! You are an INVALID USER<br />
<%}%>
</body>
</html>
The validateUser.java class
package John;
import java.io.Serializable;
public class ValidateUser implements Serializable { private String
user, pass;
public void setUser(String u1) { this.user = u1; } public void
setPass(String p1) { this.pass = p1; } public String getUser()
{ return user; }
public String getPass() { return pass; }
public boolean validate(String u1, String p1) { if
(u1.equals(user) && p1.equals(pass)) return true;
else
return false;
}
}
Output:
John Doe
John6969
John Doe
John6969
Code:
login.jsp:
<% @page language = "java" contentType = "text/html" pageEncoding = "UTF-8" %>
< !DOCTYPE html >
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>BackEnd</title>
</head>
<body>
<h1>User Details</h1>
<form action="/loginServlet" method="post"
onclick="ValidateEmail(document.getElementById('emailId'))">
<div class="container">
<label for="username"><b>Email</b></label>
<input type="text" placeholder="Please enter your email" name="emailId" id="emailId"
required />
<br /><br />
<label for="password"><b>Password</b></label>
<input type="password" placeholder="Please enter Password"
name="password" id="password"
required />
<br /><br />
<button type="submit">Login</button>
</div>
</form>
<script type="text/javascript"> function
ValidateEmail(emailId) {
var mailformat = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2, 3})+$/; if
(emailId.value.match(mailformat)) {
document.getElementById("password").focus();
return true;
} else {
alert("You have entered an invalid email address!");
document.getElementById("emailId").focus();
return false;
}
}
</script>
</body>
</html>
LoginServer.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; import
javax.servlet.http.HttpSession;
@WebServlet("/loginServlet")
public class LoginServlet extends HttpServlet { private
static final long serialVersionUID = 1L; public
LoginServlet() {
super();
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
String emailId = request.getParameter("emailId"); String password
= request.getParameter("password"); System.out.println("emailId.."
+ emailId); System.out.println("password.." + password);
if (emailId != null && emailId.equalsIgnoreCase("[email protected]") && password !=
null && password.equalsIgnoreCase("Kxx6969")) { HttpSession
httpSession = request.getSession();
httpSession.setAttribute("emailId", emailId);
request.getRequestDispatcher("welcome.jsp").forward(request, response);
}
}
}
welcome.jsp:
<% @page language = "java" contentType = "text/html; charset=ISO-8859-1" pageEncoding =
"ISO-8859-1" %>
<html>
<head>
</head>
<body>
Welcome <%=session.getAttribute("emailId") %>
</body>
</html>
Output:
Login view
Client-side validation output:
[email protected]
[email protected]
[email protected]
Code:
import java.io.IOException;
import jakarta.servlet.ServletException; import jakarta.servlet.annotation.WebServlet; import
jakarta.servlet.http.*; @WebServlet("/setCookie")
public class SetCookieServlet extends HttpServlet { @Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException,
IOException {
String cookieName = "userPref"; String
cookieValue = "darkMode"; int maxAge = 60 *
60 * 24;
Cookie cookie = new Cookie(cookieName, cookieValue);
cookie.setMaxAge(maxAge); response.addCookie(cookie);
response.setContentType("text/plain");
response.getWriter().println("Cookie set successfully!");
}
Output:
Code:
UserServlet.java
import java.io.*; import
javax.servlet.*;
import javax.servlet.http.*; import
java.sql.*;
public class UserServlet extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
String action = request.getParameter("action");
if ("register".equals(action)) { register(request,
response);
} else if ("login".equals(action)) { login(request,
response);
private void register(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
String username = request.getParameter("username"); String password
= request.getParameter("password");
try {
Class.forName("com.mysql.jdbc.Driver");
DriverManager.getConnection("jdbc:mysql://localhost:3306/userdb",
"username", "password");
PreparedStatement pst = con.prepareStatement("INSERT INTO users (username,
password) VALUES (?, ?)");
pst.setString(1,username);
pst.setString(2,password);
pst.executeUpdate();
con.close(); response.sendRedirect("registration_success.jsp");
} catch (Exception e) { e.printStackTrace();
}
}
private void login(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
String username = request.getParameter("username"); String password
= request.getParameter("password");
try {
Class.forName("com.mysql.jdbc.Driver");
Connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/userdb",
"username", "password");
PreparedStatement pst = con.prepareStatement("SELECT * FROM users WHERE
username=? AND password=?");
pst.setString(1, username); pst.setString(2,
password); ResultSet rs = pst.executeQuery();
if (rs.next()) {
HttpSessionsession=request.getSession();
session.setAttribute("username",username);
response.sendRedirect("welcome.jsp");
} else {
response.sendRedirect("login.jsp?error=true");
con.close();
} catch (Exception e) { e.printStackTrace();
}
}
registration.jsp
<html>
<head><title>User Registration</title></head>
<body>
<h2>User Registration</h2>
<form action="UserServlet" method="post">
Username: <input type="text" name="username" required><br> Password: <input
type="password" name="password" required><br>
<input type="hidden" name="action" value="register">
<input type="submit" value="Register">
</form>
</body>
</html>
Login.jsp
<html>
<head><title>User Login</title></head>
<body>
<h2>User Login</h2>
<form action="UserServlet" method="post">
Username: <input type="text" name="username" required><br> Password: <input
type="password" name="password" required><br>
<input type="hidden" name="action" value="login">
<input type="submit" value="Login">
<% if ("true".equals(request.getParameter("error"))) { %>
<p style="color:red;">Invalid username or password</p>
<% } %>
</form>
</body>
</html>
registration_success.jsp
<html>
<head><title>Registration Success</title></head>
<body>
<h2>Registration Successful</h2>
<p>You have successfully registered.</p>
<a href="login.jsp">Login</a>
</body>
</html>
welcome.jsp
<html>
<head><title>Welcome</title></head>
<body>
<h2>Welcome, <%= session.getAttribute("username") %>!</h2>
<p>You are now logged in.</p>
</body>
</html>
Output:
CODE:
UDPServer.java
import java.net.*;
public class UDPServer {
public static void main(String[] args) {
try {
DatagramSocket serverSocket = new DatagramSocket(9876);
byte[] receiveData = new byte[1024];
byte[] sendData;
System.out.println("Server is running...");
while (true) {
DatagramPacket receivePacket = new DatagramPacket(receiveData,
receiveData.length);
serverSocket.receive(receivePacket);
String clientMessage = new String(receivePacket.getData(), 0,
receivePacket.getLength());
System.out.println("Received from client: " + clientMessage);
InetAddress clientIP = receivePacket.getAddress();
int clientPort = receivePacket.getPort();
String reply = "Echo: " + clientMessage;
sendData = reply.getBytes();
DatagramPacket sendPacket = new DatagramPacket(sendData,
sendData.length, clientIP,
clientPort);
serverSocket.send(sendPacket);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
UDPClient.java
import java.net.*;
import java.util.Scanner;
public class UDPClient {
public static void main(String[] args) {
try {
DatagramSocket clientSocket = new DatagramSocket();
InetAddress serverIP = InetAddress.getByName("localhost");
Scanner sc = new Scanner(System.in);
System.out.print("Enter message: ");
String message = sc.nextLine();
byte[] sendData = message.getBytes();
DatagramPacket sendPacket = new DatagramPacket(sendData,
sendData.length, serverIP,
9876);
clientSocket.send(sendPacket);
byte[] receiveData = new byte[1024];
DatagramPacket receivePacket = new DatagramPacket(receiveData,
receiveData.length);
clientSocket.receive(receivePacket);
String serverReply = new String(receivePacket.getData(), 0,
receivePacket.getLength());
System.out.println("Server says: " + serverReply);
clientSocket.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
OUTPUT:
CODE:
TCPServer
import java.io.*;
import java.net.*;
public class TCPServer {
public static void main(String[] args) {
try {
ServerSocket serverSocket = new ServerSocket(8888);
System.out.println("Server is running... Waiting for client connection...");
Socket clientSocket = serverSocket.accept();
System.out.println("Client connected!");
BufferedReader in = new BufferedReader(
new InputStreamReader(clientSocket.getInputStream())
);
PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);
String receivedMessage = in.readLine();
System.out.println("Received from client: " + receivedMessage);
String reply = "Echo: " + receivedMessage;
out.println(reply);
in.close();
out.close();
clientSocket.close();
serverSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
TCPClient
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class TCPClient {
public static void main(String[] args) {
try {
Socket socket = new Socket("localhost", 8888);
BufferedReader in = new BufferedReader(
new InputStreamReader(socket.getInputStream())
);
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
Scanner scanner = new Scanner(System.in);
System.out.print("Enter message to send: ");
String message = scanner.nextLine();
out.println(message);
String serverReply = in.readLine();
System.out.println("Server replied: " + serverReply);
in.close();
out.close();
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
OUTPUT:
CODE:
import java.applet.Applet;
import java.awt.Button;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.Panel;
public class ListenerApplet extends Applet implements ActionListener,
MouseListener {
private String message = "Click, hover";
private Color shapeColor = Color.WHITE;
public void init() {
Panel cp = new Panel();
Button btn = new Button("Change Color");
Font buttonFont = new Font("Arial", Font.BOLD, 18);
btn.setFont(buttonFont);
btn.setBackground(new Color(50, 100, 150));
btn.setForeground(Color.WHITE);
btn.addActionListener(this);
cp.add(btn);
addMouseListener(this);
add(cp);
}
public void actionPerformed(ActionEvent e) {
shapeColor = shapeColorFn();
repaint();
}
public void mouseClicked(MouseEvent e) {
message = "Mouse Clicked at (" + e.getX() + ", " + e.getY() + ")";
repaint();
}
public void mouseEntered(MouseEvent e) {
message = "Mouse Entered!";
repaint();
}
public void mouseExited(MouseEvent e) {
message = "Mouse Exited!";
repaint();
}
public void mousePressed(MouseEvent e) {
}
public void mouseReleased(MouseEvent e) {
}
public void paint(Graphics g) {
int centerX = getWidth() / 2;
int centerY = getHeight() / 2;
g.setColor(shapeColor);
g.fillRoundRect(centerX - 100, centerY - 50, 200, 100, 20, 20);
g.setFont(new Font("Arial", Font.PLAIN, 18));
g.setColor(Color.BLACK);
g.drawString(message, 10, 40);
}
private Color shapeColorFn() {
int red = (int) (Math.random() * 256);
int green = (int) (Math.random() * 256);
int blue = (int) (Math.random() * 256);
return new Color(red, green, blue);
}
}
OUTPUT:
CODE:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
public class RequestHeaderServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html><body style='font-family:monospace;'>");
out.println("<h2>Request Headers</h2>");
out.println("<table border='1' cellpadding='5'>");
out.println("<tr><th>Header Name</th><th>Header Value</th></tr>");
Enumeration<String> headerNames = request.getHeaderNames();
while (headerNames.hasMoreElements()) {
String headerName = headerNames.nextElement();
String headerValue = request.getHeader(headerName);
out.println("<tr><td>" + headerName + "</td><td>" + headerValue +
"</td></tr>");
}
out.println("</table>");
out.println("</body></html>");
}
}
OUTPUT: