'jsp'에 해당되는 글 14건

  1. 2014.07.24 팀프로젝트
  2. 2014.07.24 파일 업로드
  3. 2014.07.23 숙제(빨간색 추가)
  4. 2014.07.21 회원가입 게시판 응용
  5. 2014.07.18 게시판
  6. 2014.07.17 board
  7. 2014.07.14 쿠키
  8. 2014.07.14 설정
  9. 2014.07.11 정보수정
  10. 2014.07.11 회원가입

팀프로젝트

jsp 2014. 7. 24. 14:41

주제: 벤치 마킹

원하는 사이트 벤치마킹


사이트의 100%기능 모두 구현


사이트맵 구성


역할분담(개인당 2개씩 먼저)


'jsp' 카테고리의 다른 글

파일 업로드  (0) 2014.07.24
숙제(빨간색 추가)  (0) 2014.07.23
회원가입 게시판 응용  (0) 2014.07.21
게시판  (0) 2014.07.18
board  (0) 2014.07.17
Posted by 5DMK2]발자국
,

파일 업로드

jsp 2014. 7. 24. 12:02

form 


method="post"

post값만 사용 가능


enctype="multipart/form-data


method와 enctype가 들어가야 파일 업로드 가능


cos.jar

위 파일을 WEB-INF폴더 lib폴더에 복사



form.jsp

<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

<form method="post" action="formPro.jsp" enctype="multipart/form-data">

파일 업로드<input type="file" name="upload" />

작성자<input type="text" name="name"/>

<input type="submit" value="전송"/> 

</form>


formPro.jsp


<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

    <%@ page import="com.oreilly.servlet.MultipartRequest" %>

    <%@ page import="com.oreilly.servlet.multipart.DefaultFileRenamePolicy" %>

    <%@ page import="java.io.*" %>

<%

String save = "d://save//";

int size=1024*1024*5;

String enc="euc-kr";

DefaultFileRenamePolicy de = new DefaultFileRenamePolicy();

MultipartRequest multi = new MultipartRequest(request, save,size,enc,de);

File file =multi.getFile("upload");

String type = multi.getContentType("upload");

%>

업로드 파일의 크기 =<%=file.length() %><br/>

업로드 파일의 타입 = <%=type%><br/>

업로드 파일의 이름 = <%=multi.getFilesystemName("upload") %><br/>

업로드 파일의 원본이름 = <%=multi.getOriginalFileName("upload") %><br/>

파라미터 확인 = <%=multi.getParameter("name") %>




'jsp' 카테고리의 다른 글

팀프로젝트  (0) 2014.07.24
숙제(빨간색 추가)  (0) 2014.07.23
회원가입 게시판 응용  (0) 2014.07.21
게시판  (0) 2014.07.18
board  (0) 2014.07.17
Posted by 5DMK2]발자국
,

숙제(빨간색 추가)

jsp 2014. 7. 23. 12:54


BoardDBBean.java 파일에서

public int getArticleCount() throws Exception {

Connection conn = null;

PreparedStatement pstmt = null;

ResultSet rs = null;

int x=0;

try {

conn = getConnection();

pstmt = conn.prepareStatement("select count(*) from board");

rs = pstmt.executeQuery();

if (rs.next()) {

x= rs.getInt(1); 

}

} catch(Exception ex) {

ex.printStackTrace();

} finally {

if (rs != null) try { rs.close(); } catch(SQLException ex) {}

if (pstmt != null) try { pstmt.close(); } catch(SQLException ex) {}

if (conn != null) try { conn.close(); } catch(SQLException ex) {}

}

return x; 

}

를 복사해서


public int getArticleCount(String id) throws Exception {

Connection conn = null;

PreparedStatement pstmt = null;

ResultSet rs = null;

int x=0;

try {

conn = getConnection();

pstmt = conn.prepareStatement("select count(*) from board where writer=?");

pstmt.setString(1,id);

rs = pstmt.executeQuery();

if (rs.next()) {

x= rs.getInt(1); 

}

} catch(Exception ex) {

ex.printStackTrace();

} finally {

if (rs != null) try { rs.close(); } catch(SQLException ex) {}

if (pstmt != null) try { pstmt.close(); } catch(SQLException ex) {}

if (conn != null) try { conn.close(); } catch(SQLException ex) {}

}

return x; 

}


