JSP 달력 만들기

Tip 2010. 9. 10. 22:10 |
맘에 쏙드는 그런 코드가 없어 직접 만들었다. 잼있긴 하지만 시간 아깝다ㅠㅠ

contentArea와 li의 width를 잘 조절해야 한 행에 한 주가 표시된다.
서블릿에서 firstDayOfMonth, lastDayOfMonth 두 값만 세팅해 주면 된다.

ex)
Calendar calendar = Calendar.getInstance ();
calendar.setTime ( new Date() );
int firstDayOfMonth = calendar.get(Calendar.DAY_OF_WEEK)-1;
int
lastDayOfMonth
lastDayOfMonth = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);

<style>
.contentArea {
width:890px;
padding:10px 30px 0 20px;
margin:0 4px;
}

.calendar {
list-style: none;
padding: 0;
margin: 0;
}

.calendar li {
display: inline;
list-style: none;
float: left;
width: 120px;
margin: 0 4px 2px 0;
color: #3e3e3e;
font: 12px Arial, Helvetica, sans-serif;
text-align: left;
border: 1px solid #d8d8d8;
}
</style>

<div class="contentArea">
<ul class="calendar">
<li>일</li><li>월</li><li>화</li><li>수</li><li>목</li><li>금</li><li>토</li>
<c:forEach var="data" begin="1" end="${
firstDayOfMonth
firstDayOfMonth}" step="1" varStatus="status" >
<li>-</li>
</c:forEach>
<c:forEach var="data" begin="1" end="${
lastDayOfMonth
lastDayOfMonth}" step="1" varStatus="status" >
<li style="height: 120px;">${status.count}</li>
</c:forEach> 
</ul>
</div>

'Tip' 카테고리의 다른 글

크로스도메인 쿠키문제  (0) 2011.01.21
MySql insert select  (0) 2010.11.06
div가운데 정렬  (0) 2010.10.09
말풍선 그럴싸한거  (0) 2010.09.26
CSS 말줄임표(...) div 와 table 에 적용하기  (0) 2010.09.01
Posted by 기계식키보드
:
1.vi편집기로 아래와 같은 스크립트를 만듭니다.

[root@op root]# vi rotate.sh
#!/bin/bash
DATE=`/bin/date +%y%m%d`
/bin/cp /usr/local/apache/logs/access_log /usr/local/apache/logs/access_log.$DATE
cat /dev/null > /usr/local/apache/logs/access_log
/bin/gzip /usr/local/apache/logs/access_log.$DATE 
/bin/cp /usr/local/apache/logs/error_log /usr/local/apache/logs/error_log.$DATE
cat /dev/null > /usr/local/apache/logs/error_log
/bin/gzip /usr/local/apache/logs/error_log.$DATE
위의 아파치 로그 경로는 실제 아파치 로그가 있는 경로로 설정해주면 됩니다.
예를 들어 /var/log/httpd/에 로그파일을 옮겼다면 모든 경로를
/var/log/httpd로 바꿔놓으면 됩니다.

2.다음과 같이 실행 가능한 파일로 변경 합니다.
[root@op root]# chmod 755 rotate.sh

3.위의 스크립트를 clontab에 넣어서 매일 실행하게 합니다.
[root@op root]# crontab -e
0 3 * * * /root/rotate.sh
스크립트가 있는 경로를 등록해주시면 되고 매일 3시에 돌게 되어있습니다.

4.스크립트가 실행되어 로그가 일자별로 압축되어 저장된 결과입니다.
[root@op root]# cd /usr/local/apache/logs/
[root@op logs]# ls
access_log access_log.031031.gz error_log error_log.031031.gz httpd.pid
로그체크를 할때 필요한 날짜의 로그만 압축을 풀어서 확인하시면 되겠죠?

위의 스크립트를 응용하면 아파치 로그뿐만 아니라 /var/log 아래
있는 여러 로그들을 일별로 효율적으로 관리할 수 있습니다.

'운영관리' 카테고리의 다른 글

