게시판 클릭하면 젤 먼저 보이는 화면 list ㄴ> list.jsp forward list 에 있는 글쓰기 버튼 클릭 == Write == ㄴ> doGet 으로 write.jsp (forward) ㄴ> write.jsp에서 작성하기 버튼 클릭하면 method = post로 보냄 : doPost에 그 각 변수들을 객체에 담기 그러고 DAO 에 작성된 글 insert == List == list 서블릿 - DAO 에서 컬렉션 프레임워크 List , ArrayList , LinkedList , Vector list.jsp 에 잇는 forEach 반복 돌면서 저장되겟지? list에서 게시글 하나 선택해서 들어가면 uid 값 들고 == View == view 들어가면 view 서블릿 doget 으로 forward..
메일보내기 썸네일 첨부파일 jstl DB 연결 getter/setter, toString(), 생성자 등 자동 생성(https://projectlombok.org) ㄴ> jar 실행시켜서 이클립스 버전 알맞는거 체크 후 설치 (이클립스 폴더에 설치됨) ㄴ> lib 폴더에 추가하기
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcPYGqY%2Fbtr1JtUjfpP%2FhWZdncygyb6TuUnmaMgX3K%2Fimg.png)
[메일] 1. jar 파일 다운 https://mvnrepository.com/ 2. google 설정 > 보안 > 앱비밀번호 생성 3. mail.jsp 받는 사람 메일 제목 내용 메일 보내기 4. Mailsend.java package mail; import java.io.IOException; import java.io.PrintWriter; import java.util.Date; import java.util.Properties; import javax.mail.Address; import javax.mail.Authenticator; import javax.mail.Message; import javax.mail.Session; import javax.mail.Transport; import j..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmK3JA%2Fbtr1Js8R2Bi%2FCKRPjmMbkK20bqLkQKU1DK%2Fimg.png)
1. table 만들기 mysql> CREATE TABLE girlgroup ( id VARCHAR(20) NOT NULL PRIMARY KEY, name VARCHAR(20), attach VARCHAR(20), signdate VARCHAR(10) ); mysql> CREATE TABLE song ( id VARCHAR(20) NOT NULL PRIMARY KEY, title VARCHAR(20) ); 2. 내용 insert INSERT INTO girlgroup VALUES ('11', '블랙핑크','YG','2016-08-08'); INSERT INTO girlgroup VALUES ('22', '트와이스','JYP','2015-10-20'); INSERT INTO girlgroup VALUES ..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkBZAk%2Fbtr1EdRpkdS%2F76FkKhDrTfB83f4NRujOOK%2Fimg.png)
1. DB table 만들기(상품등록) CREATE TABLE item ( it_uid int NOT NULL AUTO_INCREMENT, category1 varchar(10) DEFAULT NULL, category2 varchar(10) DEFAULT NULL, mbup_id varchar(20) DEFAULT NULL, // 중간업체 id it_name varchar(20) DEFAULT NULL, // 업체명 it_price1 int DEFAULT NULL, // default 가격 it_price2 int DEFAULT NULL, // 할인가격 it_point int DEFAULT NULL, it_qty int DEFAULT NULL, it_option varchar(255) DEFAULT N..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb5qpnc%2Fbtr1nC59axI%2F5e0l3cbF16kCKSikaTsLU1%2Fimg.png)
상품판매할 때 총개수 - 판매수량 처리할 때 사용 ca_use : 사용자에게 보여줄지 말지 delete --> 무조건 update 처리 1. DB table 만들기 CREATE TABLE category ( ca_id varchar(10) NOT NULL, ca_name varchar(255) NOT NULL, ca_use enum('Y','N') default 'Y', PRIMARY KEY (ca_id) ) ; 2. model > Category --> getter, setter, toString 하기 package model; public class Category { // 변수명은 칼럼명과 일치시키기! (보안 높이기위해 접근제어자 private 사용) private String ca_id; priv..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FquUff%2Fbtr1udraLKs%2FtDqRu0SRbByO3GCzD1A6j0%2Fimg.png)
[회원가입2] MemberJoin2.java 1. @WebServlet("/member/join2") public class MemberJoin2 extends HttpServlet { private static final long serialVersionUID = 1L; public MemberJoin2() { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //넘겨야할 변수가 있다면 request.setAttribute 이용 RequestDispatcher dis = request.getRequestDispatcher("..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7hlV2%2Fbtr1dli52a0%2FK3HkMzUqjEE3zlHD8EJK21%2Fimg.png)
JQuery ㄴ> java script 확장판임( 안에서 작성해야함) 1. 연결방법 1) Download 방식 https://jquery.com/download/ - 접속 Download the compressed, production jQuery 3.5.1 - 최신버전을 다운로드 웹서버에 저장후 사용 2) CDN 방식 https://code.jquery.com/ - 접속 jQuery Core 3.5.1 - uncompressed, minified, slim, slim minified - 클릭 웹페이지 상단에 적용후 사용 3) jQuery Migrate Plugin 방식 --> 이전, 이후 버전에도 문제 없이 사용하기 위해 웹페이지 상단에 적용후 사용 test01.jsp 클릭 test02..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FI1eGy%2Fbtr1JafypiA%2FIYcRKAMaJRUb2yxSERGtE0%2Fimg.png)
첨부파일 1. MemberJoin.java --> c드라이브에 upload 폴더 만들기 + 이클립스에도 upload 폴더 만들기 3. //첨부관련 String imagePath = "C:\\jsp\\web2\\WebContent\\upload"; int size = 1*1024*1024 ; String filename=""; // 파일 첨부 시스템적으로 이름 리네임 처리 MultipartRequest multi = new MultipartRequest(request,imagePath,size,"utf-8",new DefaultFileRenamePolicy()); Enumeration files=multi.getFileNames(); String file = (String)files.nextElement(..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrCBxp%2Fbtr1Hhe85Kb%2FKIV0jrmMeyfqIFkCtV7LN0%2Fimg.png)
* 해당 메소드 ctrl + 좌클릭 하면 그 메소드 있는 곳으로 자동 이동됨(servlet 에서 했다면 DAO 로 넘어감) 총 게시물 수 1. MemberList.java 1. int count = dao.getAllCount(); // 총 게시물 수 3. request.setAttribute("count", count); // (내가 지정한 변수명, 변수) count라는 변수에 count 값을 담겠다 2. MemberDAO.java 2. // 총 게시물 수 public int getAllCount() { d.getCon(); //DB 연결 int num=0; // 전역변수 선언 try { String sql = "select count(*) from member4"; pstmt = d.con.prepa..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FFJevo%2Fbtr0IGIpVU8%2FyzpAdWcUn0AcM0KshDbhD0%2Fimg.png)
!!총정리!! DAO (model) : dbconnection 과 동일한 역할 --> connection con 선언 MemberDAO : insert, update, delete, select 등등 해당 --> stmt, pstmt, rs 선언 --> DAO 와 연결 --> public 메소드 선언 1) d.getCon() 으로 DB 문 열기 2) 연결 등등 하기 3) try catch 구문 : try에 String sql =" " ; pstmt, rs 등등, while문이나 if문 : catch(예외처리)에 e.printStackTrace(); 예외처리 구문 적기 --> 리턴값 없음 // e: 참조변수 4) return 처리(void 경우 제외 **) * 예외 발생 시 : try -> catch ->..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbwpELD%2Fbtr0GKhBQmB%2FGZZ7dG2o6R327aMKT3kyz0%2Fimg.png)
[ EL ] el_test1.jsp 이름 : el_test2.jsp name : name : ${param.name} name : ${param['name']} name : ${requestScope.name} id : id : ${requestScope.id} id : ${pageScope.id} ${5+7} \${5+7} = ${5+7} ${10%2} \${10%2} = ${10%2} \${7 ${5+3 == 8?"참":"거짓"} out : ${test } ${10/0 } 양수 0 음수 // 반복문 ${a}, // var = 변수명 delims = 구분 요소 ${bb } ${dd } // script와 c:redirect 동일함