mylist.jsp


 List articleList = null;

    BoardDBBean dbPro = BoardDBBean.getInstance();

    String id = (String)session.getAttribute("memId");

    count = dbPro.getArticleCount(id);

    if (count > 0) {

        articleList = dbPro.getArticles(startRow, endRow, id);

    }


number=count-(currentPage-1)*pageSize;



sql

select *from board where writer=? order by reg_date;


boardDbbean.java

public List getArticles(String id) throws Exception {

Connection conn = null;

PreparedStatement pstmt = null;

ResultSet rs = null;

List articleList=null;

try {

conn = getConnection();

pstmt = conn.prepareStatement("select * from board where writer=? order by reg_date");

pstmt.setString(1, id);

rs = pstmt.executeQuery();

if (rs.next()) {

articleList = new ArrayList(); 

do{ 

BoardDataBean article= new BoardDataBean();

article.setNum(rs.getInt("num"));

article.setWriter(rs.getString("writer"));

article.setEmail(rs.getString("email"));

article.setSubject(rs.getString("subject"));

article.setPasswd(rs.getString("passwd"));

article.setReg_date(rs.getTimestamp("reg_date"));

article.setReadcount(rs.getInt("readcount"));

article.setRef(rs.getInt("ref"));

article.setRe_step(rs.getInt("re_step"));

article.setRe_level(rs.getInt("re_level"));

article.setContent(rs.getString("content"));

article.setIp(rs.getString("ip"));

articleList.add(article); 

}while(rs.next());

}

} catch(Exception ex) {

ex.printStackTrace();

} finally {

if (rs != null) try { rs.close(); } catch(SQLException ex) {}

if (pstmt != null) try { pstmt.close(); } catch(SQLException ex) {}

if (conn != null) try { conn.close(); } catch(SQLException ex) {}

}


return articleList;

}

추가