톰캣 heap사이즈 설정  (0) 2011.08.14
Posted by 기계식키보드
:
http://rabbitchris.tistory.com/431

*. DIV 나 SPAN
 → DIV 와 SPAN 의 style 속성에 text-overflow:ellipsis; overflow:hidden 두가지를 병행하여 사용.
 → 그리고 DIV 와 SPAN 태그 안에 <nobr> 태그를 사용.

    해석을 하면 말 그대로, 텍스트가 넘치는 상황에서 ellipsis 생략 처리, 넘친 부분은 hidden 안보임 처리.
    nobr 은 처음 보나요..? <br> 태그는 많이 봤죠..? <br> 이 행을 바꾸라는 것이라면 <nobr> 은 행을 바꾸지 말라는 것.
    파워포인트에서 '도형 안에 글자넣기' 옵션이 켜지면 폭을 넘어서는 글내용이 들어갈때 자동으로 개행되져..?
    이걸 하지 못하도록 한 것. 스타일 속성에서 overflow 처리를 하여도 <nobr> 태그가 없으면 말줄임표는 꽝.

    text-overflow:clip 이라든가, overflow:visible 이라고 하면 안됩니다.
    뭐, 사용하면 오류가 난다는 것이 아니라 말줄임표가 안 붙는다는 것.
    그리고, 이렇게 해도 div 의 width 보다 작은 내용은 말줄임표가 붙지 않습니다.
    아래 예제에서는 <br> 태그를 중간에 사용했는데 <br> 을 전후로 각자 말줄임표가 사용됩니다.
<div style="width:200; text-overflow:ellipsis; overflow:hidden">
  <nobr>폭이 기다란 샘플을 사용해 주세요. <br>폭이 기다란 샘플을 사용해 주세요.</nobr>
</div>




*. TABLE
 → table 에는 table-layout:fixed 사용
 → td 에는 text-overflow:ellipsis; overflow:hidden 사용

     overflow 에 관한 설명은 위에서 했고, table 레이아웃을 fixed 고정 처리.
     만약 이렇게 했는데도 밀려난다면 td 태그 안에 <nobr> 사용
    그리고, 이렇게 해도 td 의 width 보다 작은 내용은 말줄임표가 붙지 않습니다.
    
<table style="table-layout:fixed">
<tr>
  <td width="100" style="text-overflow:ellipsis; overflow:hidden"><nobr>1. 폭이 기다란 샘플을 사용<nobr></td>
  <td width="100" style="text-overflow:ellipsis; overflow:hidden"><nobr>2. 폭이 기다란 샘플을 사용<nobr></td>
  <td width="100" style="text-overflow:ellipsis; overflow:hidden"><nobr>3. 폭이 기다란 샘플을 사용<nobr></td>
</tr>
</table>




*. TABLE 의 TD 안에서 DIV 나 SPAN
   뭐, 기본적으로 DIV 나 SPAN 에서의 말줄임표 사용방법과 동일합니다.



*. 그리고, 추가로 말줄임표를 사용했다면 반드시 title 속성을 사용하여 말풍선을 넣어 주세요.
    속성으로 들어가다 보니 내용에 인용부호가 있으면 틀이 깨어지므로 내용에서 인용부호를 빼 주어야 합니다.
    아래 예제는 JSP 를 들어 설명하였습니다. 다른 언어는 알아서 구현하세요..
<div style="width:200; text-overflow:ellipsis; overflow:hidden" title="<%= string.replaceAll("\"","") %>">
  <nobr>폭이 기다란 샘플을 사용해 주세요. <br>폭이 기다란 샘플을 사용해 주세요.</nobr>
</div>

'Tip' 카테고리의 다른 글

크로스도메인 쿠키문제  (0) 2011.01.21
MySql insert select  (0) 2010.11.06
div가운데 정렬  (0) 2010.10.09
말풍선 그럴싸한거  (0) 2010.09.26
JSP 달력 만들기  (0) 2010.09.10
Posted by 기계식키보드
: