Java MySQL 연동문제좀 해결해주세요ㅠ_ㅠ내공있쩌용
-
게시물 수정 , 삭제는 로그인 필요
빨간색으로표시된부분이 문제인거같은데 도저히 안되네요ㅠ_ㅠ
1번과 2번이있는데 답변가능하시면 답변좀 해주세요~ 내공겁니다!!
//DB연결 및 저장 테이블에 내욜 표시 클래스
import java.awt.Label;
import java.sql.*;
import javax.swing.*;
public class DBconn {
private Video_Manage vManage;
private String[] vid_code, vid_name, vid_gen, vid_cou; //배열을 만들고
private int size=0 ;
private int len=0;
DBconn(int index, Object ob){
if(index == 1){
vManage = (Video_Manage)ob;
}
}
public int countVideoList(){
int count1 = 0;
Connection conn = null; //db connection 객체
String url = "jdbc:mysql://localhost:3306/Video_db"; //sql 접속
String id = "root"; //아이디
String pass = "1234"; //비밀번호
String query = "select *from video_tb order by vid_num asc";
=====1. video_tb에 있는 vide_num을 내림차순으로 뽑는걸로 알고있는데 정확히 제가 알고 있는게 맞나요?
PreparedStatement pstmt = null; //sql문을 preparedstatement에서 수행
Statement stmt = null; //
ResultSet rs = null; //db 수행결과
try{
Class.forName("com.mysql.jdbc.Driver"); //sql드라이버 로딩
conn = DriverManager.getConnection(url, id, pass); //db에 연결하고 객체 반환
System.out.println("드라이버 검색 및 연결 성공!"); //연결되면 화면에 출력
}
catch(ClassNotFoundException e){ //못찾으면 출력
System.err.println("드라이버 검색 실패!");
}
catch(SQLException ee){ //연결이 안되면 출력~
System.err.println("연결 실패!");
}
try{
stmt = conn.createStatement();
rs = stmt.executeQuery(query);
while(rs.next()){
count1++;
}
rs.close();
vid_code = new String[count1];
vid_name = new String[count1];
vid_gen = new String[count1];
vid_cou = new String[count1];
query = "select * from video_tb order by vid_num asc";
rs = stmt.executeQuery(query);
int cnum=0;
while(rs.next()){ //인덱스 번호를 통해 데이터 뽑아오기
vid_code[cnum] = rs.getString(1);
vid_name[cnum] = rs.getString(2);
vid_gen[cnum] = rs.getString(3);
vid_cou[cnum] = rs.getString(4);
cnum++;
}
rs.close();
stmt.close();
conn.close();
System.out.println("성공");
}
catch(SQLException e){
System.err.println("실패");
} ========2. 여기서 성공이 안나오고 실패가 나오네요 뭐가 문제일까요?ㅠㅠ
return count1;
}
public void initVideoList(){
int len = countVideoList();
vManage.data = new String[len][5];
for(int i=0;i<len;i++){
vManage.data[i][0] = vid_code[i];
vManage.data[i][1] = vid_name[i];
vManage.data[i][2] = vid_gen[i];
vManage.data[i][3] = vid_cou[i];
}
vManage.video_dtm = new MyDefaultTableModel(vManage.data, vManage.title);
vManage.video_table.setModel(vManage.video_dtm);
vManage.video_table.setShowGrid(true);
vManage.video_table.getColumnModel().getColumn(0).setPreferredWidth(6);
vManage.video_table.getColumnModel().getColumn(1).setPreferredWidth(10);
vManage.video_table.getColumnModel().getColumn(2).setPreferredWidth(30);
vManage.video_table.getColumnModel().getColumn(3).setPreferredWidth(50);
System.out.println("비디오 리스트 추가");
}
public void InsertVideo(String vid_code2, String vid_name2, String vid_gen2, String vid_cou2){
Connection conn = null;
String url = "jdbc:mysql://localhost:3306/Video_db";
String id = "root";
String pass = "1234";
String query = "insert into videoinfo values (?, ?, ?, ?)";
PreparedStatement pstmt = null;
Statement stmt = null;
ResultSet rs = null;
try{
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(url, id, pass);
System.out.println("드라이버 검색 및 연결 성공!!");
}
catch(ClassNotFoundException e){
System.err.println("드라이버 검색 실패!!");
}
catch(SQLException ee){
System.err.println("연결 실패!!");
}
try{
pstmt = conn.prepareStatement(query);
pstmt.setString(1, vid_code2);
pstmt.setString(2, vid_name2);
pstmt.setString(3, vid_gen2);
pstmt.setString(4, vid_cou2);
pstmt.executeUpdate();
System.out.println("입력성공");
pstmt.close();
conn.close();
}
catch(SQLException ee){}
}
}
빨간색으로표시된부분이 문제인거같은데 도저히 안되네요ㅠ_ㅠ
1번과 2번이있는데 답변가능하시면 답변좀 해주세요~ 내공겁니다!!
//DB연결 및 저장 테이블에 내욜 표시 클래스
import java.awt.Label;
import java.sql.*;
import javax.swing.*;
public class DBconn {
private Video_Manage vManage;
private String[] vid_code, vid_name, vid_gen, vid_cou; //배열을 만들고
private int size=0 ;
private int len=0;
DBconn(int index, Object ob){
if(index == 1){
vManage = (Video_Manage)ob;
}
}
public int countVideoList(){
int count1 = 0;
Connection conn = null; //db connection 객체
String url = "jdbc:mysql://localhost:3306/Video_db"; //sql 접속
String id = "root"; //아이디
String pass = "1234"; //비밀번호
String query = "select *from video_tb order by vid_num asc";
=====1. video_tb에 있는 vide_num을 내림차순으로 뽑는걸로 알고있는데 정확히 제가 알고 있는게 맞나요?
PreparedStatement pstmt = null; //sql문을 preparedstatement에서 수행
Statement stmt = null; //
ResultSet rs = null; //db 수행결과
try{
Class.forName("com.mysql.jdbc.Driver"); //sql드라이버 로딩
conn = DriverManager.getConnection(url, id, pass); //db에 연결하고 객체 반환
System.out.println("드라이버 검색 및 연결 성공!"); //연결되면 화면에 출력
}
catch(ClassNotFoundException e){ //못찾으면 출력
System.err.println("드라이버 검색 실패!");
}
catch(SQLException ee){ //연결이 안되면 출력~
System.err.println("연결 실패!");
}
try{
stmt = conn.createStatement();
rs = stmt.executeQuery(query);
while(rs.next()){
count1++;
}
rs.close();
vid_code = new String[count1];
vid_name = new String[count1];
vid_gen = new String[count1];
vid_cou = new String[count1];
query = "select * from video_tb order by vid_num asc";
rs = stmt.executeQuery(query);
int cnum=0;
while(rs.next()){ //인덱스 번호를 통해 데이터 뽑아오기
vid_code[cnum] = rs.getString(1);
vid_name[cnum] = rs.getString(2);
vid_gen[cnum] = rs.getString(3);
vid_cou[cnum] = rs.getString(4);
cnum++;
}
rs.close();
stmt.close();
conn.close();
System.out.println("성공");
}
catch(SQLException e){
System.err.println("실패");
} ========2. 여기서 성공이 안나오고 실패가 나오네요 뭐가 문제일까요?ㅠㅠ
return count1;
}
public void initVideoList(){
int len = countVideoList();
vManage.data = new String[len][5];
for(int i=0;i<len;i++){
vManage.data[i][0] = vid_code[i];
vManage.data[i][1] = vid_name[i];
vManage.data[i][2] = vid_gen[i];
vManage.data[i][3] = vid_cou[i];
}
vManage.video_dtm = new MyDefaultTableModel(vManage.data, vManage.title);
vManage.video_table.setModel(vManage.video_dtm);
vManage.video_table.setShowGrid(true);
vManage.video_table.getColumnModel().getColumn(0).setPreferredWidth(6);
vManage.video_table.getColumnModel().getColumn(1).setPreferredWidth(10);
vManage.video_table.getColumnModel().getColumn(2).setPreferredWidth(30);
vManage.video_table.getColumnModel().getColumn(3).setPreferredWidth(50);
System.out.println("비디오 리스트 추가");
}
public void InsertVideo(String vid_code2, String vid_name2, String vid_gen2, String vid_cou2){
Connection conn = null;
String url = "jdbc:mysql://localhost:3306/Video_db";
String id = "root";
String pass = "1234";
String query = "insert into videoinfo values (?, ?, ?, ?)";
PreparedStatement pstmt = null;
Statement stmt = null;
ResultSet rs = null;
try{
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(url, id, pass);
System.out.println("드라이버 검색 및 연결 성공!!");
}
catch(ClassNotFoundException e){
System.err.println("드라이버 검색 실패!!");
}
catch(SQLException ee){
System.err.println("연결 실패!!");
}
try{
pstmt = conn.prepareStatement(query);
pstmt.setString(1, vid_code2);
pstmt.setString(2, vid_name2);
pstmt.setString(3, vid_gen2);
pstmt.setString(4, vid_cou2);
pstmt.executeUpdate();
System.out.println("입력성공");
pstmt.close();
conn.close();
}
catch(SQLException ee){}
}
}
#java mysql jdbc 연결 #java mysql #java mysql 연결 #java mysql connector #java mysql 연동 #java mysql driver #java mysql insert #java mysql 프로시저 호출 #java mysql 이미지 저장 #java mysql datetime