public List getArticles(int start, int end, String id) throws Exception {

Connection conn = null;

PreparedStatement pstmt = null;

ResultSet rs = null;

List articleList=null;

try {

conn = getConnection();

pstmt = conn.prepareStatement(

"select num,writer,email,subject,passwd,reg_date,ref,re_step,re_level,content,ip,readcount,r "

+

"from (select num,writer,email,subject,passwd,reg_date,ref,re_step,re_level,content,ip,readcount,rownum r " +

"from (select num,writer,email,subject,passwd,reg_date,ref,re_step,re_level,content,ip,readcount " +

"from board order by ref desc, re_step asc) order by ref desc, re_step asc ) where r >= ? and r <= ? ");

pstmt.setInt(1, start); 

pstmt.setInt(2, end); 


rs = pstmt.executeQuery();

if (rs.next()) {

articleList = new ArrayList(end); 

do{ 

BoardDataBean article= new BoardDataBean();

article.setNum(rs.getInt("num"));

article.setWriter(rs.getString("writer"));

article.setEmail(rs.getString("email"));

article.setSubject(rs.getString("subject"));

article.setPasswd(rs.getString("passwd"));

article.setReg_date(rs.getTimestamp("reg_date"));

article.setReadcount(rs.getInt("readcount"));

article.setRef(rs.getInt("ref"));

article.setRe_step(rs.getInt("re_step"));

article.setRe_level(rs.getInt("re_level"));

article.setContent(rs.getString("content"));

article.setIp(rs.getString("ip"));

articleList.add(article); 

}while(rs.next());

int size = articleList.size();

if(size > end){

articleList = articleList.subList(start-1, end);

}else{

articleList = articleList.subList(start-1, end);

}


main.jsp

<input type="button"  value="회원가입" onclick="javascript:window.location='inputForm.jsp'">

            <input type="button"  value="게시판" onclick="javascript:window.location='../board/list.jsp'">

            <input type="button"  value="나의작성글" onclick="javascript:window.location='../board/mylist_1.jsp'">


비밀글


list --->비밀번호 폼----> 확인 ---> conten

deleteForm내용 복사해서 넣음


list.jps

content.jsp ->


passwordCheck.jsp?num=<%=article.getNum()%>&pageNum=<%=currentPage%>


passwordCheck.jsp(deletForm.jsp내용 복사)

<%

String num=request.getParameter("num");

String pageNum= request.getParameter("pageNuM");

%>

<BODY onload="begin()" bgcolor="<%=bodyback_c%>">

<form name="myform" action="passwordPro.jsp" method="post" onSubmit="return checkIt()">

<input type="hidden" name="num" value="<%=num %>" />

<input type="hidden" name=" pageNum" value="<%=pageNum %>"/>

<TABLE cellSpacing=1 cellPadding=1 width="260" border=1 align="center" >

  

  <TR height="30">

    <TD colspan="2" align="middle" bgcolor="<%=title_c%>">

 <font size="+1" ><b>회원 탈퇴</b></font></TD></TR>

  

  <TR height="30">



passwordPro.jsp


deletePro.jsp에서 내용 복사해서 붙여 넣음



boardDBBean.jsp에서 

deleteArticle 내용 복사해서


붙여 넣고 


deleteArticle을 passwordCheck로 변경


pstmt = conn.prepareStatement(

"delete from board where num=?");

pstmt.setInt(1, num);

pstmt.executeUpdate();


내용 삭제


passwordPro.jsp

<%@ page contentType="text/html;charset=euc-kr" %>

<%@ page import = "board.BoardDBBean" %>

<%@ page import = "java.sql.Timestamp" %>


<% request.setCharacterEncoding("euc-kr");%>


<%

  int num = Integer.parseInt(request.getParameter("num"));

  String pageNum = request.getParameter("pageNum");

  String passwd = request.getParameter("passwd");


  BoardDBBean dbPro = BoardDBBean.getInstance();

  int check = dbPro.passwordCheck(num, passwd);


  if(check==1){

 // response.sendRedirect("content.jsp?num="+num+"&pageNum="+pageNum);

%>

 <meta http-equiv="Refresh" content="0;url=list.jsp?pageNum=<%=pageNum%>" >

<% }else{%>

       <script language="JavaScript">      

       <!--      

         alert("비밀번호가 맞지 않습니다");

         history.go(-1);

       -->

      </script>

<%

    }

 %>


관리자로 접속시 게시판 볼 때 비밀번호 안넣고 들어가는것


passwordCheck.jsp

<%

String num=request.getParameter("num");

String pageNum= request.getParameter("pageNum");

String id = (String)session.getAttribute("memId");

if(id !=null){

if(id.equals("admin")){

response.sendRedirect("content.jsp?num="+num+"&pageNum="+pageNum);

}

}

%>

<BODY onload="begin()" bgcolor="<%=bodyback_c%>">

추가



관리자만 답글 달 수 있게
 content.jsp에서 
<%   
  String id = (String)session.getAttribute("memId");
if(id.equals("admin")){%>
      <input type="button" value="답글쓰기" 
       onclick="document.location.href='writeForm.jsp?num=<%=num%>&ref=<%=ref%>&re_step=<%=re_step%>&re_level=<%=re_level%>'">
  &nbsp;&nbsp;&nbsp;&nbsp;
  <%}} %>

수정

'jsp' 카테고리의 다른 글

팀프로젝트  (0) 2014.07.24
파일 업로드  (0) 2014.07.24
회원가입 게시판 응용  (0) 2014.07.21
게시판  (0) 2014.07.18
board  (0) 2014.07.17
Posted by 5DMK2]발자국
,

회원가입 게시판 응용

jsp 2014. 7. 21. 09:30

1. 로그인 후 게시판 글쓰기 가능

list.jsp

<body bgcolor="<%=bodyback_c%>">

<center><b>글목록(전체 글:<%=count%>)</b>


<%if(session.getAttribute("memId") != null){ %>

<table width="700">

<tr>

   <td align="right" bgcolor="<%=value_c%>">

   <a href="writeForm.jsp">글쓰기</a>

   </td>

</table>

<%} %>

로그인 안되어 있으면 글쓰기 버튼 안나옴



contents.jsp


로그인 안되어 있는 상태에서 주소창에서 주소 써서 들어올 때  로그인 창으로 이동



<td colspan="4" bgcolor="<%=value_c%>" align="right" > 

    <%if(session.getAttribute("memId") !=null){ %>

 <input type="button" value="글수정" 

       onclick="document.location.href='updateForm.jsp?num=<%=article.getNum()%>&pageNum=<%=pageNum%>'">

  &nbsp;&nbsp;&nbsp;&nbsp;

 <input type="button" value="글삭제" 

       onclick="document.location.href='deleteForm.jsp?num=<%=article.getNum()%>&pageNum=<%=pageNum%>'">

  &nbsp;&nbsp;&nbsp;&nbsp;

      <input type="button" value="답글쓰기" 

       onclick="document.location.href='writeForm.jsp?num=<%=num%>&ref=<%=ref%>&re_step=<%=re_step%>&re_level=<%=re_level%>'">

  &nbsp;&nbsp;&nbsp;&nbsp;

  <%} %>

       <input type="button" value="글목록" 

       onclick="document.location.href='list.jsp?pageNum=<%=pageNum%>'">

    </td>

로그인 안되어 있으면 글 수정, 글 삭제, 답글쓰기  안됨


로그인 안되어 있는 상태에서 주소창으로 주소써서 들어올 때 로그인 페이지로 이동


writeForm.jsp

<%@ page contentType="text/html; charset=euc-kr" %>

<%@ include file="/view/color.jsp"%>

<html>

<head>

<title>게시판</title>

<link href="style.css" rel="stylesheet" type="text/css">

<script language="JavaScript" src="script.js"></script>

</head>

<%

if(session.getAttribute("memId") == null){%>

<script type="text/javascript">

alret("로그인 후 글쓰기 가능합니다");

window.location="/jsp/member/main.jsp";

</script>

<%} %>


2. 글 작성시 작성자는 현제 로그인된 ID

writeForm.jsp

<tr>

    <td  width="70"  bgcolor="<%=value_c%>" align="center">이 름</td>

    <td  width="330">

       <input type="text" size="10" maxlength="10" name="writer"></td>

  </tr>

에서


<td  width="70"  bgcolor="<%=value_c%>" align="center">이 름</td>

    <td  width="330"><%=id%>

       <input type="hidden" size="10" maxlength="10" name="writer" value="<%=id%>"></td>

로 수정


3. 내가 작성한 글 목록 보기

- select * from board where writer=? order by reg_date

4.  비밀글. 글 읽기시 비밀번호 확인 후 글 읽기

5. 관리자ID 생성 후 관리자는 비밀글 비밀번호 확인없이 읽기 가능

content.jsp

String id =(String)session.getAttribute("memId")

if(id !=null && id.equals("admin")){

}

6. 관리자만 답변 가능  → Q&A

7. 관리자만 글쓰기 가능. - 일반회원은 읽기만 가능 →공지사항

<%String id =(String)session.getAttribute("memId");

if(id !=null && id.equals("11")){ %>

<table width="700">

<tr>

<td align="left" bgcolor="<%=value_c%>">

    <a href="write_notice.jsp">공지사항쓰기</a><br/>

    </td>

<%} %>



8. 답변 + 댓글 게시판으로 변경    

9. 자동 로그인 기능 구현     → Cookie





'jsp' 카테고리의 다른 글

파일 업로드  (0) 2014.07.24
숙제(빨간색 추가)  (0) 2014.07.23
게시판  (0) 2014.07.18
board  (0) 2014.07.17
쿠키  (0) 2014.07.14
Posted by 5DMK2]발자국
,

