본문 바로가기

개발자노트

(260)
[SQL] (Oracle) JDBC에서 selectAll final String sql_selectAll="SELECT * FROM STUDENT WHERE NAME LIKE '%'||?||'%' ORDER BY SID ASC"; // LIKE 구문을 JDBC에서 쓰려면 '%'|| ? || '%" 으로 써야함 , %도 각 각 글자로 취급하기 때문에..? public ArrayList selectAll(StudentVO vo){ // boolean타입이 아니니 반환할 정보를 만들어 놓는다 ArrayList datas=new ArrayList(); conn=JDBCUtil.connect(); try { pstmt=conn.prepareStatement(sql_selectAll); pstmt.setString(1, vo.getName()); // 객체정보에 이름정보..
[SQL] (Oracle) JDBC에서 selectOne final String sql_selectOne="SELECT * FROM STUDENT WHERE SID=?"; public StudentVO selectOne(StudentVO vo) { conn=JDBCUtil.connect(); ResultSet rs=null; try { pstmt=conn.prepareStatement(sql_selectOne); pstmt.setInt(1, vo.getSid()); // 입력값으로 들어온 Sid로 setInt한다. rs=pstmt.executeQuery(); if(rs.next()) { StudentVO data=new StudentVO(); data.setName(rs.getString("NAME")); // 이름 data.setScore(rs.getInt(..
[SQL] JDBC에서 delete final String sql_delete="DELETE FROM STUDENT WHERE SID=?"; public boolean deleteStudent(StudentVO vo) { conn=JDBCUtil.connect(); try { pstmt=conn.prepareStatement(sql_delete); pstmt.setInt(1, vo.getSid()); int res=pstmt.executeUpdate(); // 반환값이 int, 수행한 횟수를 나타냄 1명삭제 2명삭제..등등 if(res==0) { return false; } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); return fal..
[SQL] JDBC에서 중복코드를 최소화 해주는 [JDBCUtil] 우리가 일상에서 유용하게 사용되는 것들을 Utility 하다고 표현하듯이, JDBC을 사용할 때 유용하게 쓸 수 있는 기능들을 모아논 것들을[JDBCUtil]이라고 한다. 이 클래스를 왜 사용할까? 1) C R R U D 에서 계속 사용됨.. 2) DAO가 증가하면 또 CRUD도 증가됨 → ... → ctrl+c, ctrl+v 하는 일이 많아짐! → but Util을 사용하여 중복코드를 최소화 하기 위해 이것들을 모듈화! 하는 것이 Util클래스 // 우리가 JDBC에서 많이 사용 되는 것들을 모듈화 해줄 것이다. // static이 붙은 것은 객체를 만들어서 사용할 것이 아닌 객체와 무관하게 사용할 것이라 // static으로 시작하게 된다. // 또한 수정 될 일이 없으니 final 까지 사용 // ..
[SQL] JDBC에서 [PreparedStatement=pstmt] 를 이용한 정보맵핑 PreparedStatement - 쉽게 stmt 상위호환이다. - ?에 값을 넣을 수 있도록 함(매핑 느낌) 기본 사용 방법 Connection conn; // 커넥션 객체 생성 PreparedStatement pstmt; // pstmt 객체 생성 pstmt=conn.prepareStatement(sql) // 만들 적에 sql문이 들어간다! 그렇다면 stmt와의 차이점은 무엇인가? stmt -> 일단 만들고, 직접 쿼리문(SQL문)을 메서드의 인자로 전달 pstmt -> 만들당시에 쿼리문(SQL문)을 전달하고, 이후에 값을 메서드의 인자로 전달 CRUD 중 C에 해당되는 Insert에 적용해보기. 내가 가지고 있는 테이블은 atrribute로 SID INT PRIMARY KEY, -- PK NAME..
[SQL] 오라클의 정보를 자바에서 SellectAll/One 하기 package class06; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class Test03 { public static void main(String[] args) { final String driverName="oracle.jdbc.driver.OracleDriver"; final String url="jdbc:oracle:thin:@localhost:1521:xe"; final String user="kim"; final String passwd="1234"; final S..
[SQL] Java에 SQL(오라클) 연동하기(기본 코드) final String driverName="oracle.jdbc.driver.OracleDriver"; // DBMS에 해당하는 드라이버 파일지정 final String url="jdbc:oracle:thin:@localhost:1521:xe"; // SQL 서버 url final String user="kim"; // 사용자 이름 상수화 final String passwd="1234"; // 사용자 비밀번호 상수화 final String sql=""; // 원하는 테이블에 대한 sql 값 지정 Connection conn=null; // SQL에 connection 하기 위한 객체 생성 Statement stmt=null; // SQL에 작성하기 위한 객체 stmt try { Class.forName..
[SQL] Java에 SQL(오라클) 연동하기. 기본 연결 순서 ✅ DBMS 선정(오라클) ✅ JAVA와 연동 (JAVA PROJECT 우클릭 -> Propeties -> Java Build Path -> Libraries -> Modulepath -> jar파일 추가) [JDBC] 1. DBMS와 연동을 하기 위한 드라이버가 필요 1) DBMS에 해당하는 드라이버를 파일을 갖고있나? 2) 파일 데이터를 JAVA에 적재(load)했는가? 2. DB에 연결 3. 데이터를 write,read 1) connection 객체 -> conn 2) statement 객체 -> stmt stmt 객체가 확보되어야 JAVA에서 SQL문을 작성할수있게됨! 4. DB와의 연결을 해제 연결한 순서를 생각하며 해제 conn -> stmt 순으로 열었으니 닫을 땐 stmt ..