go to gcp
select sql service
give instance name
and password
public ip address of the cloud sql instance
we have to use this in mysql jdbc url instead of localhost:port
ex: jdbc:mysql://{public ip}/new
create new schema
get the ip of your cloudshell
same as you added cloudshell ip add your local machine ip
create spring boot project
application.properties
spring.datasource.url=jdbc:mysql://{sql instance ip}/new
spring.datasource.username=root
spring.datasource.password=root
spring.jpa.hibernate.ddl-auto=update
Employee
package com.example.demo.entity;
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Entity
@Table(name = "emptab")
public class Employee {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String name;
public Employee(String name) {
super();
this.name = name;
}
}
EmployeeRepository
package com.example.demo.repo;
import org.springframework.data.jpa.repository.JpaRepository;
import com.example.demo.entity.Employee;
public interface EmployeeRepository extends JpaRepository<Employee, Integer>{
}
TestRunner
package com.example.demo.runner;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component;
import com.example.demo.entity.Employee;
import com.example.demo.repo.EmployeeRepository;
@Component
public class TestRunner implements CommandLineRunner{
@Autowired
private EmployeeRepository erepo;
@Override
public void run(String... args) throws Exception {
//create the emp object
Employee emp = new Employee("sam");
//save the object
erepo.save(emp);
}
}
on cloudshell
























Top comments (0)