게시판

jsp 2014. 7. 18. 12:25

글을 읽었을 때


http://localhost:8000/jsp/board/writeForm.jsp?num=30&ref=30&re_step=0&re_level=0 


num=30&ref=30&re_step=0&re_level=0 에서 값이 getparameter에 들어간다


sql

select * from board에서


ref 글 그룹

re_step 답변 글의 순서

re_level 글 답변 그룹  



예)

11111111111

▶ 3333333333

▶444444444

222222222 

▶555555555

▶666666666

aaaaaaaaa

ccccccc

bbbbbbbbbb


ref            re_step            re_level

11111111111         1                 0                        0

222222222            1                 3                        1  

3333333333           1                1                         1

444444444            1                2                          2  

555555555            1                5                          2

666666666            1                4                          2


aaaaaaaaa          2                0                         0

bbbbbbbbbb        2                2                         1        

ccccccc             2                1                          1




'jsp' 카테고리의 다른 글

숙제(빨간색 추가)  (0) 2014.07.23
회원가입 게시판 응용  (0) 2014.07.21
board  (0) 2014.07.17
쿠키  (0) 2014.07.14
설정  (0) 2014.07.14
Posted by 5DMK2]발자국
,

board

jsp 2014. 7. 17. 09:57

sql table board


create table board(

num number primary key,

writer varchar2(100),

subject varchar2(300),

email varchar2(100),

content varchar2(4000),

passwd varchar2(100),

reg_date date,

readcount number default 0,

ip varchar2(100),

ref number,

re_step number,

re_level number

);

desc board;



create sequence board_seq;


select count(*) from board 글 갯수 확인

'jsp' 카테고리의 다른 글

회원가입 게시판 응용  (0) 2014.07.21
게시판  (0) 2014.07.18
쿠키  (0) 2014.07.14
설정  (0) 2014.07.14
정보수정  (0) 2014.07.11
Posted by 5DMK2]발자국
,

쿠키

jsp 2014. 7. 14. 12:39

loginForm.jps


<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

<from action="LoginPro.jsp" method="post">

id <input type="text" name="id"/><br />

id <input type="password" name="pw"/><br />

<input type="submit" value="로그인" />

</from>



LoginPro.jsp


<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>


    <%

    String id =request.getParameter("id");

    String pw =request.getParameter("pw");

    //DB를 통해 ID/PW확인

   

    Cookie cooId = new Cookie("cookieId",id);

    Cookie cooPw = new Cookie("cookiePw",pw);

   

    cooId.setMaxAge(60);

    cooPw.setMaxAge(60);

    response.addCookie(cooId);

    response.addCookie(cooPw);

   

    %>

    

    쿠키 생성 완료!



cookieCheck.jsp

<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

<h2>생성된 클라이언트의 쿠키 확인</h2>

<%

Cookie [] cookie = request.getCookies();

if(cookie != null){

for(Cookie coo : cookie){

String key = coo.getName();

String value = coo.getValue();

out.println(key+"="+value+"<br />");

}

}

%>


loginPro.jsp


<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

<%@ page import="test.dao.TestDAO" %> 


  <%

    String id =request.getParameter("id");

    String pw =request.getParameter("pw");

    //DB를 통해 ID/PW확인

    TestDAO dao = TestDAO.getInstance();

    boolean result = dao.loginCheck(id,pw);

    if(result){

    session.setAttribute("sessionId", id);

    session.setAttribute("sessionPw", pw);

    /*

    Cookie cooId = new Cookie("cookieId",id);

    Cookie cooPw = new Cookie("cookiePw",pw);

   

    cooId.setMaxAge(60);

    cooPw.setMaxAge(60);

    response.addCookie(cooId);

    response.addCookie(cooPw);

    */

    out.println("로그인 되었습니다. 쿠키생성완료");

    }else{

    out.println("id, pw를 확인하세요!");

   

    }

   

    %>

    

    쿠키 생성 완료!


cookieCheck.jsp


<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

<h2>생성된 클라이언트의 쿠키 확인</h2>

<%

Cookie [] cookie = request.getCookies();

if(cookie != null){

for(Cookie coo : cookie){

String key = coo.getName();

String value = coo.getValue();

out.println(key+"="+value+"<br />");

}

}

%>





Attribute→Java

ㄴObject

Parameter-HTML-form

ㄴString

'jsp' 카테고리의 다른 글

게시판  (0) 2014.07.18
board  (0) 2014.07.17
설정  (0) 2014.07.14
정보수정  (0) 2014.07.11
회원가입  (0) 2014.07.11
Posted by 5DMK2]발자국
,

설정

jsp 2014. 7. 14. 10:38

이클립스 -> 서버 ->context.xml

<Resource name="jdbc/orcl"

auth="Container"

type="java.sql.DataSource"

driverClassName="oracle.jdbc.driver.OracleDriver"

loginTimeout="10"

maxWait="5000"

maxActive="30"

username="java17"

password="java17"

testOnBorrow="true"

url="jdbc:oracle:thin:@khserver.iptime.org:7000:orcl" />           <==추가

</Context>


'jsp' 카테고리의 다른 글

board  (0) 2014.07.17
쿠키  (0) 2014.07.14
정보수정  (0) 2014.07.11
회원가입  (0) 2014.07.11
Oracle 데이터 연동  (0) 2014.07.10
Posted by 5DMK2]발자국
,

정보수정

jsp 2014. 7. 11. 10:30

form.jsp


<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

<form action="update.jsp" method="post">

id : <input type ="text" name="id" /><br/>

pw : <input type ="password" name="pw" /><br/>

age : <input type ="text" name="age" /><br/>

<input type ="submit" name="정보수정" /><br/>

</form>



update.jsp


<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>


    <%@ page import="java.sql.*"%>


<% 

String id = request.getParameter("id");

String pw = request.getParameter("pw");

int age = Integer.parseInt(request.getParameter("age"));

Class.forName("oracle.jdbc.driver.OracleDriver");

String url = "jdbc:oracle:thin:@khserver.iptime.org:7000:orcl";

String user = "java17";

String password="java17";

Connection conn = DriverManager.getConnection(url, user, password);

String sql="update test set age=? where id=? and pw=?";

PreparedStatement pstmt = conn.prepareStatement(sql);

pstmt.setInt(1, age);//숫자는 위의 ?에 들아갈 순서

pstmt.setString(2, id);

pstmt.setString(3, pw);

pstmt.executeUpdate();

pstmt.println("수정 되었습니다");

pstmt.close();

conn.close();

%>

'jsp' 카테고리의 다른 글

쿠키  (0) 2014.07.14
설정  (0) 2014.07.14
회원가입  (0) 2014.07.11
Oracle 데이터 연동  (0) 2014.07.10
Oracle-sql  (0) 2014.07.10
Posted by 5DMK2]발자국
,

회원가입

jsp 2014. 7. 11. 09:55

form.jsp


<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

<form action="insert.jsp" method="post">

id : <input type ="text" name="id" /><br/>

pw : <input type ="password" name="pw" /><br/>

age : <input type ="text" name="age" /><br/>

<input type ="submit" name="회원가입" /><br/>

</form>


insert.jsp

<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

<%@ page import="java.sql.*"%>


<% 

String id = request.getParameter("id");

String pw = request.getParameter("pw");

int age = Integer.parseInt(request.getParameter("age"));

Class.forName("oracle.jdbs.driver.OracleDriver");

String url = "jdbc.oracle:thin:@khserver.iptime.org:7000:orcl";

String user = "java17";

String password="java17";

Connection conn = DriverManager.getConnection(url, user, password);

String sql="insert into test(?,?,?,sysdate)"; 

//?는 위치 홀더 채워 넣어야 할 부분(코드)

PreparedStatement pstmt = conn.prepareStatement(sql);

pstmt.setString(1, id);//숫자는 위의 ?에 들아갈 순서

pstmt.setString(2, pw);

pstmt.setInt(3, age);


     pstmt.executeUpdate();

out.println(id+"님 가입되었습니다.");

pstmt.close();

conn.close();

%

%>



'jsp' 카테고리의 다른 글

설정  (0) 2014.07.14
정보수정  (0) 2014.07.11
Oracle 데이터 연동  (0) 2014.07.10
Oracle-sql  (0) 2014.07.10
가장 많이 사용하는 요소  (0) 2014.07.09
Posted by 5DMK2]발자국
,